Commit Graph

51 Commits

Author SHA1 Message Date
Noah Meyerhans 8c9e9430c2 Refresh remaining patches 2019-11-20 16:24:37 -08:00
Noah Meyerhans 62e5e3199d Remove obsolete patches 2019-11-20 16:24:37 -08:00
Hans van Kranenburg 4d63e6ccbb [x86] Support booting a Xen PVH guest via Grub2
tl;dr: Xen PVH is the perfect upgrade path from PV and in combination
with grub2 support, it's the Xen "killer feature" we really should have
in Buster.

    Background info about Xen PVH:
https://wiki.xen.org/wiki/Virtualization_Spectrum#Almost_fully_PV:_PVH_mode

PVH mode in Xen, a.k.a. "HVM without having to run qemu" is a Xen guest
type best supported since Xen 4.11 and Linux kernel 4.17. Just like when
using PV mode, the guest does not have an emulated BIOS and the guest
kernel is directly started by the dom0. Buster will ship with Xen 4.11.

   Why is PVH interesting?

1. When the whole Meltdown/Spectre story started, it quickly became
apparent that 64-bit PV is the most problematic virtualization mode to
protect and to protect from, since address space from the hypervisor and
other guests (including dom0) is reachable from a 64-bit PV domU. To
mitigate this, XPTI (the Xen variant of PTI) has been implemented in the
hypervisor, but with a performance hit. HVM (so, also PVH) guests are
better isolated from the hypervisor and other guests. Inside the guest a
choice can be made about which mitigations to enable or not.  Also see
https://xenbits.xen.org/xsa/advisory-254.html

2. Unlike HVM, it's not needed to have a boot loader/sector, partitions,
and a qemu process in the dom0 (using cpu and memory and having an
attack surface).  Also, when running a largeish amount of domUs on a
physical server, not having all the qemu processes is an advantage.

3. Unlike PV, PVH makes use of all hardware features that accelerate
virtualization.

   The upgrade path from PV to PVH is super optimal. It's just setting
type='pvh' in the guest file and doing a full restart of the domU!

Unless... (insert Monty Python's Dramatic Chord!)

Unless... grub2 was used to boot the PV guests.

   Why is it interesting to be able to use grub?

Without using grub in between, the guest kernel and initrd have to be
copied out of the guest onto the dom0 filesystem, because the guest has
to be booted with them directly.  Currently, we already have the
grub-xen packages in Debian, which provide grub images which can be used
as kernel for a PV guest, after which it can load the actual linux
kernel that is symlinked from /vmlinuz on the guest filesystem at that
moment.

The final changes to the Linux kernel for grub+PVH are in Linux 4.20.
This request, to carry a few patches from Linux 4.20, provides one half
of the dots that need to be connected to make the full thing happen for
Buster.

Since we'll have Xen 4.11 in Buster, PVH is supported. The related grub2
patchset was committed to the grub master branch on Dec 12 2018 (yup,
today). So, I'll also start contacting the debian grub team soon to ask
(and help) to get the current grub-xen functionality in Debian to be
extended with PVH capabilities as well.

Test reports:
https://lists.xenproject.org/archives/html/xen-devel/2018-10/msg01913.html
https://lists.xenproject.org/archives/html/xen-devel/2018-11/msg03312.html
2018-12-14 16:55:04 +01:00
Ben Hutchings cdba06ffc2 debian/patches: Add Forwarded fields to several patches 2018-09-16 16:27:59 +01:00
Ben Hutchings 54cc69a744 Update to 4.19-rc1
- Drop/refresh patches as appropriate
- Disable aufs patches until they are updated upstream
2018-08-27 15:21:43 +01:00
Ben Hutchings 98b1cf0710 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
2018-07-13 00:26:16 +01:00
Ben Hutchings 8457aba35f Update to 4.17-rc1
- Drop patches included upstream
- Drop "Don't WARN about expected W+X pages on Xen"; the problem appears
  to have been fixed by upstream commits 2cc42bac1c ("x86-64/Xen: eliminate
  W+X mappings") and 672c0ae09b33 ("x86/mm: Consider effective protection
  attributes in W+X check")
- Drop "Kbuild: kconfig: Verbose version of --listnewconfig"; it seems
  redundant with upstream commit 17baab68d337 ("kconfig: extend output of
  'listnewconfig'")
- Drop lockdown patch to drivers/scsi/eata.c; the driver was removed
  upstream
- Refresh various other patches
2018-04-19 23:44:22 +01:00
Ben Hutchings 7708ade843 [x86] Rewrite "Make x32 syscall support conditional ..." to use a static key
Now that the old slow path is always used, this is an important
optimisation.
2018-02-14 18:28:42 +00:00
Bastian Blank 2ac5e9851a Update to 4.15.2 2018-02-11 09:52:17 +01:00
Ben Hutchings 7dd9b58675 Update to 4.15-rc5
Also update the aufs and lockdown patchsets.
2017-12-26 18:54:17 +00:00
Ben Hutchings 601b9e92a1 Update to 4.10-rc5
Drop/refresh patches as appropriate.

[rt] Disable until it is updated for 4.10 or later
2017-01-24 19:26:38 +00:00
Ben Hutchings 4ac6860c3b Update to 4.9-rc2
Drop/refresh patches as appropriate.
2016-11-01 09:39:31 -06:00
Ben Hutchings 1222968771 Update to 4.8-rc3 2016-08-28 19:52:50 +01:00
Ben Hutchings aab434acde [x86] Fix incompatiblity between kaslr and hibernation
* [amd64] power: Fix crash whan the hibernation code passes control to the
  image kernel
* [x86] KASLR, power: Remove x86 hibernation restrictions
2016-07-02 19:29:28 +02:00
Ben Hutchings 906f7b1351 Update to 4.7-rc2
[rt] Disable until it is updated for 4.7 or later
2016-06-10 14:47:48 +01:00
Ben Hutchings 5539892a39 [x86] Fix visiblity of x32_enabled in x32 conditional syscall patch
Since it's now used in arch/x86/entry/common.c, move the declaration
to <asm/syscall.h>.
2016-04-14 18:29:18 +01:00
Ben Hutchings f4701f7d70 Update to 4.6-rc3
Refresh or drop *many* patches.

aufs: Update support patches to aufs4.x-rcN-20160328
2016-04-14 15:00:19 +01:00
Ben Hutchings 5cdb1bae58 Update to 4.3-rc2
Drop a load of patches that went upstream.
Drop aic94xx patch which was obsoleted by a different fix upstream.
Refresh remaining patches.
2015-09-26 17:25:45 +01:00
Ben Hutchings 79f636b4bf Update to 4.2-rc5
Refresh/drop patches as needed.

svn path=/dists/trunk/linux/; revision=22909
2015-08-04 01:30:23 +00:00
Ben Hutchings 56c70a5fd2 Update to 4.1-rc3
Drop and refresh patches as appropriate.

In the x86 memtest patch, add #ifdef CONFIG_X86 as memtest is now
cross-architecture and memtest86+ is not.

svn path=/dists/trunk/linux/; revision=22616
2015-05-11 16:39:41 +00:00
Ben Hutchings dff5dedd0f Update to 3.18
Drop/refresh patches as necessary.

Disable aufs.

svn path=/dists/trunk/linux/; revision=22149
2014-12-09 03:06:08 +00:00
Ben Hutchings 78d8475ba2 Merge changes from sid up to 3.16.7-2
svn path=/dists/trunk/linux/; revision=22054
2014-11-06 21:57:46 +00:00
Ben Hutchings 84c05535e5 Set Forwarded field for several patches that I've just sent upstream
svn path=/dists/sid/linux/; revision=22045
2014-11-06 03:56:25 +00:00
Ben Hutchings e98c34d47f Add Forwarded: no or not-needed to patches that lack Origin/Forwarded fields
svn path=/dists/sid/linux/; revision=22044
2014-11-06 00:23:59 +00:00
Ben Hutchings 53475cbadc [x86] Backport Thunderbolt support on Apple computers from 3.17
svn path=/dists/sid/linux/; revision=22016
2014-11-01 14:13:53 +00:00
Ben Hutchings e77d849b25 Move x86-specific memtest patch into the right directory
svn path=/dists/sid/linux/; revision=21822
2014-09-12 13:42:28 +00:00
Ben Hutchings fcbc00ea92 Update x32 syscall patch to block system calls >= 512 by default
System calls from x32 tasks are distinguished by having bit 30 set,
but they share the system call table with x86_64 so where parameter/
return value adjustment is needed there is a difference in the low
bits too.  The x32-specific calls are numbered from 512 and of course
are not present in the table if the kernel doesn't support x32.

This means we need to change both the maximum syscall number and the
mask instruction.

svn path=/dists/sid/linux/; revision=21689
2014-08-06 03:30:05 +00:00
Ben Hutchings a718693e7b [amd64] Enable X86_X32 (Closes: #708070)
- Reject x32 executables if x32 ABI not supported
- Make x32 syscall support conditional on a kernel parameter
- Enable X86_X32_DISABLED so that x32 support must be explicitly enabled

svn path=/dists/sid/linux/; revision=21634
2014-07-27 04:08:25 +00:00
Ben Hutchings 6de7398f33 Drop/refresh patches for 3.4
svn path=/dists/trunk/linux-2.6/; revision=19022
2012-05-21 12:21:37 +00:00
Ben Hutchings 59868c12b9 Update to 3.3.6
svn path=/dists/trunk/linux-2.6/; revision=19008
2012-05-18 03:27:16 +00:00
Ben Hutchings 40fc14743c Merge changes from sid up to 3.2.16-1
svn path=/dists/trunk/linux-2.6/; revision=18964
2012-04-30 03:00:58 +00:00
Ben Hutchings 33398c2c85 Add yet more dependencies for the EFI stub fix
svn path=/dists/sid/linux-2.6/; revision=18960
2012-04-29 06:58:16 +00:00
Ben Hutchings 5f6354e7f6 Add another dependency for x86 EFI stub
svn path=/dists/sid/linux-2.6/; revision=18959
2012-04-29 04:28:38 +00:00
Ben Hutchings 1b923af2ff Apply upstream bug fixes for EFI stub support
svn path=/dists/sid/linux-2.6/; revision=18956
2012-04-27 03:36:24 +00:00
Ben Hutchings 9ec2630fc6 [x86] Add EFI boot stub support (Closes: #669033)
svn path=/dists/sid/linux-2.6/; revision=18952
2012-04-25 03:16:59 +00:00
Ben Hutchings 73c9170375 Merge changes from sid branch up to 3.2.15-1
svn path=/dists/trunk/linux-2.6/; revision=18929
2012-04-15 15:35:34 +00:00
Ben Hutchings 3121d09256 [x86] hv: Update all Hyper-V drivers to 3.4-rc1 (Closes: #661318)
svn path=/dists/sid/linux-2.6/; revision=18921
2012-04-09 00:47:41 +00:00
Ben Hutchings d70bc0db62 Update to 3.3
svn path=/dists/trunk/linux-2.6/; revision=18854
2012-03-19 03:02:37 +00:00
Ben Hutchings e29f027ab7 Merge changes from sid up to 3.1.4-1
svn path=/dists/trunk/linux-2.6/; revision=18335
2011-12-01 04:23:13 +00:00
Ben Hutchings 01f077e6d8 amilo-rfkill: Use proper functions to write to the i8042 safely
svn path=/dists/sid/linux-2.6/; revision=18318
2011-11-26 03:21:20 +00:00
Ben Hutchings ddbcf28662 Update to 3.2-rc1
Drop a large number of patches that were merged upstream.
Fix context in features/all/sound-pci-cs46xx-request_firmware.patch.
Remove another firmware image sneaked into staging.

svn path=/dists/trunk/linux-2.6/; revision=18288
2011-11-14 15:49:29 +00:00
Ben Hutchings b575a2349e [x86] Add amilo-rfkill driver for some Fujitsu-Siemens Amilo laptops (Closes: #631664)
svn path=/dists/trunk/linux-2.6/; revision=18263
2011-11-13 19:14:22 +00:00
Ben Hutchings 1bd1a3f2d2 [i386] libertas: prioritize usb8388_olpc.bin firmware on OLPC machines
svn path=/dists/trunk/linux-2.6/; revision=18062
2011-09-08 14:40:22 +00:00
Ben Hutchings 741625c82c Update to 2.6.37-rc3
svn path=/dists/trunk/linux-2.6/; revision=16606
2010-11-28 04:14:29 +00:00
Ben Hutchings 10ebafb301 Move last valid device ID from piix to ata_piix
piix has been kept around because it has 2 device IDs not listed in
other drivers:

PCI_DEVICE_ID_INTEL_82371FB_0 == 0x122e (PIIX function 0)
This function is the ISA bridge, not a PATA controller!

PCI_DEVICE_ID_INTEL_82801DB_1 == 0x24c1 (ICH4-L function 1)
This should be functionally identical to the ICH4's PATA
controller.

Add the latter device ID to ata_piix and disable piix (except on
alpha, which has not been converted to use libata).


svn path=/dists/trunk/linux-2.6/; revision=16427
2010-10-10 22:01:51 +00:00
Ben Hutchings 146672f319 Remove unreferenced patches
svn path=/dists/trunk/linux-2.6/; revision=15221
2010-02-19 03:51:14 +00:00
Ben Hutchings 72d2550619 Add new hardware ids to various drivers, as included in 2.6.33-rc3
svn path=/dists/trunk/linux-2.6/; revision=14934
2010-01-10 18:19:51 +00:00
Bastian Blank 614815ee15 debian/patches: Remove deprecated and merged patches.
svn path=/dists/trunk/linux-2.6/; revision=13355
2009-04-06 10:54:49 +00:00
Bastian Blank a94d55bc0d Merge /dists/sid/linux-2.6.
svn path=/dists/trunk/linux-2.6/; revision=12535
2008-12-28 16:55:48 +00:00
Maximilian Attems cccb37c877 nuke lenny backported features or bugfixes
svn path=/dists/trunk/linux-2.6/; revision=11929
2008-07-30 16:50:31 +00:00