Compare commits

..

396 Commits

Author SHA1 Message Date
Fabian Grünbichler 511b4b4393 update ABI file for 4.15.18-30-pve
(generated with debian/scripts/abi-generate)

Signed-off-by: Fabian Grünbichler <f.gruenbichler@proxmox.com>
2020-06-16 16:07:50 +02:00
Fabian Grünbichler 403f9c3342 bump version to 4.15.18-58
Signed-off-by: Fabian Grünbichler <f.gruenbichler@proxmox.com>
2020-06-12 14:21:52 +02:00
Fabian Grünbichler 7e76e05428 update sources to Ubuntu-4.15.0-107.108
(generated with debian/scripts/import-upstream-tag)

Signed-off-by: Fabian Grünbichler <f.gruenbichler@proxmox.com>
2020-06-12 13:50:05 +02:00
Thomas Lamprecht 1f316d97f5 update ABI file for 4.15.18-29-pve
(generated with debian/scripts/abi-generate)

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2020-05-18 15:48:05 +02:00
Thomas Lamprecht 6689bad81a bump version to 4.15.18-57
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2020-05-18 14:35:07 +02:00
Thomas Lamprecht c52b38d4c1 rebase patches on top of Ubuntu-4.15.0-102.103
(generated with debian/scripts/import-upstream-tag)

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2020-05-18 14:04:32 +02:00
Thomas Lamprecht 9ae490b531 update sources to Ubuntu-4.15.0-102.103
(generated with debian/scripts/import-upstream-tag)

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2020-05-18 14:04:32 +02:00
Thomas Lamprecht 9aea2a8582 update ABI file for 4.15.18-28-pve
(generated with debian/scripts/abi-generate)

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2020-04-09 07:50:19 +02:00
Thomas Lamprecht 74ff6ea27e bump version to 4.15.18-56
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2020-04-08 20:06:22 +02:00
Thomas Lamprecht 383cc4b935 rebase patches on top of Ubuntu-4.15.0-97.98
(generated with debian/scripts/import-upstream-tag)

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2020-04-08 19:43:11 +02:00
Thomas Lamprecht 92ecb0dc4a update sources to Ubuntu-4.15.0-97.98
(generated with debian/scripts/import-upstream-tag + some manual
hunk drop)

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2020-04-08 19:42:37 +02:00
Thomas Lamprecht e83375c7a4 update ABI file for 4.15.18-27-pve
(generated with debian/scripts/abi-generate)

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2020-03-17 16:33:06 +01:00
Thomas Lamprecht 71941be42c bump version to 4.15.18-54
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2020-03-17 15:32:39 +01:00
Thomas Lamprecht 688dd00fb2 rebase patches on top of Ubuntu-4.15.0-92.93
(generated with debian/scripts/import-upstream-tag)

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2020-03-17 14:58:35 +01:00
Thomas Lamprecht d7745ec6d3 update sources to Ubuntu-4.15.0-92.93
(generated with debian/scripts/import-upstream-tag)

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2020-03-17 14:58:35 +01:00
Thomas Lamprecht f685c270c2 update ABI file for 4.15.18-26-pve
(generated with debian/scripts/abi-generate)

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2020-02-15 16:10:46 +01:00
Thomas Lamprecht 85116af6a4 bump version to 4.15.18-54
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2020-02-15 15:34:52 +01:00
Thomas Lamprecht 3f3987d405 update sources to Ubuntu-4.15.0-89.89
(generated with debian/scripts/import-upstream-tag)

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2020-02-15 15:33:27 +01:00
Thomas Lamprecht 5d53aaf90c update ABI file for 4.15.18-25-pve
(generated with debian/scripts/abi-generate)

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2020-02-05 15:07:20 +01:00
Thomas Lamprecht 2cacd0fca4 bump version to 4.15.18-53
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2020-02-05 11:58:57 +01:00
Thomas Lamprecht e7be3bc9b1 rebase patches on top of Ubuntu-4.15.0-87.87
(generated with debian/scripts/import-upstream-tag)

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2020-02-05 11:55:40 +01:00
Thomas Lamprecht 3e80fdd8b1 update sources to Ubuntu-4.15.0-87.87
(generated with debian/scripts/import-upstream-tag)

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2020-02-05 11:55:40 +01:00
Thomas Lamprecht 3cd6c93ea3 update sources to Ubuntu-4.15.0-76.86
(generated with debian/scripts/import-upstream-tag)

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2020-01-31 13:21:52 +01:00
Thomas Lamprecht 928ebd9e9e update ABI file for 4.15.18-24-pve
(generated with debian/scripts/abi-generate)

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2019-12-05 11:17:48 +01:00
Thomas Lamprecht 749152cc40 bump version to 4.15.18-52
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2019-12-05 10:14:32 +01:00
Thomas Lamprecht 32c96a9e46 rebase patches on top of Ubuntu-4.15.0-73.82
(generated with debian/scripts/import-upstream-tag)

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2019-12-05 09:27:32 +01:00
Thomas Lamprecht 81ff40a1f6 update sources to Ubuntu-4.15.0-73.82
(generated with debian/scripts/import-upstream-tag)

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2019-12-05 09:27:32 +01:00
Thomas Lamprecht 011ae0b915 update ABI file for 4.15.18-23-pve
(generated with debian/scripts/abi-generate)

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2019-11-13 11:46:11 +01:00
Thomas Lamprecht 2425182d60 bump version to 4.15.18-51; ABI bump to 4.15.18-23
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2019-11-13 11:21:54 +01:00
Thomas Lamprecht 90e18b45c8 rebase patches on top of Ubuntu-4.15.0-69.78
(generated with debian/scripts/import-upstream-tag)

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2019-11-13 11:19:27 +01:00
Thomas Lamprecht 0969dc7a3a update sources to Ubuntu-4.15.0-69.78-pve
(generated with debian/scripts/import-upstream-tag)

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

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

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
(cherry picked from commit b481f89770)
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2019-11-12 15:43:38 +01:00
Thomas Lamprecht 7b6cf206b5 bump version to 4.15.18-50
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2019-11-11 15:36:11 +01:00
Thomas Lamprecht 051682a35d update sources to Ubuntu-4.15.0-68.77
(generated with debian/scripts/import-upstream-tag)

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

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2019-11-11 15:24:04 +01:00
Thomas Lamprecht ecfcc52270 update ABI file for 4.15.18-22-pve
(generated with debian/scripts/abi-generate)

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2019-10-23 21:20:55 +02:00
Thomas Lamprecht 862a942d89 bump version to 4.15.18-49
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2019-10-23 20:40:32 +02:00
Thomas Lamprecht 82650658f2 rebase patches on top of Ubuntu-4.15.0-67.76
(generated with debian/scripts/import-upstream-tag)

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2019-10-23 19:29:18 +02:00
Thomas Lamprecht 3c1c73bb62 update sources to Ubuntu-4.15.0-67.76
(generated with debian/scripts/import-upstream-tag)

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2019-10-23 19:29:18 +02:00
Thomas Lamprecht 074569d349 bump version to 4.15.18-48
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2019-09-20 11:28:46 +02:00
Thomas Lamprecht 7c6813388e update submodule to Ubuntu-4.15.0-65.74
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2019-09-20 11:27:34 +02:00
Thomas Lamprecht eafd579cc9 update ABI file for 4.15.18-21-pve
(generated with debian/scripts/abi-generate)

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2019-09-09 12:52:19 +02:00
Thomas Lamprecht 42adb8504b bump version to 4.15.18-47
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2019-09-06 16:08:52 +02:00
Thomas Lamprecht 5aa9d0068e update submodule and patches to Ubuntu-4.15.0-63.72
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2019-09-06 15:27:21 +02:00
Fabian Grünbichler 6e9b6a3eae update ABI file for 4.15.18-20-pve
(generated with debian/scripts/abi-generate)

Signed-off-by: Fabian Grünbichler <f.gruenbichler@proxmox.com>
2019-08-08 12:35:37 +02:00
Fabian Grünbichler 9c6f52252f bump version to 4.15.18-46
Signed-off-by: Fabian Grünbichler <f.gruenbichler@proxmox.com>
2019-08-08 10:52:41 +02:00
Fabian Grünbichler 00163cc277 rebase patches on top of Ubuntu-4.15.0-58.64
(generated with debian/scripts/import-upstream-tag)

Signed-off-by: Fabian Grünbichler <f.gruenbichler@proxmox.com>
2019-08-08 09:16:29 +02:00
Fabian Grünbichler b3c9b5ae54 update sources to Ubuntu-4.15.0-58.64
(generated with debian/scripts/import-upstream-tag)

Signed-off-by: Fabian Grünbichler <f.gruenbichler@proxmox.com>
2019-08-08 09:16:29 +02:00
Thomas Lamprecht 7abb5775ca update ABI file for 4.15.18-19-pve
(generated with debian/scripts/abi-generate)

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2019-07-26 10:26:19 +02:00
Thomas Lamprecht 15cba06a57 update firmware list
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2019-07-26 10:26:10 +02:00
Thomas Lamprecht acfcf229bf bump version to 4.15.18-45
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2019-07-26 09:47:52 +02:00
Thomas Lamprecht 442a3e9243 rebase patches on top of Ubuntu-4.15.0-56.62
(generated with debian/scripts/import-upstream-tag)

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2019-07-26 09:47:52 +02:00
Thomas Lamprecht 6a0e26366e update sources to Ubuntu-4.15.0-56.62
(generated with debian/scripts/import-upstream-tag)

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2019-07-26 09:47:52 +02:00
Thomas Lamprecht 52ca7a7fc5 update zfsonlinux submodule to current stable-5 branch
no new ZFS release related changes

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2019-07-26 09:47:52 +02:00
Thomas Lamprecht 16cc4bcb40 update ABI file for 4.15.18-18-pve
(generated with debian/scripts/abi-generate)

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2019-07-03 13:01:49 +02:00
Thomas Lamprecht 34c76b7752 bump version to 4.15.18-44
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2019-07-03 11:42:19 +02:00
Thomas Lamprecht 58b67f303a rebase patches on top of Ubuntu-4.15.0-55.60
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2019-07-03 11:21:14 +02:00
Thomas Lamprecht 90281c3c81 update submodule to Ubuntu-4.15.0-55.60
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2019-07-03 11:21:14 +02:00
Thomas Lamprecht b24b578cd6 bump version to 4.15.18-43
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2019-06-27 13:00:08 +02:00
Thomas Lamprecht 6ba8c6bc5d backport TCP SACK mitigation refinement
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2019-06-27 12:59:48 +02:00
Thomas Lamprecht b2a761cbba update ABI file for 4.15.18-17-pve
(generated with debian/scripts/abi-generate)

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2019-06-21 12:04:25 +02:00
Thomas Lamprecht 3ef09f5906 bump version to 4.15.18-42
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2019-06-21 11:45:58 +02:00
Thomas Lamprecht 94d096fde1 rebase patches on top of Ubuntu-4.15.0-53.57
(generated with debian/scripts/import-upstream-tag)

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2019-06-21 10:12:33 +02:00
Thomas Lamprecht d753974f8a update sources to Ubuntu-4.15.0-53.57
(generated with debian/scripts/import-upstream-tag)

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2019-06-21 10:12:33 +02:00
Thomas Lamprecht 8af6fd0319 update ABI file for 4.15.18-16-pve
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2019-06-18 08:24:10 +02:00
Thomas Lamprecht 86df970f42 bump version to 4.15.18-41
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2019-06-18 08:05:26 +02:00
Thomas Lamprecht 71090250db rebase patches on top of Ubuntu-4.15.0-52.56
(generated with debian/scripts/import-upstream-tag)

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2019-06-18 07:35:35 +02:00
Thomas Lamprecht 1f08d6d78b update sources to Ubuntu-4.15.0-52.56
(generated with debian/scripts/import-upstream-tag)

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2019-06-18 07:35:35 +02:00
Thomas Lamprecht 045bc2ba9d backport: KVM: x86: Emulate MSR_IA32_ARCH_CAPABILITIES on AMD hosts
backport this and supporting patches to ensure Ryzen/Epyc CPUs work
with QEMU and it's new MDS mitigation helpers, which also base on
MSRs

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2019-06-14 12:11:41 +02:00
Thomas Lamprecht c523771b01 backport: net: rds: force to destroy connection if t_sock is NULL in rds_tcp_kill_sock()
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2019-06-13 20:55:56 +02:00
Thomas Lamprecht a06fbd44c7 bump version to 4.15.18-40
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2019-05-21 20:43:47 +02:00
Thomas Lamprecht 91bc0e0e0c update sources to Ubuntu-4.15.0-51.55
(generated with debian/scripts/import-upstream-tag)

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2019-05-21 17:21:44 +02:00
Thomas Lamprecht afc295f5e9 bump version to 4.15.18-39
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2019-05-15 08:57:38 +02:00
Thomas Lamprecht c98ed5b4e3 fail if kernel patches to not apply
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2019-05-15 08:56:10 +02:00
Thomas Lamprecht a599f53da3 rebase patches on top of Ubuntu-4.15.0-50.54
(generated with debian/scripts/import-upstream-tag)

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2019-05-15 08:55:36 +02:00
Thomas Lamprecht 6f58e3c81d update sources to Ubuntu-4.15.0-50.54
It mainly comes with some mitigation for MDS[1][3][4][5], for best
result a microupdate of the CPU is required, else the kernel falls
back to some "best effort mitigation", trying to clear the CPU
buffers on kernel/userspace, hypervisor/guest and C-state (idle)
transitions.

With this applied you will have a new file in sysfs to get the
mitigation state of the server regarding MDS:
 $ cat /sys/devices/system/cpu/vulnerabilities/mds

Microcode updates should come available in stretch with
3.20190514.1~deb9u1 [2] version currently only tagged[2], but not yet
released.

[1]: https://www.kernel.org/doc/html/latest/admin-guide/hw-vuln/mds.html#mitigation-strategy
[2]: https://salsa.debian.org/hmh/intel-microcode/commits/debian/3.20190514.1_deb9u1
[3]: https://mdsattacks.com/
[4]: https://cpu.fail/
[5]: https://www.intel.com/content/www/us/en/architecture-and-technology/mds.html

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2019-05-15 08:54:30 +02:00
Thomas Lamprecht e560b66842 update ABI file for 4.15.18-14-pve
(generated with debian/scripts/abi-generate)

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2019-04-30 14:07:31 +02:00
Thomas Lamprecht 8ba6ec4ad4 bump version to 4.15.18-38
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2019-04-30 13:52:32 +02:00
Thomas Lamprecht 075873666c update submodule to Ubuntu-4.15.0-49.53
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2019-04-30 13:52:32 +02:00
Thomas Lamprecht 81801c5658 update patches
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2019-04-30 12:10:08 +02:00
Thomas Lamprecht 8713734e79 fix #2008: kvm: x86: Add AMD's EX_CFG to the list of ignored MSRs
clean backport from kernel mainline commit
0e1b869fff60c81b510c2d00602d778f8f59dd9a  [0]

[0]: https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/commit/?id=0e1b869fff60c81b510c2d00602d778f8f59dd9a

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2019-04-16 17:48:59 +02:00
Thomas Lamprecht 1e7994545c update ABI file for 4.15.18-13-pve
(generated with debian/scripts/abi-generate)

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2019-04-13 22:00:24 +02:00
Thomas Lamprecht 90eff7b943 bump version to 4.15.18-37
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2019-04-13 22:00:24 +02:00
Thomas Lamprecht 2b3306dee4 update ABI file for 4.15.18-12-pve
Late followup for commit 61f33dc8f2
bump version to 4.15.18-35
(generated with debian/scripts/abi-generate)

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2019-04-13 21:59:02 +02:00
Thomas Lamprecht a4ea6fb33c bump version to 4.15.18-36
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2019-04-11 13:06:49 +02:00
Thomas Lamprecht 2de599de08 rebase patches on top of Ubuntu-4.15.0-48.51
(generated with debian/scripts/import-upstream-tag)

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2019-04-05 07:18:45 +02:00
Thomas Lamprecht 4cb71ccc3b update sources to Ubuntu-4.15.0-48.51
(generated with debian/scripts/import-upstream-tag)

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2019-04-05 07:17:43 +02:00
Thomas Lamprecht 61f33dc8f2 bump version to 4.15.18-35
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2019-03-13 08:40:24 +01:00
Thomas Lamprecht 89d8eaee98 rebase patches on top of Ubuntu-4.15.0-47.50
(generated with debian/scripts/import-upstream-tag)

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2019-03-13 07:25:59 +01:00
Thomas Lamprecht c19df7fe61 update sources to Ubuntu-4.15.0-47.50
(generated with debian/scripts/import-upstream-tag)

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2019-03-13 07:25:59 +01:00
Thomas Lamprecht 67bef33bd4 update zfsonlinux to 0.7.13
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2019-03-08 06:57:18 +01:00
Fabian Grünbichler 62307a081a ZFS/SPL: rework submodule and build
to follow changes made to our zfsonlinux repository.

Signed-off-by: Fabian Grünbichler <f.gruenbichler@proxmox.com>
2019-02-27 15:38:52 +01:00
Thomas Lamprecht 9bd09ca97a bump version to 4.15.18-34
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2019-02-25 15:31:07 +01:00
Thomas Lamprecht 4e6465dfa5 backport fixes for multiple KVM vulnerabilities
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2019-02-25 14:51:28 +01:00
Thomas Lamprecht cf6ea5cf34 backport: net: crypto set sk to NULL when af_alg_release
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2019-02-21 14:39:03 +01:00
David Limbeck c774433e2a add patch to fix ipset memory exhaustion
Add a patch from upstream until it is fixed in the Ubuntu 4.15 kernel.

Signed-off-by: David Limbeck <d.limbeck@proxmox.com>
2019-02-20 15:43:31 +01:00
Thomas Lamprecht 3ec7f4d1ea add *.prepared to .gitignore
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2019-02-06 11:43:29 +01:00
Thomas Lamprecht 7c03f8fe85 update ABI file for 4.15.18-11-pve
(generated with debian/scripts/abi-generate)

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2019-02-06 11:43:04 +01:00
Thomas Lamprecht c47b16cb68 bump version to 4.15.18-33
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2019-02-06 11:43:04 +01:00
Thomas Lamprecht 91b336e761 backport i40e fixes
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2019-02-06 11:42:55 +01:00
Thomas Lamprecht 322691b072 rebase patches on top of Ubuntu-4.15.0-46.49
(generated with debian/scripts/import-upstream-tag)

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2019-02-06 11:41:14 +01:00
Thomas Lamprecht a7aea31f47 update sources to Ubuntu-4.15.0-46.49
(generated with debian/scripts/import-upstream-tag)

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2019-02-06 11:07:36 +01:00
Thomas Lamprecht 4adf30b011 bump version to 4.15.18-32
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2019-01-19 12:11:14 +01:00
Thomas Lamprecht 835a39ebaa add fix for possible NULL pointer dereference in net/ipip
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2019-01-19 12:10:33 +01:00
Thomas Lamprecht f4922eba0c update ABI file for 4.15.18-10-pve
(generated with debian/scripts/abi-generate)

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2019-01-14 14:51:46 +01:00
Thomas Lamprecht da7def12fd bump version to 4.15.18-31
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2019-01-14 14:00:25 +01:00
Thomas Lamprecht 4618decfe0 update ACS capabillities patch context
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2019-01-14 13:59:17 +01:00
Thomas Lamprecht 05c4f2217f drop patches applied upstream
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2019-01-14 13:59:17 +01:00
Thomas Lamprecht 99413e5a07 Update sources to Ubuntu-4.15.0-44.47
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2019-01-14 13:59:17 +01:00
Stoiko Ivanov 3db86f1084 bump version to 4.15.18-30
Signed-off-by: Stoiko Ivanov <s.ivanov@proxmox.com>
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2018-11-15 13:33:28 +01:00
Stoiko Ivanov 5e543c74cf update ZFS on Linux to 0.7.12 2018-11-14 18:33:19 +01:00
Stoiko Ivanov 47f3b8990f Add 3 Patches addressing security issues
* CVE-2018-18955 (https://launchpad.net/bugs/1801924) is addressed by
  0009-userns-also-map-extents-in-the-reverse-map-to-kernel.patch
* https://launchpad.net/bugs/1789161 is addressed by the other 2 patches. (see
  the link for a reproducer)

Signed-off-by: Stoiko Ivanov <s.ivanov@proxmox.com>
2018-11-14 18:29:55 +01:00
Thomas Lamprecht 64e7e7daff update ABI file for 4.15.18-9-pve
(generated with debian/scripts/abi-generate)

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2018-11-12 16:02:59 +01:00
Thomas Lamprecht 89a09f9102 bump version to 4.15.18-29
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2018-11-12 16:01:40 +01:00
Thomas Lamprecht 9aa2d28ebb rebase patches on top of Ubuntu-4.15.0-40.43
(generated with debian/scripts/import-upstream-tag)

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2018-11-12 13:33:04 +01:00
Thomas Lamprecht c7bb6c514f update sources to Ubuntu-4.15.0-40.43
(generated with debian/scripts/import-upstream-tag)

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2018-11-12 13:33:04 +01:00
Thomas Lamprecht 645ef9e161 bump version to 4.15.18-28
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2018-10-31 16:28:06 +01:00
Thomas Lamprecht 84fe105196 update ABI file for 4.15.18-8-pve
(generated with debian/scripts/abi-generate)

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2018-10-31 16:28:06 +01:00
Thomas Lamprecht d7571cfde0 update ABI and firmware
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2018-10-31 16:27:22 +01:00
Thomas Lamprecht 63b112e6a7 update ZFS on Linux
Fix #1957
* This patchset mainly addresses a race in ZFS, reported by a user [0].
* While adding this patch, I also updated the submodules to the latest
  versions, and dropped the patches we kept for 0.7.10 and 0.7.11
* Two other issues [1,2] are addressed, where 1 (a performance improvement)
  was a straight-forward cherry-pick and the other (a deadlock fix) needed
  minor backporting (mostly related to the SPL and ZFS repository merge with
  0.8)

[0] https://github.com/zfsonlinux/zfs/pull/8005
[1] https://github.com/zfsonlinux/zfs/pull/8011
[2] https://github.com/zfsonlinux/zfs/pull/7939

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2018-10-31 16:27:22 +01:00
Thomas Lamprecht 0c12c00b3a rebase patches on top of Ubuntu-4.15.0-39.42
(generated with debian/scripts/import-upstream-tag)

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2018-10-25 11:48:58 +02:00
Thomas Lamprecht d032d8b224 update sources to Ubuntu-4.15.0-39.42
(generated with debian/scripts/import-upstream-tag)

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2018-10-25 11:48:58 +02:00
Thomas Lamprecht fd921db9eb README: document different behaviour of submodule vs. clone
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2018-10-24 13:09:41 +02:00
Fabian Grünbichler 03f37cb2bb d/control: update build-depends
with the help of "dpkg-checkdep" to mimic the current build-environment

asciidoc-base: used by perf man pages
automake: used by ZFS/SPL (among other things)
cpio: used in debian/rules
debhelper: used in debian/rules
kmod: used in debian/rules (depmod)
libdw-dev,libelf-dev: used for unwinder
libnuma-dev: used by perf
libslang2-dev: used by perf tui
python-minimal: used by perf
zlib1g-dev: used by perf

thank you Thomas for additional review and extensive discussions
regarding what to include (or not ;))!

Signed-off-by: Fabian Grünbichler <f.gruenbichler@proxmox.com>
Reviewed-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2018-10-12 10:41:58 +02:00
Thomas Lamprecht b8885eda75 bump version to 4.15.18-27
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2018-10-10 14:23:25 +02:00
Thomas Lamprecht dbb1ed6d87 backport: block: fix silent corruption in Linux kernel 4.15
reproducer: https://www.spinics.net/lists/linux-block/msg28507.html
ubuntu bugreport: https://bugs.launchpad.net/ubuntu/+source/linux/+bug/1796542

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2018-10-10 14:22:27 +02:00
Fabian Grünbichler 9929833ca3 d/control: add missing build dependency
libpve-common-perl is used by debian/scripts/abi-generate

Signed-off-by: Fabian Grünbichler <f.gruenbichler@proxmox.com>
2018-10-05 14:10:05 +02:00
Fabian Grünbichler e25e851963 build: remove leftover ZoL workaround
the executable bit is now properly tracked in our submodule, so this is
no longer needed.

Signed-off-by: Fabian Grünbichler <f.gruenbichler@proxmox.com>
2018-10-05 14:10:00 +02:00
Thomas Lamprecht a8871cd828 merge pve-kernel-4.15 into master branch 2018-10-05 10:46:51 +02:00
Thomas Lamprecht 2acee43bfa update ABI file for 4.15.18-7-pve
(generated with debian/scripts/abi-generate)

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2018-10-04 11:38:43 +02:00
Thomas Lamprecht 3f14e60dfb bump version to 4.15.18-26
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2018-10-04 11:38:16 +02:00
Thomas Lamprecht eb7aa676de update sources to Ubuntu-4.15.0-37.40
(generated with debian/scripts/import-upstream-tag)

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2018-10-04 11:01:47 +02:00
Thomas Lamprecht 92f41f02ae update ABI file for 4.15.18-6-pve
(generated with debian/scripts/abi-generate)

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2018-10-03 15:42:36 +02:00
Thomas Lamprecht 70b29d94c2 bump version to 4.15.18-25
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2018-10-03 15:42:30 +02:00
Thomas Lamprecht eab099d083 update sources to Ubuntu-4.15.0-36.39
(generated with debian/scripts/import-upstream-tag)

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2018-10-03 13:28:36 +02:00
Thomas Lamprecht 7f94c18823 update ABI file for 4.15.18-5-pve
(generated with debian/scripts/abi-generate)

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2018-09-17 11:48:35 +02:00
Thomas Lamprecht 83848cd1db bump version to 4.15.18-24
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2018-09-17 11:46:43 +02:00
Thomas Lamprecht 9de43ded7a rebase patches on top of Ubuntu-4.15.0-35.38
(generated with debian/scripts/import-upstream-tag)

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2018-09-17 11:46:13 +02:00
Thomas Lamprecht a79b66df9b update sources to Ubuntu-4.15.0-35.38
(generated with debian/scripts/import-upstream-tag)

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2018-09-17 11:46:13 +02:00
Thomas Lamprecht 4b659c9ce0 bump spl and zfs to 0.7.10
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2018-09-17 11:46:13 +02:00
Thomas Lamprecht aa11e548e4 update ABI file for 4.15.18-4-pve
(generated with debian/scripts/abi-generate)

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2018-08-30 13:05:06 +02:00
Thomas Lamprecht 8cfff66691 bump version to Ubuntu-4.15.0-34.37
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2018-08-30 13:05:06 +02:00
Thomas Lamprecht 16fb26e70c backport protection against userspace-userspace spectreRSB
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2018-08-30 13:05:06 +02:00
Thomas Lamprecht 72d7b7039d rebase patches on top of Ubuntu-4.15.0-34.37
(generated with debian/scripts/import-upstream-tag)

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2018-08-28 12:00:57 +02:00
Thomas Lamprecht 2e503580b3 update sources to Ubuntu-4.15.0-34.37
(generated with debian/scripts/import-upstream-tag)

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2018-08-28 12:00:57 +02:00
Thomas Lamprecht 2b76f08c16 bump version to 4.15.18-22
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2018-08-24 11:13:18 +02:00
Thomas Lamprecht 922581f81c update ABI file for 4.15.18-3-pve
(generated with debian/scripts/abi-generate)

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2018-08-24 11:13:18 +02:00
Thomas Lamprecht 9464be5351 rebase patches on top of Ubuntu-4.15.0-33.36
(generated with debian/scripts/import-upstream-tag)

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2018-08-24 10:30:36 +02:00
Thomas Lamprecht b59d76e6de update sources to Ubuntu-4.15.0-33.36
(generated with debian/scripts/import-upstream-tag)

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2018-08-24 10:30:35 +02:00
Thomas Lamprecht 0fbf7de6c8 bump version to 4.15.18-21
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2018-08-23 11:50:21 +02:00
Stoiko Ivanov 61721594cf add patch for hpsa, preventing clean reboots
Signed-off-by: Stoiko Ivanov <s.ivanov@proxmox.com>
2018-08-22 13:01:23 +02:00
Stoiko Ivanov 2d13a2bdc2 add patch for CVE-2018-1118
The commit is already on bionic/master-next (first commit after the
latest tag on master-next)

Signed-off-by: Stoiko Ivanov <s.ivanov@proxmox.com>
2018-08-22 13:01:23 +02:00
Thomas Lamprecht 043808ec7b README: remove RHEL mentions and updated some outdated infos
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2018-08-22 10:27:55 +02:00
Alexandre Derumier 49b6d16422 vrf patches
This fix
https://github.com/FRRouting/frr/issues/2460

we can remove the workaround net.ipv4.tcp_l3mdev_accept=1 with this patches.
2018-08-21 09:10:33 +02:00
Stoiko Ivanov d25818ae91 update ABI file for 4.15.18-2-pve
(generated with debian/scripts/abi-generate)

Signed-off-by: Stoiko Ivanov <s.ivanov@proxmox.com>
2018-08-16 13:22:10 +02:00
Stoiko Ivanov 1bffa5165f bump version to 4.15.18-20
and bump ABI/KREL

Signed-off-by: Stoiko Ivanov <s.ivanov@proxmox.com>
2018-08-16 13:21:59 +02:00
Stoiko Ivanov e2af2a6161 rebase patches on top of Ubuntu-4.15.0-32.35
(generated with debian/scripts/import-upstream-tag)

Signed-off-by: Stoiko Ivanov <s.ivanov@proxmox.com>
2018-08-16 13:21:43 +02:00
Stoiko Ivanov 7f421f4002 update sources to Ubuntu-4.15.0-32.35
(generated with debian/scripts/import-upstream-tag)

Signed-off-by: Stoiko Ivanov <s.ivanov@proxmox.com>
2018-08-16 13:20:57 +02:00
Dietmar Maurer beb9b8695d add -X to upload target 2018-08-13 08:29:09 +02:00
Dietmar Maurer b6fe45e6d5 bump version to 4.15.18-19 2018-08-13 07:51:40 +02:00
Stoiko Ivanov c7ad278e19 update ABI file for 4.15.18-1-pve
(generated with debian/scripts/abi-generate)

Signed-off-by: Stoiko Ivanov <s.ivanov@proxmox.com>
2018-08-13 07:45:14 +02:00
Stoiko Ivanov eb92dda137 update ZFS submodule to 0.7.9-pve3
Signed-off-by: Stoiko Ivanov <s.ivanov@proxmox.com>
2018-08-13 07:43:35 +02:00
Stoiko Ivanov 8b4e1fa9c6 Add short documentation about bumping the ABI
Signed-off-by: Stoiko Ivanov <s.ivanov@proxmox.com>
2018-08-13 07:41:59 +02:00
Stoiko Ivanov 0b82622cb4 Fix typo in README
Signed-off-by: Stoiko Ivanov <s.ivanov@proxmox.com>
2018-08-13 07:41:14 +02:00
Stoiko Ivanov 80a7ba6436 bump version to 4.15.18-18
Signed-off-by: Stoiko Ivanov <s.ivanov@proxmox.com>
2018-08-08 12:10:37 +02:00
Stoiko Ivanov 72f9fd46cc add SGID non-directory fix
fixes CVE-2018-13405 (https://nvd.nist.gov/vuln/detail/CVE-2018-13405)

Signed-off-by: Stoiko Ivanov <s.ivanov@proxmox.com>
2018-08-08 12:08:54 +02:00
Stoiko Ivanov cbd72f4cea update sources to Ubuntu-4.15.0-30.32
(generated with debian/scripts/import-upstream-tag)

Signed-off-by: Stoiko Ivanov <s.ivanov@proxmox.com>
2018-08-08 12:07:39 +02:00
Thomas Lamprecht eea72d300f bump version to 4.15.18-17
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2018-07-30 12:55:38 +02:00
Wolfgang Bumiller cd0e07c792 add apparmor socket mediation fix
Link: https://bugs.launchpad.net/ubuntu/+source/linux/+bug/1780227
Signed-off-by: Wolfgang Bumiller <w.bumiller@proxmox.com>
2018-07-30 11:47:20 +02:00
Thomas Lamprecht 64fc80e3b7 bump version to 4.15.18-16
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2018-07-23 15:59:51 +02:00
Thomas Lamprecht ce5108b9ea update sources to Ubuntu-4.15.0-29.31
(generated with debian/scripts/import-upstream-tag)

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2018-07-23 15:58:19 +02:00
Thomas Lamprecht d32cd60c77 update ZFS submodule to 0.7.9-3 with cherry-picked deadlock fix
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2018-07-16 12:19:01 +02:00
Thomas Lamprecht c0bcb10a6b bump version to 4.13.16-51
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2018-07-05 12:21:37 +02:00
Thomas Lamprecht e5f68877f7 update ABI file for 4.13.16-3
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2018-07-05 12:21:17 +02:00
Thomas Lamprecht c32a5136c9 rebase patches on top of Ubuntu-4.13.0-45.50
(generated with debian/scripts/import-upstream-tag)

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2018-07-05 09:00:14 +02:00
Thomas Lamprecht 25d1229b93 update sources to Ubuntu-4.13.0-45.50
(generated with debian/scripts/import-upstream-tag)

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2018-07-05 09:00:13 +02:00
Thomas Lamprecht 9920decb89 bsys: export-patchqueue: do not print signature
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
(cherry picked from commit a6ee60dcae)
2018-07-05 08:59:54 +02:00
Thomas Lamprecht 75af7c34e3 bump version to 4.15.18-15 2018-07-04 15:44:15 +02:00
Thomas Lamprecht b5e86998ea use intree NIC driver for 10G IXGBE drivers
no problems had been reported with it, in contrary to igb and e1000e
so use the newer and better supported in tree driver.

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2018-07-04 15:42:14 +02:00
Thomas Lamprecht 23332fa9eb sync firmware list 2018-07-04 15:02:04 +02:00
Thomas Lamprecht c0514fa336 rebase patches on top of Ubuntu-4.15.0-24.26
(generated with debian/scripts/import-upstream-tag)

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2018-07-04 11:50:41 +02:00
Thomas Lamprecht b293e26829 update sources to Ubuntu-4.15.0-24.26
(generated with debian/scripts/import-upstream-tag)

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2018-07-04 11:50:41 +02:00
Thomas Lamprecht a6ee60dcae bsys: export-patchqueue: do not print signature
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2018-07-04 11:50:30 +02:00
Thomas Lamprecht 94ee5be79f bump version to 4.13.16-50 2018-06-28 10:49:34 +02:00
Thomas Lamprecht 241d0d30b7 add KVM L1 guest escape - CVE-2018-12904 patch
see: http://www.openwall.com/lists/oss-security/2018/06/27/7
2018-06-27 18:01:12 +02:00
Thomas Lamprecht 93a8ca28fc bump version to 4.15.17-14
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2018-06-27 17:48:40 +02:00
Thomas Lamprecht 5d6c3ffa8e buildsys: print out which patch we apply
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2018-06-27 17:48:40 +02:00
Thomas Lamprecht 2dc5b5fe0e add KVM L1 guest escape - CVE-2018-12904 patch
see: http://www.openwall.com/lists/oss-security/2018/06/27/7
2018-06-27 17:17:27 +02:00
Thomas Lamprecht d069b13f84 bump version to 4.15-13 2018-06-18 17:18:35 +02:00
Thomas Lamprecht e8834e95a2 igb: ensure setting MTU sets also max_frame_size
This is a regression from the out-of-tree Intel IGB driver happened
between 5.3.5.10 and 5.3.5.18.
The condition here should be actually reveresed, but as we always can
be sure to have a MAX/MIN MTU defined we can just remove it,
essentially going back to the previous code state (which also works
with our current 4.15 kernel).

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2018-06-18 17:07:01 +02:00
Thomas Lamprecht 75b315d492 bsys: clarify when to bump meta package
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2018-06-08 14:39:31 +02:00
Thomas Lamprecht 4379131c79 bump version to 4.15-12
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2018-06-08 12:01:57 +02:00
Thomas Lamprecht d3722c5c8a backport SUN NICs fix for OVS use
See: https://pve.proxmox.com/pipermail/pve-user/2018-June/169567.html

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2018-06-08 11:58:18 +02:00
Thomas Lamprecht 515973635b renenable out-of-tree intel ethernet driver (e1000e, igb, ixgbe)
There where just to much issues with the 4.15 in tree drivers for our
users [1]. The updated igb and ixgbe drivers are compatible with
4.15, the e1000e driver needed to be ported to the new internal
kernel timer API, which is pretty straight forward.

[1]: https://forum.proxmox.com/threads/4-15-based-test-kernel-for-pve-5-x-available.42097/page-5

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2018-06-08 11:58:18 +02:00
Thomas Lamprecht f61496936e update out-of-tree intel ethernet drivers
update OOT Intel ethernet driver for e1000e, igb and ixgbe backed
NICs from: https://sourceforge.net/projects/e1000/

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2018-06-08 11:35:11 +02:00
Thomas Lamprecht 73cf4c7faf d/control: automatically replace linux tools maj.min version
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2018-05-30 08:25:19 +02:00
Stoiko Ivanov 875f9e81f4 d/rules: don't remove perf.1 manpage
the one in linux-base refers to the versioned one

Signed-off-by: Stoiko Ivanov <s.ivanov@proxmox.com>
2018-05-30 08:24:21 +02:00
Stoiko Ivanov 86c0946a20 d/rules: add version to perf man pages
Signed-off-by: Stoiko Ivanov <s.ivanov@proxmox.com>
2018-05-30 08:24:16 +02:00
Stoiko Ivanov 5fd5ec0e77 refactor variable names and remove hardcoded major.minor version
Signed-off-by: Stoiko Ivanov <s.ivanov@proxmox.com>
2018-05-30 08:24:13 +02:00
Thomas Lamprecht 758134b5b8 d/control: automatically replace linux tools maj.min version
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2018-05-30 08:21:24 +02:00
Stoiko Ivanov ea0c28fbd3 d/rules: don't remove perf.1 manpage
the one in linux-base refers to the versioned one

Signed-off-by: Stoiko Ivanov <s.ivanov@proxmox.com>
2018-05-28 15:50:12 +02:00
Stoiko Ivanov d19532a45f d/rules: add version to perf man pages
Signed-off-by: Stoiko Ivanov <s.ivanov@proxmox.com>
2018-05-28 15:50:12 +02:00
Stoiko Ivanov 836592184c refactor variable names and remove hardcoded major.minor version
Signed-off-by: Stoiko Ivanov <s.ivanov@proxmox.com>
2018-05-28 12:30:01 +02:00
Thomas Lamprecht eae1bbd4fd abi-generate: abi parameter only needed if we parse deb
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2018-05-25 15:09:52 +02:00
Thomas Lamprecht a74fe23cf8 buildsys: abi-generate: add usage output
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2018-05-25 15:08:13 +02:00
Thomas Lamprecht 193a77caa9 follow up: update ABI tracking file
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2018-05-25 15:08:13 +02:00
Thomas Lamprecht a4ed09777b buildsys: abi-generate: add usage output
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2018-05-25 13:20:12 +02:00
Thomas Lamprecht aaf2ebd5eb follow up: update ABI tracking file
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2018-05-25 13:06:25 +02:00
Thomas Lamprecht 96c98e6390 bump version to 4.13-49 2018-05-24 13:36:25 +02:00
Thomas Lamprecht 1f1e183368 rebase patches on top of Ubuntu-4.13.0-43.48 2018-05-24 13:36:25 +02:00
Thomas Lamprecht cee23dde01 update sources to Ubuntu-4.13.0-43.48 2018-05-24 13:36:25 +02:00
Thomas Lamprecht 2a24ef2cb2 update ZFS to 0.7.9-pve1 2018-05-24 13:36:25 +02:00
Thomas Lamprecht cd69f5e8ed bump version to 4.15-10 2018-05-23 13:16:05 +02:00
Thomas Lamprecht e4087db377 rebase patches on top of Ubuntu-4.15.0-22.24
(generated with debian/scripts/import-upstream-tag)

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2018-05-23 11:46:22 +02:00
Thomas Lamprecht 3ddff19d23 update sources to Ubuntu-4.15.0-22.24
(generated with debian/scripts/import-upstream-tag)

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2018-05-23 11:46:22 +02:00
Thomas Lamprecht d265991006 update ZFS to 0.7.9-pve1 2018-05-23 11:46:22 +02:00
Thomas Lamprecht 9952c40c8a buildsys: also cleanup *.{deb,changes,buildinfo} files 2018-05-23 11:43:21 +02:00
Thomas Lamprecht cd95e3e71c buildsys: also cleanup *.{deb,changes,buildinfo} files 2018-05-23 11:42:10 +02:00
Fabian Grünbichler 7361c770af bump version to 4.15-9 2018-05-09 13:32:39 +02:00
Fabian Grünbichler d72363003b build: refactor header build
to also include tools and scripts like objtool, which are now needed for
external module building

Signed-off-by: Fabian Grünbichler <f.gruenbichler@proxmox.com>
2018-05-09 13:12:07 +02:00
Thomas Lamprecht 7d510c8811 bump version to 4.13-48 2018-05-04 13:29:41 +02:00
Thomas Lamprecht 1411e00339 update ZFS to 0.7.8-pve1 2018-05-04 13:29:41 +02:00
Thomas Lamprecht 9552bb6dee bump version to 4.15-8 2018-05-04 13:14:39 +02:00
Thomas Lamprecht 9695db3ba6 update ZFS to 0.7.8-pve1 2018-05-04 13:14:39 +02:00
Thomas Lamprecht 4cae8e323f rebase patches on top of Ubuntu-4.13.0-40.45
(generated with debian/scripts/import-upstream-tag)

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2018-05-04 10:56:24 +02:00
Thomas Lamprecht cf0ec7e756 update sources to Ubuntu-4.13.0-40.45
(generated with debian/scripts/import-upstream-tag)

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2018-05-04 10:56:24 +02:00
Thomas Lamprecht c3592848d1 rebase patches on top of Ubuntu-4.15.0-20.21
(generated with debian/scripts/import-upstream-tag)

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2018-05-03 08:16:40 +02:00
Thomas Lamprecht d7ef04ddd4 update sources to Ubuntu-4.15.0-20.21
(generated with debian/scripts/import-upstream-tag)

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2018-05-03 08:16:40 +02:00
Wolfgang Bumiller 1e12ef0dcc fix #1737: merge: net: fix deadlock while clearing neighbor proxy table
Link: https://bugzilla.kernel.org/show_bug.cgi?id=199289
Signed-off-by: Wolfgang Bumiller <w.bumiller@proxmox.com>
2018-04-25 14:28:43 +02:00
Wolfgang Bumiller c9e0edd481 fix #1737: merge: net: fix deadlock while clearing neighbor proxy table
Link: https://bugzilla.kernel.org/show_bug.cgi?id=199289
Signed-off-by: Wolfgang Bumiller <w.bumiller@proxmox.com>
2018-04-25 14:28:04 +02:00
Fabian Grünbichler 62948cb62e d/rules: check for accidental perf linkage
with libraries that are not GPL-2-only compatible, fix previously typoed
variable, and add build-dep on libiberty-dev for CPLUS demangling.

Signed-off-by: Fabian Grünbichler <f.gruenbichler@proxmox.com>
2018-04-25 14:05:31 +02:00
Fabian Grünbichler 3e1dbb9dbf d/rules: install perf man pages
Signed-off-by: Fabian Grünbichler <f.gruenbichler@proxmox.com>
2018-04-25 14:05:21 +02:00
Fabian Grünbichler 6e677e700e d/rules: don't strip headers package
we don't want to debug the contained helper binaries ;)

Signed-off-by: Fabian Grünbichler <f.gruenbichler@proxmox.com>
2018-04-25 14:02:55 +02:00
Fabian Grünbichler cfb5b5480b d/rules: reformat header collection
for better readability and to reduce future churn

Signed-off-by: Fabian Grünbichler <f.gruenbichler@proxmox.com>
2018-04-25 14:02:51 +02:00
Fabian Grünbichler 7cbdd0b90d d/rules: check for accidental perf linkage
with libraries that are not GPL-2-only compatible, fix previously typoed
variable, and add build-dep on libiberty-dev for CPLUS demangling.

Signed-off-by: Fabian Grünbichler <f.gruenbichler@proxmox.com>
2018-04-25 13:27:39 +02:00
Fabian Grünbichler 29917645ac d/rules: install perf man pages
Signed-off-by: Fabian Grünbichler <f.gruenbichler@proxmox.com>
2018-04-25 07:20:24 +02:00
Fabian Grünbichler 7f6fc591c9 d/rules: don't strip headers package
we don't want to debug the contained helper binaries ;)

Signed-off-by: Fabian Grünbichler <f.gruenbichler@proxmox.com>
2018-04-25 07:20:24 +02:00
Fabian Grünbichler 7a315510b5 d/rules: reformat header collection
for better readability and to reduce future churn

Signed-off-by: Fabian Grünbichler <f.gruenbichler@proxmox.com>
2018-04-25 07:20:24 +02:00
Fabian Grünbichler a5e39a0d5a update ABI file for 4.15.17-1-pve
(generated with debian/scripts/abi-generate)

Signed-off-by: Fabian Grünbichler <f.gruenbichler@proxmox.com>
2018-04-24 14:23:50 +02:00
Thomas Lamprecht ff2994e82d d/control: add some missing build dependencies
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>

and wrap-and-sort them

Signed-off-by: Fabian Grünbichler <f.gruenbichler@proxmox.com>
2018-04-24 12:01:10 +02:00
Thomas Lamprecht 8ef2bff31c d/control: add some missing build dependencies
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>

and wrap-and-sort them

Signed-off-by: Fabian Grünbichler <f.gruenbichler@proxmox.com>
2018-04-24 12:00:58 +02:00
Fabian Grünbichler c8a6fd7804 debian/scripts: add import-upstream-tag
Signed-off-by: Fabian Grünbichler <f.gruenbichler@proxmox.com>
2018-04-24 09:09:16 +02:00
Fabian Grünbichler 319569e4be debian/scripts: add patchqueue scripts
Signed-off-by: Fabian Grünbichler <f.gruenbichler@proxmox.com>
2018-04-24 09:09:16 +02:00
Fabian Grünbichler a5d0221028 debian/scripts: add import-upstream-tag
Signed-off-by: Fabian Grünbichler <f.gruenbichler@proxmox.com>
2018-04-24 08:57:53 +02:00
Fabian Grünbichler eec53b4f3f debian/scripts: add patchqueue scripts
Signed-off-by: Fabian Grünbichler <f.gruenbichler@proxmox.com>
2018-04-24 08:57:53 +02:00
Fabian Grünbichler 679a836a3a bump version to 4.15-7, bump ABI to 4.15.17-1-pve
Signed-off-by: Fabian Grünbichler <f.gruenbichler@proxmox.com>
2018-04-20 14:55:21 +02:00
Fabian Grünbichler 927081a949 rebase patches
Signed-off-by: Fabian Grünbichler <f.gruenbichler@proxmox.com>
2018-04-20 14:55:21 +02:00
Fabian Grünbichler eb19cd991b update source to Ubuntu-4.15.0-17.18
Signed-off-by: Fabian Grünbichler <f.gruenbichler@proxmox.com>
2018-04-20 14:55:21 +02:00
Fabian Grünbichler f060990aa5 bump version to 4.15-6 2018-04-09 12:25:32 +02:00
Fabian Grünbichler 7e474654b7 update ZFS to 0.7.7-pve2 2018-04-09 12:25:32 +02:00
Fabian Grünbichler 0e37410676 update ABI file for 4.13.16-2-pve
(generated with debian/scripts/abi-generate)

Signed-off-by: Fabian Grünbichler <f.gruenbichler@proxmox.com>
2018-04-09 11:36:52 +02:00
Fabian Grünbichler 7996fc9e77 bump version to 4.13-47 2018-04-09 11:36:51 +02:00
Fabian Grünbichler 58e2f3e62f update ZFS to 0.7.7-pve2 2018-04-09 11:36:51 +02:00
Fabian Grünbichler 556283304a unbreak build after Ubuntu retpoline extract changes 2018-04-09 09:59:10 +02:00
Fabian Grünbichler d2da08752a rebase patches on top of Ubuntu-4.13.0-39.44
Signed-off-by: Fabian Grünbichler <f.gruenbichler@proxmox.com>
2018-04-09 09:59:08 +02:00
Fabian Grünbichler 733df4e15e update sources to Ubuntu-4.13.0-39.44
Signed-off-by: Fabian Grünbichler <f.gruenbichler@proxmox.com>
2018-04-09 09:59:04 +02:00
Fabian Grünbichler 071b9db5a2 update ABI file for 4.15.15-1-pve
(generated with debian/scripts/abi-generate)

Signed-off-by: Fabian Grünbichler <f.gruenbichler@proxmox.com>
2018-04-05 15:32:36 +02:00
Fabian Grünbichler 4afcfa3a6f bump version to 4.15-5, bump ABI to 4.15.15-1-pve
Signed-off-by: Fabian Grünbichler <f.gruenbichler@proxmox.com>
2018-04-04 15:43:07 +02:00
Fabian Grünbichler aac513414d update SPL/ZFS to 0.7.7
and manually set the executable build on this new helper script

Signed-off-by: Fabian Grünbichler <f.gruenbichler@proxmox.com>
2018-04-04 15:43:07 +02:00
Fabian Grünbichler 2068d368d7 revert broken kernel Makefile modification
see [1] for upstream report

1: https://bugs.launchpad.net/ubuntu/+source/linux/+bug/1758856/comments/1
Signed-off-by: Fabian Grünbichler <f.gruenbichler@proxmox.com>
2018-04-04 15:43:07 +02:00
Fabian Grünbichler a214614ea9 rebase patches on top of Ubuntu-4.15.0-14.15
and drop those applied upstream

Signed-off-by: Fabian Grünbichler <f.gruenbichler@proxmox.com>
2018-04-04 15:43:07 +02:00
Fabian Grünbichler 29704dd4fa update sources to Ubuntu-4.15.0-14.15
Signed-off-by: Fabian Grünbichler <f.gruenbichler@proxmox.com>
2018-04-04 15:43:07 +02:00
Fabian Grünbichler e91714fb70 bump version to 4.13-46
Signed-off-by: Fabian Grünbichler <f.gruenbichler@proxmox.com>
2018-04-04 14:49:39 +02:00
Fabian Grünbichler 4abb1088a3 update SPL/ZFS to 0.7.7
and manually set the executable build on this new helper script

Signed-off-by: Fabian Grünbichler <f.gruenbichler@proxmox.com>
2018-04-04 14:49:39 +02:00
Fabian Grünbichler 4794f3cd69 bump version to 4.15.10-4 2018-03-28 15:47:55 +02:00
Fabian Grünbichler 1f6c4a8c5c bump version to 4.13.16-45 2018-03-28 15:47:17 +02:00
Fabian Grünbichler e866cbac69 fix #1633: potential deadlock with shmem
Signed-off-by: Fabian Grünbichler <f.gruenbichler@proxmox.com>
2018-03-28 15:25:35 +02:00
Fabian Grünbichler b25749a58c fix #1633: potential deadlock with shmem
Signed-off-by: Fabian Grünbichler <f.gruenbichler@proxmox.com>
2018-03-28 15:17:19 +02:00
Fabian Grünbichler 498bdfe5e5 bump version to 4.15.10-3 2018-03-28 11:07:58 +02:00
Fabian Grünbichler fd0ede4990 bump version to 4.13.16-44 2018-03-28 10:37:10 +02:00
Fabian Grünbichler 8e89f13c59 fix #1633: potential deadlock with THPs
see https://marc.info/?l=linux-mm&m=151683828707588

Signed-off-by: Fabian Grünbichler <f.gruenbichler@proxmox.com>
2018-03-27 16:02:05 +02:00
Fabian Grünbichler 5a7ad156fa fix #1633: potential deadlock with THPs
see https://marc.info/?l=linux-mm&m=151683828707588

Signed-off-by: Fabian Grünbichler <f.gruenbichler@proxmox.com>
2018-03-26 14:47:23 +02:00
Fabian Grünbichler 8d06c0d3d4 update ABI file for 4.13.16-1-pve
(generated with debian/scripts/abi-generate)

Signed-off-by: Fabian Grünbichler <f.gruenbichler@proxmox.com>
2018-03-22 14:44:55 +01:00
Fabian Grünbichler fc6b60ba54 update ABI file for 4.15.10-1-pve
(generated with debian/scripts/abi-generate)

Signed-off-by: Fabian Grünbichler <f.gruenbichler@proxmox.com>
2018-03-22 14:07:29 +01:00
Fabian Grünbichler b4ecde23e8 build: add abiupdate target
to automatically extract and commit the ABI data from a built
pve-headers binary package.

Signed-off-by: Fabian Grünbichler <f.gruenbichler@proxmox.com>
2018-03-22 11:12:48 +01:00
Fabian Grünbichler 330d1c9ea1 bump version to 4.15-2, bump ABI to 4.15.10-1-pve
Signed-off-by: Fabian Grünbichler <f.gruenbichler@proxmox.com>
2018-03-22 11:12:48 +01:00
Fabian Grünbichler 4062c10346 scripts/abi-check: don't fail after ABI bump
this allows automatically running abi-check in non-fatal mode if an ABI
bump has just been done.

Signed-off-by: Fabian Grünbichler <f.gruenbichler@proxmox.com>
2018-03-22 11:12:48 +01:00
Fabian Grünbichler 40af2e3b0f d/scripts/abi-generate: add new helper script
and use it in d/rules to generate the checked ABI file.

Signed-off-by: Fabian Grünbichler <f.gruenbichler@proxmox.com>
2018-03-22 11:12:48 +01:00
Fabian Grünbichler faa3d7515d build: rename ABI file
to track previous ABI to automatically skip ABI checks on ABI bumps.

Signed-off-by: Fabian Grünbichler <f.gruenbichler@proxmox.com>
2018-03-22 11:12:48 +01:00
Fabian Grünbichler ecef40a218 rebase patches
Signed-off-by: Fabian Grünbichler <f.gruenbichler@proxmox.com>
2018-03-22 11:12:48 +01:00
Fabian Grünbichler cab40c440e update sources to Ubuntu-4.15.0-13.14
Signed-off-by: Fabian Grünbichler <f.gruenbichler@proxmox.com>
2018-03-22 11:12:48 +01:00
Fabian Grünbichler 8f8697361c build: add abiupdate target
to automatically extract and commit the ABI data from a built
pve-headers binary package.

Signed-off-by: Fabian Grünbichler <f.gruenbichler@proxmox.com>
2018-03-21 14:45:36 +01:00
Fabian Grünbichler 66530989ce bump version to 4.13-43, bump ABI to 4.13.16-1-pve
Signed-off-by: Fabian Grünbichler <f.gruenbichler@proxmox.com>
2018-03-21 14:45:36 +01:00
Fabian Grünbichler b1d53c94b4 scripts/abi-check: don't fail after ABI bump
this allows automatically running abi-check in non-fatal mode if an ABI
bump has just been done.

Signed-off-by: Fabian Grünbichler <f.gruenbichler@proxmox.com>
2018-03-21 14:45:36 +01:00
Fabian Grünbichler 2132f0716b d/scripts/abi-generate: add new helper script
and use it in d/rules to generate the checked ABI file.

Signed-off-by: Fabian Grünbichler <f.gruenbichler@proxmox.com>
2018-03-21 14:45:36 +01:00
Fabian Grünbichler 613597611d build: rename ABI file
to track previous ABI to automatically skip ABI checks on ABI bumps

Signed-off-by: Fabian Grünbichler <f.gruenbichler@proxmox.com>
2018-03-21 14:45:35 +01:00
Fabian Grünbichler eac000ce29 rebase patches
and drop those applied upstream

Signed-off-by: Fabian Grünbichler <f.gruenbichler@proxmox.com>
2018-03-21 14:45:35 +01:00
Fabian Grünbichler 8cef3abbbf update sources to Ubuntu-4.13.0-38.43
Signed-off-by: Fabian Grünbichler <f.gruenbichler@proxmox.com>
2018-03-21 14:45:35 +01:00
Fabian Grünbichler 6247b79f32 bump version to 4.15.3-1, bump ABI to 4.15.3-1-pve
and include updated fwlist
2018-03-09 15:43:24 +01:00
Fabian Grünbichler 2454b79d7a switch to in-tree intel drivers
as the out-of-tree ones are not compatible with 4.15
2018-03-09 15:28:03 +01:00
Fabian Grünbichler 15baf5b4c2 rebase patches
and drop those applied in 4.14/4.15
2018-03-09 14:47:21 +01:00
Fabian Grünbichler 55f9bfa990 update ACS override patch for 4.15
based on https://aur.archlinux.org/linux-vfio.git
2018-03-09 14:47:21 +01:00
Fabian Grünbichler 1e99f45be0 build: replace 4.13 with 4.15
as well as artful with bionic, and reset KREL/PKGREL accordingly
2018-03-09 14:47:21 +01:00
Fabian Grünbichler fbecbc3be2 switch source to Ubuntu-4.15.0-10.11 2018-03-09 14:18:36 +01:00
Fabian Grünbichler 320c823e91 bump version to 4.13.13-42 2018-03-09 11:57:49 +01:00
Fabian Grünbichler 3323a8b78c add cherry-picks for OCFS2 bug
see https://forum.proxmox.com/threads/ocfs2-kernel-bug.39163/
2018-03-09 11:57:49 +01:00
Fabian Grünbichler 863ccb9670 add cherry-pick for NFS in network namespaces 2018-03-09 11:57:49 +01:00
Fabian Grünbichler 23df286b67 update source to Ubuntu-4.13.0-36.40 2018-03-09 11:57:49 +01:00
Fabian Grünbichler 44403fcc69 update README 2018-03-09 11:57:24 +01:00
Fabian Grünbichler 12aaf1a2f7 build: cleanup directory handling 2018-03-09 11:56:22 +01:00
Fabian Grünbichler 66aed5b89f build: remove exported variables
in favor of generated rules.d snippet. this allows calling
dpkg-buildpackage in the build directory manually without setting up the
environment to match.
2018-03-09 11:56:22 +01:00
Fabian Grünbichler f3acafc70e build: add pmg to upload target 2018-03-09 09:19:58 +01:00
Fabian Grünbichler e96d2ab3a1 build: move build and packaging to debian/
the top-level Makefile now only prepares the build directory by copying
and patching sources and generating the real files from debian/*.in

the actual build and packaging happens in debian/rules
2018-03-09 09:19:58 +01:00
Fabian Grünbichler 812cbfc144 debian/compat: set to 10 2018-03-09 09:19:58 +01:00
Fabian Grünbichler b9b3ee7810 debian/copyright: whitespace cleanup 2018-03-09 09:19:58 +01:00
Fabian Grünbichler f3baf3769b d/control: add source section, cleanup
remove variables that are set by dpkg-buildpackage automatically, and
wrap-and-sort the whole thing
2018-03-09 09:19:58 +01:00
Fabian Grünbichler 2d62d8a400 build: move/merge files
the control files were merged as appropriate, the rest are plain
renames.
2018-03-09 09:19:58 +01:00
Fabian Grünbichler 5de7886d45 build: remove leftover patch
has been applied upstream since 4.7 and thus dropped from our queue for
quite some time.
2018-03-09 09:19:58 +01:00
Fabian Grünbichler c7ac633ff7 build: remove proxmox-ve files
moved to separate repositories (proxmox-ve and pve-kernel-meta)
2018-03-09 09:19:43 +01:00
Fabian Grünbichler 89102957f9 bump version to 4.13-41 2018-02-21 10:08:20 +01:00
Fabian Grünbichler fecdaa4ec9 update ZFS/SPL to 0.7.6 2018-02-21 10:06:09 +01:00
Fabian Grünbichler 38c79e8118 fix refcnt leaks with net namespaces
see https://github.com/lxc/lxc/issues/2141 and
https://bugs.launchpad.net/ubuntu/+source/linux/+bug/1711407/
2018-02-21 09:18:49 +01:00
Fabian Grünbichler 8a8c16e218 bump version to 4.13-40 2018-02-16 09:58:12 +01:00
Fabian Grünbichler a4b1a797a0 warn when non-RETPOLINED module gets loaded 2018-02-16 09:58:12 +01:00
Fabian Grünbichler eb7f659548 bump version to 4.13-39, bump ABI to 4.13.13-6-pve 2018-02-16 09:58:12 +01:00
Fabian Grünbichler 7f4d14b06f buildsys: check for indirect/RETPOLINE gcc support
copied from arch/x86/Makefile
2018-02-16 09:58:12 +01:00
Fabian Grünbichler ef812b062d cherry-pick sched-wait bug fix
(included in 4.15 and queued for 4.14)
2018-02-14 12:14:12 +01:00
Fabian Grünbichler d320e5b2c3 cherry-pick scsi lpfc HBA bug fix
see https://forum.proxmox.com/threads/proxmox-5-1-lpfc-hba-emulex-lpe12000-error.39179/
2018-02-13 12:41:35 +01:00
Fabian Grünbichler 3adc532101 rebase patches 2018-02-13 12:41:35 +01:00
Fabian Grünbichler 9e25396c90 update sources to Ubuntu-4.13.0-35.39 2018-02-13 12:41:35 +01:00
Fabian Grünbichler 1da60899e3 add EDAC cherry-picks 2018-01-29 15:00:40 +01:00
Fabian Grünbichler a70918fbbc restructure patches
rebase on Ubuntu-4.13.0-32.35

the effective kernel tree which gets compiled after patches have been
applied is functionally identical (modulo parts for architectures which
we don't care about and Ubuntu build files)
2018-01-29 14:22:56 +01:00
Fabian Grünbichler 8d1dbe7c68 update sources to Ubuntu-4.13.0-32.35
note: all relevant changes were previously already cherry-picked
2018-01-29 14:19:13 +01:00
Fabian Grünbichler 57ff4c945b bump version to 4.13-38 2018-01-26 10:48:16 +01:00
Fabian Grünbichler 81f370d513 fix syscall retpoline 2018-01-26 10:46:25 +01:00
Fabian Grünbichler c1178a874f bump version to 4.13-37 2018-01-19 12:45:45 +01:00
Fabian Grünbichler a0f7ab8a6a fix #1622: i40e memory leak
cherry-pick from upstream 4.14
2018-01-19 12:43:16 +01:00
Fabian Grünbichler 7f0445469f update ZFS to 0.7.4 + ARC hit rate cherry-pick
from 0.7.6 queue
2018-01-19 12:28:37 +01:00
Fabian Grünbichler f90505f3a2 add tc fixes 2018-01-19 12:27:49 +01:00
Fabian Grünbichler d7db7042bc update ABI file 2018-01-15 14:05:27 +01:00
Fabian Grünbichler 5c85c0455e bump version to 4.13-36, bump ABI to 4.13.13-5-pve 2018-01-15 14:05:27 +01:00
Fabian Grünbichler 035dbe6708 KPTI/Spectre: add more fixes
* initial IBRS/IBPB/SPEC_CTRL support
* regression fixes for KPTI
* additional hardening against Spectre

based on Ubuntu-4.13.0-29.32 and mainline 4.14
2018-01-15 12:34:50 +01:00
Fabian Grünbichler 59d5af6732 build: reformat existing patches
drop numbers and commit hashes from patch metadata to reduce future
patch churn
2018-01-15 12:26:15 +01:00
Fabian Grünbichler 9c34463e8c bump version to 4.13-35, bump ABI to 4.13.13-4-pve 2018-01-08 11:51:24 +01:00
Fabian Grünbichler 633c5ed17f revert buggy SCSI error handler commit
this causes kernel OOPS and upstream is unresponsive about it.

see https://bugs.launchpad.net/ubuntu/+source/linux/+bug/1726519
2018-01-08 11:51:24 +01:00
Fabian Grünbichler 76ec7e5931 update Spectre KVM PoC fix for AMD 2018-01-08 10:58:23 +01:00
Fabian Grünbichler 04f3b8beca KPTI: disable on AMD
and allow loading of microcode on recent AMD systems in preparation of
further Spectre fixes
2018-01-08 10:25:31 +01:00
Fabian Grünbichler e4cdf2a53e KPTI: add follow-up fixes 2018-01-08 10:25:09 +01:00
Fabian Grünbichler f9557b2c8d update ABI file 2018-01-07 13:21:02 +01:00
Fabian Grünbichler 597fd67073 bump version to 4.13-34, bump ABI to 4.13.13-3-pve 2018-01-07 13:21:02 +01:00
Fabian Grünbichler 6ecf746bac enable KPTI 2018-01-07 13:18:22 +01:00
Fabian Grünbichler e414beae5f default to FRAME_POINTER unwinder again
the new default was changed in 4.14 and was cherry-picked together with
KPTI, but the ORC_UNWINDER seems to break ZFS
2018-01-07 13:18:22 +01:00
Fabian Grünbichler b378f209dd add objtool build fix 2018-01-07 13:18:22 +01:00
Fabian Grünbichler 7c7389df50 add Spectre PoC fix
picked from https://patchwork.kernel.org/patch/10147679/
2018-01-06 15:15:39 +01:00
Fabian Grünbichler 321d628a98 add KPTI and related patches
picked from Ubuntu-4.13.0-23.26
2018-01-06 15:15:39 +01:00
Fabian Grünbichler 19894df472 reorder patches
numbering got messed up in the previous upload
2018-01-06 15:15:39 +01:00
Fabian Grünbichler 4536c7a7ed bump version to 4.13-33 2018-01-02 10:04:21 +01:00
Fabian Grünbichler 9e94988ca1 fix #1537: cherry-pick AMD NPT / IOMMU fix 2018-01-02 10:01:56 +01:00
Fabian Grünbichler aac9d58a8e update to Ubuntu-4.13.0-22.25 2018-01-02 09:55:05 +01:00
Fabian Grünbichler f783f68d2c bump version to 4.13-32, bump ABI to 4.13.13-2-pve 2017-12-21 10:22:24 +01:00
Fabian Grünbichler f51d44850e update to Ubuntu-4.13.0-21.24 2017-12-21 09:01:40 +01:00
Fabian Grünbichler bfd0cd3fe0 bump version to 4.13-31, bump ABI to 4.13.13-1-pve 2017-12-11 11:24:58 +01:00
Fabian Grünbichler 8d5d9374b9 update sources to Ubuntu-4.13.0-19.22 2017-12-11 09:54:00 +01:00
Fabian Grünbichler cba3f72b57 bump version to 4.13-30 2017-12-05 13:07:11 +01:00
Fabian Grünbichler 6eb123031d revert igb to 5.3.5.10
because 5.3.5.12 broke JUMBO_FRAMES (again)
2017-12-05 13:05:16 +01:00
Fabian Grünbichler 6749ef5ad2 bump version to 4.13-29, bump ABI to 4.13.8-3-pve 2017-12-04 09:36:58 +01:00
Fabian Grünbichler b42b4a1b96 cherry-pick KVM fix for old CPUs 2017-12-04 09:36:58 +01:00
Fabian Grünbichler 905722fbce cherry-pick / backport IB fixes
see https://forum.proxmox.com/threads/pve-5-1-and-infiniband-issues.37575/
2017-12-04 09:36:19 +01:00
Fabian Grünbichler ddad99c986 cherry-pick vhost perf regression and mem-leak fix 2017-12-04 09:27:58 +01:00
Fabian Grünbichler 9a9f6e04a7 cherry-pick final KVM BSOD fix 2017-12-04 09:27:58 +01:00
Fabian Grünbichler 8345558924 bump version to 4.13-28, bump ABI to 4.13.8-2-pve 2017-11-29 10:23:18 +01:00
Fabian Grünbichler 777ee9fe67 revert mmu changes causing bluescreens 2017-11-29 09:48:40 +01:00
Fabian Grünbichler 350f641023 bump version to 4.13-27, bump ABI to 4.13.8-1-pve 2017-11-22 09:47:25 +01:00
Fabian Grünbichler b409d5b86d add ABI data for 4.13.8-1-pve 2017-11-22 09:47:25 +01:00
Fabian Grünbichler 25c35b26a1 update intel drivers to latest upstream releases 2017-11-22 09:47:25 +01:00
Fabian Grünbichler d060c84f4d drop patches applied upstream 2017-11-17 11:59:22 +01:00
Fabian Grünbichler 0bd7eac29d update sources to Ubuntu-4.13.0-17.20 2017-11-17 11:39:27 +01:00
Fabian Grünbichler 2a26cde588 bump version to 4.13-26 2017-11-06 11:24:17 +01:00
Fabian Grünbichler 5caef38b1c update ZFS/SPL to 0.7.3 2017-11-06 11:23:31 +01:00
Fabian Grünbichler 3572537ff8 bump version to 5.1-25 2017-10-23 09:39:36 +02:00
Fabian Grünbichler da64a9b95a bump version to 4.13-25, bump ABI to 4.13.4-1-pve 2017-10-13 11:33:03 +02:00
Fabian Grünbichler 93216bf67a update abi-previous for ABI bump 2017-10-13 11:33:03 +02:00
Fabian Grünbichler 0e3176e76f fix CVE-2017-12188: nested KVM stack overflow 2017-10-13 11:33:03 +02:00
Fabian Grünbichler 2e38f6f987 update ZFS/SPL to 0.7.2
and switch submodule to simplify patch handling
2017-10-13 11:33:03 +02:00
Fabian Grünbichler dc8dc362e5 update sources to Ubuntu-4.13.0-16.19 2017-10-13 08:53:24 +02:00
Fabian Grünbichler a6dd515e43 build: rename submodules target to submodule 2017-10-13 08:41:42 +02:00
Fabian Grünbichler 2a1d389df6 bump version to 4.13-2, bump ABI to 4.13.3-1 2017-09-27 14:32:08 +02:00
Fabian Grünbichler 13cc2f9603 update abi-previous for ABI bump 2017-09-27 14:32:03 +02:00
Fabian Grünbichler 9c55c348b6 update kernel source to Ubuntu-4.13.0-12.13 2017-09-27 14:00:03 +02:00
Fabian Grünbichler 262ff4236b bump version to 4.13.1-1
kernel and header only, no meta packages
2017-09-27 10:08:57 +02:00
Fabian Grünbichler d84d9cdc47 ZFS/SPL: add 4.13 compat patches 2017-09-27 10:06:33 +02:00
Fabian Grünbichler e03fa66fce add cpuset v2 in v1 cherry-picks 2017-09-27 10:06:33 +02:00
Fabian Grünbichler 2853601c5c update fwlist and abi for 4.13.1-1-pve 2017-09-27 10:06:33 +02:00
Fabian Grünbichler a8ee21761c ixgbe: add 4.13 compat patch 2017-09-26 10:46:35 +02:00
Fabian Grünbichler 628004c405 igb: add 4.12 compat patch 2017-09-26 10:46:35 +02:00
Fabian Grünbichler 8021de509c intel: drop patches which are no longer needed 2017-09-26 10:46:35 +02:00
Fabian Grünbichler 85507ee2c5 update igb to 5.3.5.10 2017-09-26 10:46:35 +02:00
Fabian Grünbichler f3bad6d2b0 update ixgbe to 5.2.3 2017-09-26 10:46:35 +02:00
Fabian Grünbichler b46edee600 update e1000e to 3.3.5.10 2017-09-26 10:46:35 +02:00
Fabian Grünbichler 2f7beffd96 build: move intel NIC patches 2017-09-26 10:46:35 +02:00
Fabian Grünbichler b9e76370ab build: rebase and refactor kernel patches 2017-09-26 10:46:35 +02:00
Fabian Grünbichler 754ba827c1 update ACS override patch for 4.12+
using 330e834488d035e490fdda0b3242118411727bed from
https://aur.archlinux.org/linux-vfio.git
2017-09-26 10:46:35 +02:00
Fabian Grünbichler 6c7fba28d9 drop cpuset patch
to be replaced with backport of cgroup v2 functionality
2017-09-26 10:46:35 +02:00
Fabian Grünbichler a350540ee9 drop patches applied upstream 2017-09-26 10:46:35 +02:00
Fabian Grünbichler 0194915336 build: update for 4.13/artful 2017-09-26 10:38:27 +02:00
Fabian Grünbichler 133c60a505 update submodule for ubuntu artful's 4.13 kernel 2017-09-26 10:38:24 +02:00
70 changed files with 26500 additions and 24142 deletions
+1
View File
@@ -1 +1,2 @@
ubuntu-zesty
*.prepared
+6 -9
View File
@@ -1,9 +1,6 @@
[submodule "submodules/ubuntu-zesty"]
path = submodules/ubuntu-zesty
url = ../mirror_ubuntu-zesty-kernel
[submodule "submodules/zfs-module"]
path = submodules/zfs-module
url = ../mirror_zfs-debian
[submodule "submodules/spl-module"]
path = submodules/spl-module
url = ../mirror_spl-debian
[submodule "submodules/zfsonlinux"]
path = submodules/zfsonlinux
url = ../zfsonlinux
[submodule "submodules/ubuntu-bionic"]
path = submodules/ubuntu-bionic
url = ../mirror_ubuntu-bionic-kernel
@@ -1,51 +0,0 @@
From b776ff7db868804129b9f364825fd4e949a493ee Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Fabian=20Gr=C3=BCnbichler?= <f.gruenbichler@proxmox.com>
Date: Tue, 19 Sep 2017 09:36:43 +0200
Subject: [PATCH] Revert "net: reduce skb_warn_bad_offload() noise"
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
This reverts commit b2504a5dbef3305ef41988ad270b0e8ec289331c.
Signed-off-by: Fabian Grünbichler <f.gruenbichler@proxmox.com>
---
net/core/dev.c | 12 +++---------
1 file changed, 3 insertions(+), 9 deletions(-)
diff --git a/net/core/dev.c b/net/core/dev.c
index 73d5644fa834..7c8959936169 100644
--- a/net/core/dev.c
+++ b/net/core/dev.c
@@ -2702,12 +2702,11 @@ static inline bool skb_needs_check(struct sk_buff *skb, bool tx_path)
struct sk_buff *__skb_gso_segment(struct sk_buff *skb,
netdev_features_t features, bool tx_path)
{
- struct sk_buff *segs;
-
if (unlikely(skb_needs_check(skb, tx_path))) {
int err;
- /* We're going to init ->check field in TCP or UDP header */
+ skb_warn_bad_offload(skb);
+
err = skb_cow_head(skb, 0);
if (err < 0)
return ERR_PTR(err);
@@ -2735,12 +2734,7 @@ struct sk_buff *__skb_gso_segment(struct sk_buff *skb,
skb_reset_mac_header(skb);
skb_reset_mac_len(skb);
- segs = skb_mac_gso_segment(skb, features);
-
- if (unlikely(skb_needs_check(skb, tx_path)))
- skb_warn_bad_offload(skb);
-
- return segs;
+ return skb_mac_gso_segment(skb, features);
}
EXPORT_SYMBOL(__skb_gso_segment);
--
2.11.0
@@ -1,54 +0,0 @@
From 6fa9fc0ce1032710ce017c444b0c66eaf9e77782 Mon Sep 17 00:00:00 2001
From: Pablo Neira Ayuso <pablo@netfilter.org>
Date: Mon, 22 May 2017 00:17:30 +0200
Subject: [PATCH linux] netfilter: nft_set_rbtree: handle re-addition element
after deletion
The existing code selects no next branch to be inspected when
re-inserting an inactive element into the rb-tree, looping endlessly.
This patch restricts the check for active elements to the EEXIST case
only.
Fixes: e701001e7cbe ("netfilter: nft_rbtree: allow adjacent intervals with dynamic updates")
Reported-by: Wolfgang Bumiller <w.bumiller@proxmox.com>
Signed-off-by: Pablo Neira Ayuso <pablo@netfilter.org>
---
net/netfilter/nft_set_rbtree.c | 22 +++++++++++-----------
1 file changed, 11 insertions(+), 11 deletions(-)
diff --git a/net/netfilter/nft_set_rbtree.c b/net/netfilter/nft_set_rbtree.c
index f06f55e..51ff879 100644
--- a/net/netfilter/nft_set_rbtree.c
+++ b/net/netfilter/nft_set_rbtree.c
@@ -118,17 +118,17 @@ static int __nft_rbtree_insert(const struct net *net, const struct nft_set *set,
else if (d > 0)
p = &parent->rb_right;
else {
- if (nft_set_elem_active(&rbe->ext, genmask)) {
- if (nft_rbtree_interval_end(rbe) &&
- !nft_rbtree_interval_end(new))
- p = &parent->rb_left;
- else if (!nft_rbtree_interval_end(rbe) &&
- nft_rbtree_interval_end(new))
- p = &parent->rb_right;
- else {
- *ext = &rbe->ext;
- return -EEXIST;
- }
+ if (nft_rbtree_interval_end(rbe) &&
+ !nft_rbtree_interval_end(new)) {
+ p = &parent->rb_left;
+ } else if (!nft_rbtree_interval_end(rbe) &&
+ nft_rbtree_interval_end(new)) {
+ p = &parent->rb_right;
+ } else if (nft_set_elem_active(&rbe->ext, genmask)) {
+ *ext = &rbe->ext;
+ return -EEXIST;
+ } else {
+ p = &parent->rb_left;
}
}
}
--
2.1.4
@@ -1,43 +0,0 @@
From d747a7a51b00984127a88113cdbbc26f91e9d815 Mon Sep 17 00:00:00 2001
From: WANG Cong <xiyou.wangcong@gmail.com>
Date: Sat, 24 Jun 2017 23:50:30 -0700
Subject: [PATCH] tcp: reset sk_rx_dst in tcp_disconnect()
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
We have to reset the sk->sk_rx_dst when we disconnect a TCP
connection, because otherwise when we re-connect it this
dst reference is simply overridden in tcp_finish_connect().
This fixes a dst leak which leads to a loopback dev refcnt
leak. It is a long-standing bug, Kevin reported a very similar
(if not same) bug before. Thanks to Andrei for providing such
a reliable reproducer which greatly narrows down the problem.
Fixes: 41063e9dd119 ("ipv4: Early TCP socket demux.")
Reported-by: Andrei Vagin <avagin@gmail.com>
Reported-by: Kevin Xu <kaiwen.xu@hulu.com>
Signed-off-by: Cong Wang <xiyou.wangcong@gmail.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
Signed-off-by: Fabian Grünbichler <f.gruenbichler@proxmox.com>
---
net/ipv4/tcp.c | 2 ++
1 file changed, 2 insertions(+)
diff --git a/net/ipv4/tcp.c b/net/ipv4/tcp.c
index b5ea036ca781..40aca7803cf2 100644
--- a/net/ipv4/tcp.c
+++ b/net/ipv4/tcp.c
@@ -2330,6 +2330,8 @@ int tcp_disconnect(struct sock *sk, int flags)
tcp_init_send_head(sk);
memset(&tp->rx_opt, 0, sizeof(tp->rx_opt));
__sk_dst_reset(sk);
+ dst_release(sk->sk_rx_dst);
+ sk->sk_rx_dst = NULL;
tcp_saved_syn_free(tp);
/* Clean up fastopen related fields */
--
2.11.0
+115 -299
View File
@@ -1,14 +1,15 @@
RELEASE=5.0
# also bump pve-kernel-meta if either of MAJ.MIN, PATCHLEVEL or KREL change
KERNEL_MAJ=4
KERNEL_MIN=15
KERNEL_PATCHLEVEL=18
# increment KREL if the ABI changes (abicheck target in debian/rules)
# rebuild packages with new KREL and run 'make abiupdate'
KREL=30
# also update proxmox-ve/changelog if you change KERNEL_VER or KREL
KERNEL_VER=4.10.17
PKGREL=25
# also include firmware of previous version into
# the fw package: fwlist-2.6.32-PREV-pve
KREL=5
PKGREL=58
KERNEL_SRC=ubuntu-zesty
KERNEL_SRC_SUBMODULE=submodules/ubuntu-zesty
KERNEL_MAJMIN=$(KERNEL_MAJ).$(KERNEL_MIN)
KERNEL_VER=$(KERNEL_MAJMIN).$(KERNEL_PATCHLEVEL)
EXTRAVERSION=-${KREL}-pve
KVNAME=${KERNEL_VER}${EXTRAVERSION}
@@ -16,7 +17,6 @@ PACKAGE=pve-kernel-${KVNAME}
HDRPACKAGE=pve-headers-${KVNAME}
ARCH=$(shell dpkg-architecture -qDEB_BUILD_ARCH)
NPROCS=$(shell nproc)
# amd64/x86_64/x86 share the arch subdirectory in the kernel, 'x86' so we need
# a mapping
@@ -26,343 +26,159 @@ KERNEL_ARCH=${ARCH}
endif
GITVERSION:=$(shell git rev-parse HEAD)
CHANGELOG_DATE:=$(shell dpkg-parsechangelog -SDate -lchangelog.Debian)
export SOURCE_DATE_EPOCH ?= $(shell dpkg-parsechangelog -STimestamp -lchangelog.Debian)
SKIPABI=0
TOP=$(shell pwd)
ifeq ($(CC), cc)
GCC=gcc
else
GCC=$(CC)
endif
BUILD_DIR=build
KERNEL_SRC=ubuntu-bionic
KERNEL_SRC_SUBMODULE=submodules/$(KERNEL_SRC)
KERNEL_CFG_ORG=config-${KERNEL_VER}.org
E1000EDIR=e1000e-3.3.5.3
E1000EDIR=e1000e-3.4.1.1
E1000ESRC=${E1000EDIR}.tar.gz
IGBDIR=igb-5.3.5.4
IGBDIR=igb-5.3.5.18
IGBSRC=${IGBDIR}.tar.gz
IXGBEDIR=ixgbe-5.0.4
IXGBESRC=${IXGBEDIR}.tar.gz
ZFSONLINUX_SUBMODULE=submodules/zfsonlinux
SPLDIR=pkg-spl
SPLSRC=submodules/spl-module
ZFSDIR=pkg-zfs
ZFSSRC=submodules/zfs-module
ZFS_KO=zfs.ko
ZFS_KO_REST=zavl.ko znvpair.ko zunicode.ko zcommon.ko zpios.ko icp.ko
ZFS_MODULES=$(ZFS_KO) $(ZFS_KO_REST)
SPL_KO=spl.ko
SPL_KO_REST=splat.ko
SPL_MODULES=$(SPL_KO) $(SPL_KO_REST)
MODULES=modules
MODULE_DIRS=${E1000EDIR} ${IGBDIR} ${SPLDIR} ${ZFSDIR}
# exported to debian/rules via debian/rules.d/dirs.mk
DIRS=KERNEL_SRC E1000EDIR IGBDIR SPLDIR ZFSDIR MODULES
DST_DEB=${PACKAGE}_${KERNEL_VER}-${PKGREL}_${ARCH}.deb
HDR_DEB=${HDRPACKAGE}_${KERNEL_VER}-${PKGREL}_${ARCH}.deb
PVEPKG=proxmox-ve
PVE_DEB=${PVEPKG}_${RELEASE}-${PKGREL}_all.deb
VIRTUALHDRPACKAGE=pve-headers
VIRTUAL_HDR_DEB=${VIRTUALHDRPACKAGE}_${RELEASE}-${PKGREL}_all.deb
LINUX_TOOLS_DEB=linux-tools-$(KERNEL_MAJMIN)_${KERNEL_VER}-${PKGREL}_${ARCH}.deb
LINUX_TOOLS_PKG=linux-tools-4.10
LINUX_TOOLS_DEB=${LINUX_TOOLS_PKG}_${KERNEL_VER}-${PKGREL}_${ARCH}.deb
DEBS=${DST_DEB} ${HDR_DEB} ${PVE_DEB} ${VIRTUAL_HDR_DEB} ${LINUX_TOOLS_DEB}
DEBS=${DST_DEB} ${HDR_DEB} ${LINUX_TOOLS_DEB}
all: check_gcc deb
deb: ${DEBS}
pve: $(PVE_DEB)
${PVE_DEB}: proxmox-ve/control proxmox-ve/postinst ${PVE_RELEASE_KEYS}
rm -rf proxmox-ve/data
mkdir -p proxmox-ve/data/DEBIAN
mkdir -p proxmox-ve/data/usr/share/doc/${PVEPKG}/
mkdir -p proxmox-ve/data/etc/apt/trusted.gpg.d
install -m 0644 proxmox-ve/proxmox-release-5.x.pubkey proxmox-ve/data/etc/apt/trusted.gpg.d/proxmox-ve-release-5.x.gpg
sed -e 's/@KVNAME@/${KVNAME}/' -e 's/@KERNEL_VER@/${KERNEL_VER}/' -e 's/@RELEASE@/${RELEASE}/' -e 's/@PKGREL@/${PKGREL}/' <proxmox-ve/control >proxmox-ve/data/DEBIAN/control
sed -e 's/@KVNAME@/${KVNAME}/' <proxmox-ve/postinst >proxmox-ve/data/DEBIAN/postinst
chmod 0755 proxmox-ve/data/DEBIAN/postinst
install -m 0755 proxmox-ve/postrm proxmox-ve/data/DEBIAN/postrm
echo "git clone git://git.proxmox.com/git/pve-kernel.git\\ngit checkout ${GITVERSION}" > proxmox-ve/data/usr/share/doc/${PVEPKG}/SOURCE
install -m 0644 proxmox-ve/copyright proxmox-ve/data/usr/share/doc/${PVEPKG}
install -m 0644 proxmox-ve/changelog.Debian proxmox-ve/data/usr/share/doc/${PVEPKG}
gzip -n --best proxmox-ve/data/usr/share/doc/${PVEPKG}/changelog.Debian
dpkg-deb --build proxmox-ve/data ${PVE_DEB}
check_gcc:
$(GCC) --version|grep "6\.3" || false
@$(GCC) -Werror -mindirect-branch=thunk-extern -mindirect-branch-register -c -x c /dev/null -o check_gcc.o \
|| ( rm -f check_gcc.o; \
echo "Please install gcc-6 packages with indirect thunk / RETPOLINE support"; \
false)
@rm -f check_gcc.o
pve-headers: $(VIRTUAL_HDR_DEB)
${VIRTUAL_HDR_DEB}: proxmox-ve/pve-headers.control
rm -rf pve-headers/data
mkdir -p pve-headers/data/DEBIAN
mkdir -p pve-headers/data/usr/share/doc/${VIRTUALHDRPACKAGE}/
sed -e 's/@KVNAME@/${KVNAME}/' -e 's/@KERNEL_VER@/${KERNEL_VER}/' -e 's/@RELEASE@/${RELEASE}/' -e 's/@PKGREL@/${PKGREL}/' <proxmox-ve/pve-headers.control >pve-headers/data/DEBIAN/control
echo "git clone git://git.proxmox.com/git/pve-kernel.git\\ngit checkout ${GITVERSION}" > pve-headers/data/usr/share/doc/${VIRTUALHDRPACKAGE}/SOURCE
install -m 0644 proxmox-ve/copyright pve-headers/data/usr/share/doc/${VIRTUALHDRPACKAGE}
install -m 0644 proxmox-ve/changelog.Debian pve-headers/data/usr/share/doc/${VIRTUALHDRPACKAGE}
gzip -n --best pve-headers/data/usr/share/doc/${VIRTUALHDRPACKAGE}/changelog.Debian
dpkg-deb --build pve-headers/data ${VIRTUAL_HDR_DEB}
check_gcc:
ifeq ($(CC), cc)
gcc --version|grep "6\.3" || false
else
$(CC) --version|grep "6\.3" || false
endif
${DST_DEB}: data control.in prerm.in postinst.in postrm.in copyright changelog.Debian | fwcheck abicheck
mkdir -p data/DEBIAN
sed -e 's/@KERNEL_VER@/${KERNEL_VER}/' -e 's/@KVNAME@/${KVNAME}/' -e 's/@PKGREL@/${PKGREL}/' -e 's/@ARCH@/${ARCH}/' <control.in >data/DEBIAN/control
sed -e 's/@@KVNAME@@/${KVNAME}/g' <prerm.in >data/DEBIAN/prerm
chmod 0755 data/DEBIAN/prerm
sed -e 's/@@KVNAME@@/${KVNAME}/g' <postinst.in >data/DEBIAN/postinst
chmod 0755 data/DEBIAN/postinst
sed -e 's/@@KVNAME@@/${KVNAME}/g' <postrm.in >data/DEBIAN/postrm
chmod 0755 data/DEBIAN/postrm
install -D -m 644 copyright data/usr/share/doc/${PACKAGE}/copyright
install -D -m 644 changelog.Debian data/usr/share/doc/${PACKAGE}/changelog.Debian
echo "git clone git://git.proxmox.com/git/pve-kernel.git\\ngit checkout ${GITVERSION}" > data/usr/share/doc/${PACKAGE}/SOURCE
gzip -n -f --best data/usr/share/doc/${PACKAGE}/changelog.Debian
rm -f data/lib/modules/${KVNAME}/source
rm -f data/lib/modules/${KVNAME}/build
dpkg-deb --build data ${DST_DEB}
${LINUX_TOOLS_DEB} ${HDR_DEB}: ${DST_DEB}
${DST_DEB}: ${BUILD_DIR}.prepared
cd ${BUILD_DIR}; dpkg-buildpackage --jobs=auto -b -uc -us
lintian ${DST_DEB}
LINUX_TOOLS_DH_LIST=strip installchangelogs installdocs compress shlibdeps gencontrol md5sums builddeb
${LINUX_TOOLS_DEB}: .compile_mark control.tools changelog.Debian copyright
rm -rf linux-tools ${LINUX_TOOLS_DEB}
mkdir -p linux-tools/debian
cp control.tools linux-tools/debian/control
echo 9 > linux-tools/debian/compat
cp changelog.Debian linux-tools/debian/changelog
cp copyright linux-tools/debian
mkdir -p linux-tools/debian/linux-tools-4.10/usr/bin
install -m 0755 ${KERNEL_SRC}/tools/perf/perf linux-tools/debian/linux-tools-4.10/usr/bin/perf_4.10
cd linux-tools; for i in ${LINUX_TOOLS_DH_LIST}; do dh_$$i; done
#lintian ${HDR_DEB}
lintian ${LINUX_TOOLS_DEB}
fwlist-${KVNAME}: data
./find-firmware.pl data/lib/modules/${KVNAME} >fwlist.tmp
mv fwlist.tmp $@
.PHONY: fwcheck
fwcheck: fwlist-${KVNAME} fwlist-previous
@echo "checking fwlist for changes since last built firmware package.."
@echo "if this check fails, add fwlist-${KVNAME} to the pve-firmware repository and upload a new firmware package together with the ${KVNAME} kernel"
sort fwlist-previous | uniq > fwlist-previous.sorted
sort fwlist-${KVNAME} | uniq > fwlist-${KVNAME}.sorted
diff -up -N fwlist-previous.sorted fwlist-${KVNAME}.sorted > fwlist.diff
rm fwlist.diff fwlist-previous.sorted fwlist-${KVNAME}.sorted
@echo "done, no need to rebuild pve-firmware"
abi-${KVNAME}: .compile_mark
sed -e 's/^\(.\+\)[[:space:]]\+\(.\+\)[[:space:]]\(.\+\)$$/\3 \2 \1/' ${KERNEL_SRC}/Module.symvers | sort > abi-${KVNAME}
.PHONY: abicheck
abicheck: abi-${KVNAME} abi-previous abi-blacklist
./abi-check abi-${KVNAME} abi-previous ${SKIPABI}
data: .compile_mark igb.ko ixgbe.ko e1000e.ko ${SPL_MODULES} ${ZFS_MODULES}
rm -rf data tmp; mkdir -p tmp/lib/modules/${KVNAME}
mkdir tmp/boot
install -m 644 ${KERNEL_SRC}/.config tmp/boot/config-${KVNAME}
install -m 644 ${KERNEL_SRC}/System.map tmp/boot/System.map-${KVNAME}
install -m 644 ${KERNEL_SRC}/arch/${KERNEL_ARCH}/boot/bzImage tmp/boot/vmlinuz-${KVNAME}
cd ${KERNEL_SRC}; make INSTALL_MOD_PATH=../tmp/ modules_install
## install latest ibg driver
install -m 644 igb.ko tmp/lib/modules/${KVNAME}/kernel/drivers/net/ethernet/intel/igb/
# install latest ixgbe driver
install -m 644 ixgbe.ko tmp/lib/modules/${KVNAME}/kernel/drivers/net/ethernet/intel/ixgbe/
# install latest e1000e driver
install -m 644 e1000e.ko tmp/lib/modules/${KVNAME}/kernel/drivers/net/ethernet/intel/e1000e/
# install zfs drivers
install -d -m 0755 tmp/lib/modules/${KVNAME}/zfs
install -m 644 ${SPL_MODULES} ${ZFS_MODULES} tmp/lib/modules/${KVNAME}/zfs
# remove firmware
rm -rf tmp/lib/firmware
# strip debug info
find tmp/lib/modules -name \*.ko -print | while read f ; do strip --strip-debug "$$f"; done
# finalize
/sbin/depmod -b tmp/ ${KVNAME}
# Autogenerate blacklist for watchdog devices (see README)
install -m 0755 -d tmp/lib/modprobe.d
ls tmp/lib/modules/${KVNAME}/kernel/drivers/watchdog/ > watchdog-blacklist.tmp
echo ipmi_watchdog.ko >> watchdog-blacklist.tmp
cat watchdog-blacklist.tmp|sed -e 's/^/blacklist /' -e 's/.ko$$//'|sort -u > tmp/lib/modprobe.d/blacklist_${PACKAGE}.conf
mv tmp data
PVE_CONFIG_OPTS= \
-m INTEL_MEI_WDT \
-d CONFIG_SND_PCM_OSS \
-e CONFIG_TRANSPARENT_HUGEPAGE_MADVISE \
-d CONFIG_TRANSPARENT_HUGEPAGE_ALWAYS \
-m CONFIG_CEPH_FS \
-m CONFIG_BLK_DEV_NBD \
-m CONFIG_BLK_DEV_RBD \
-m CONFIG_BCACHE \
-m CONFIG_JFS_FS \
-m CONFIG_HFS_FS \
-m CONFIG_HFSPLUS_FS \
-e CONFIG_BRIDGE \
-e CONFIG_BRIDGE_NETFILTER \
-e CONFIG_BLK_DEV_SD \
-e CONFIG_BLK_DEV_SR \
-e CONFIG_BLK_DEV_DM \
-e CONFIG_BLK_DEV_NVME \
-d CONFIG_INPUT_EVBUG \
-d CONFIG_CPU_FREQ_DEFAULT_GOV_ONDEMAND \
-e CONFIG_CPU_FREQ_DEFAULT_GOV_PERFORMANCE \
-d CONFIG_MODULE_SIG \
-d CONFIG_MEMCG_DISABLED \
-e CONFIG_MEMCG_SWAP_ENABLED \
-e CONFIG_MEMCG_KMEM \
-d CONFIG_DEFAULT_CFQ \
-e CONFIG_DEFAULT_DEADLINE \
-e CONFIG_MODVERSIONS \
-d CONFIG_DEFAULT_SECURITY_DAC \
-e CONFIG_DEFAULT_SECURITY_APPARMOR \
--set-str CONFIG_DEFAULT_SECURITY apparmor
.compile_mark: ${KERNEL_SRC}/README ${KERNEL_CFG_ORG}
[ ! -e /lib/modules/${KVNAME}/build ] || (echo "please remove /lib/modules/${KVNAME}/build" && false)
cp ${KERNEL_CFG_ORG} ${KERNEL_SRC}/.config
cd ${KERNEL_SRC}; ./scripts/config ${PVE_CONFIG_OPTS}
cd ${KERNEL_SRC}; make oldconfig
cd ${KERNEL_SRC}; make KBUILD_BUILD_VERSION_TIMESTAMP="PVE ${KERNEL_VER}-${PKGREL} (${CHANGELOG_DATE})" -j ${NPROCS}
make -C ${KERNEL_SRC}/tools/perf prefix=/usr HAVE_CPLUS_DEMANGLE=1 NO_LIBPYTHON=1 NO_LIBPERL=1 NO_LIBCRYPTO=1 PYTHON=python2.7
make -C ${KERNEL_SRC}/tools/perf man
${BUILD_DIR}.prepared: $(addsuffix .prepared,${KERNEL_SRC} ${MODULES} debian)
cp -a fwlist-previous ${BUILD_DIR}/
cp -a abi-prev-* ${BUILD_DIR}/
cp -a abi-blacklist ${BUILD_DIR}/
touch $@
${KERNEL_CFG_ORG}: ${KERNEL_SRC}/README
${KERNEL_SRC}/README: ${KERNEL_SRC_SUBMODULE} | submodule
rm -rf ${KERNEL_SRC}
cp -a ${KERNEL_SRC_SUBMODULE} ${KERNEL_SRC}
cat ${KERNEL_SRC}/debian.master/config/config.common.ubuntu ${KERNEL_SRC}/debian.master/config/${ARCH}/config.common.${ARCH} ${KERNEL_SRC}/debian.master/config/${ARCH}/config.flavour.generic > ${KERNEL_CFG_ORG}
cd ${KERNEL_SRC}; patch -p1 < ../uname-version-timestamp.patch
cd ${KERNEL_SRC}; patch -p1 <../bridge-patch.diff
#cd ${KERNEL_SRC}; patch -p1 <../bridge-forward-ipv6-neighbor-solicitation.patch
#cd ${KERNEL_SRC}; patch -p1 <../add-empty-ndo_poll_controller-to-veth.patch
cd ${KERNEL_SRC}; patch -p1 <../override_for_missing_acs_capabilities.patch
#cd ${KERNEL_SRC}; patch -p1 <../vhost-net-extend-device-allocation-to-vmalloc.patch
cd ${KERNEL_SRC}; patch -p1 < ../kvm-dynamic-halt-polling-disable-default.patch
cd ${KERNEL_SRC}; patch -p1 < ../cgroup-cpuset-add-cpuset.remap_cpus.patch
cd ${KERNEL_SRC}; patch -p1 < ../0001-netfilter-nft_set_rbtree-handle-re-addition-element-.patch # DoS from within (unpriv) containers
cd ${KERNEL_SRC}; patch -p1 < ../0001-tcp-reset-sk_rx_dst-in-tcp_disconnect.patch
cd ${KERNEL_SRC}; patch -p1 < ../0001-Revert-net-reduce-skb_warn_bad_offload-noise.patch
sed -i ${KERNEL_SRC}/Makefile -e 's/^EXTRAVERSION.*$$/EXTRAVERSION=${EXTRAVERSION}/'
debian.prepared: debian
rm -rf ${BUILD_DIR}/debian
mkdir -p ${BUILD_DIR}
cp -a debian ${BUILD_DIR}/debian
echo "git clone git://git.proxmox.com/git/pve-kernel.git\\ngit checkout ${GITVERSION}" > ${BUILD_DIR}/debian/SOURCE
@$(foreach dir, ${DIRS},echo "${dir}=${${dir}}" >> ${BUILD_DIR}/debian/rules.d/env.mk;)
echo "KVNAME=${KVNAME}" >> ${BUILD_DIR}/debian/rules.d/env.mk
echo "KERNEL_MAJMIN=${KERNEL_MAJMIN}" >> ${BUILD_DIR}/debian/rules.d/env.mk
cd ${BUILD_DIR}; debian/rules debian/control
touch $@
e1000e.ko e1000e: .compile_mark ${E1000ESRC}
rm -rf ${E1000EDIR}
tar xf ${E1000ESRC}
[ ! -e /lib/modules/${KVNAME}/build ] || (echo "please remove /lib/modules/${KVNAME}/build" && false)
cd ${E1000EDIR}; patch -p1 < ../intel-module-gcc6-compat.patch
cd ${E1000EDIR}; patch -p1 < ../e1000e_4.10_compat.patch
cd ${E1000EDIR}; patch -p1 < ../e1000e_4.10_max-mtu.patch
cd ${E1000EDIR}/src; make BUILD_KERNEL=${KVNAME} KSRC=${TOP}/${KERNEL_SRC}
cp ${E1000EDIR}/src/e1000e.ko e1000e.ko
${KERNEL_SRC}.prepared: ${KERNEL_SRC_SUBMODULE} | submodule
rm -rf ${BUILD_DIR}/${KERNEL_SRC} $@
mkdir -p ${BUILD_DIR}
cp -a ${KERNEL_SRC_SUBMODULE} ${BUILD_DIR}/${KERNEL_SRC}
# TODO: split for archs, track and diff in our repository?
cat ${BUILD_DIR}/${KERNEL_SRC}/debian.master/config/config.common.ubuntu ${BUILD_DIR}/${KERNEL_SRC}/debian.master/config/${ARCH}/config.common.${ARCH} ${BUILD_DIR}/${KERNEL_SRC}/debian.master/config/${ARCH}/config.flavour.generic > ${KERNEL_CFG_ORG}
cp ${KERNEL_CFG_ORG} ${BUILD_DIR}/${KERNEL_SRC}/.config
sed -i ${BUILD_DIR}/${KERNEL_SRC}/Makefile -e 's/^EXTRAVERSION.*$$/EXTRAVERSION=${EXTRAVERSION}/'
rm -rf ${BUILD_DIR}/${KERNEL_SRC}/debian ${BUILD_DIR}/${KERNEL_SRC}/debian.master
set -e; cd ${BUILD_DIR}/${KERNEL_SRC}; for patch in ../../patches/kernel/*.patch; do echo "applying patch '$$patch'" && patch -p1 < $${patch}; done
touch $@
igb.ko igb: .compile_mark ${IGBSRC}
rm -rf ${IGBDIR}
tar xf ${IGBSRC}
[ ! -e /lib/modules/${KVNAME}/build ] || (echo "please remove /lib/modules/${KVNAME}/build" && false)
cd ${IGBDIR}; patch -p1 < ../intel-module-gcc6-compat.patch
cd ${IGBDIR}; patch -p1 < ../igb_4.9_compat.patch
cd ${IGBDIR}; patch -p1 < ../igb_4.10_compat.patch
cd ${IGBDIR}; patch -p1 < ../igb_4.10_max-mtu.patch
cd ${IGBDIR}/src; make BUILD_KERNEL=${KVNAME} KSRC=${TOP}/${KERNEL_SRC}
cp ${IGBDIR}/src/igb.ko igb.ko
${MODULES}.prepared: $(addsuffix .prepared,${MODULE_DIRS})
touch $@
ixgbe.ko ixgbe: .compile_mark ${IXGBESRC}
rm -rf ${IXGBEDIR}
tar xf ${IXGBESRC}
[ ! -e /lib/modules/${KVNAME}/build ] || (echo "please remove /lib/modules/${KVNAME}/build" && false)
cd ${IXGBEDIR}; patch -p1 < ../ixgbe_4.10_compat.patch
cd ${IXGBEDIR}; patch -p1 < ../ixgbe_4.10_max-mtu.patch
cd ${IXGBEDIR}/src; make CFLAGS_EXTRA="-DIXGBE_NO_LRO" BUILD_KERNEL=${KVNAME} KSRC=${TOP}/${KERNEL_SRC}
cp ${IXGBEDIR}/src/ixgbe.ko ixgbe.ko
${E1000EDIR}.prepared: ${E1000ESRC}
rm -rf ${BUILD_DIR}/${MODULES}/${E1000EDIR} $@
mkdir -p ${BUILD_DIR}/${MODULES}/${E1000EDIR}
tar --strip-components=1 -C ${BUILD_DIR}/${MODULES}/${E1000EDIR} -xf ${E1000ESRC}
cd ${BUILD_DIR}/${MODULES}/${E1000EDIR}; patch -p1 < ../../../patches/intel/intel-module-gcc6-compat.patch
cd ${BUILD_DIR}/${MODULES}/${E1000EDIR}; patch -p1 < ../../../patches/intel/e1000e/e1000e_4.10_max-mtu.patch
cd ${BUILD_DIR}/${MODULES}/${E1000EDIR}; patch -p1 < ../../../patches/intel/e1000e/e1000e_4.15-new-timer.patch
touch $@
$(SPL_KO_REST): $(SPL_KO)
$(SPL_KO): .compile_mark ${SPLSRC}
rm -rf ${SPLDIR}
rsync -ra ${SPLSRC}/ ${SPLDIR}
[ ! -e /lib/modules/${KVNAME}/build ] || (echo "please remove /lib/modules/${KVNAME}/build" && false)
cd ${SPLDIR}; ./autogen.sh
cd ${SPLDIR}; ./configure --with-config=kernel --with-linux=${TOP}/${KERNEL_SRC} --with-linux-obj=${TOP}/${KERNEL_SRC}
cd ${SPLDIR}; make
cp ${SPLDIR}/module/spl/spl.ko spl.ko
cp ${SPLDIR}/module/splat/splat.ko splat.ko
${IGBDIR}.prepared: ${IGBSRC}
rm -rf ${BUILD_DIR}/${MODULES}/${IGBDIR} $@
mkdir -p ${BUILD_DIR}/${MODULES}/${IGBDIR}
tar --strip-components=1 -C ${BUILD_DIR}/${MODULES}/${IGBDIR} -xf ${IGBSRC}
cd ${BUILD_DIR}/${MODULES}/${IGBDIR}; patch -p1 < ../../../patches/intel/igb/igb_4.15_mtu.patch
touch $@
$(ZFS_KO_REST): $(ZFS_KO)
$(ZFS_KO): .compile_mark ${ZFSSRC}
rm -rf ${ZFSDIR}
rsync -ra ${ZFSSRC}/ ${ZFSDIR}
[ ! -e /lib/modules/${KVNAME}/build ] || (echo "please remove /lib/modules/${KVNAME}/build" && false)
cd ${ZFSDIR}; ./autogen.sh
cd ${ZFSDIR}; ./configure --with-spl=${TOP}/${SPLDIR} --with-spl-obj=${TOP}/${SPLDIR} --with-config=kernel --with-linux=${TOP}/${KERNEL_SRC} --with-linux-obj=${TOP}/${KERNEL_SRC}
cd ${ZFSDIR}; make
cp ${ZFSDIR}/module/zfs/zfs.ko zfs.ko
cp ${ZFSDIR}/module/avl/zavl.ko zavl.ko
cp ${ZFSDIR}/module/nvpair/znvpair.ko znvpair.ko
cp ${ZFSDIR}/module/unicode/zunicode.ko zunicode.ko
cp ${ZFSDIR}/module/zcommon/zcommon.ko zcommon.ko
cp ${ZFSDIR}/module/zpios/zpios.ko zpios.ko
cp ${ZFSDIR}/module/icp/icp.ko icp.ko
headers_tmp := $(CURDIR)/tmp-headers
headers_dir := $(headers_tmp)/usr/src/linux-headers-${KVNAME}
hdr: $(HDR_DEB)
${HDR_DEB}: .compile_mark headers-control.in headers-postinst.in
rm -rf $(headers_tmp)
install -d $(headers_tmp)/DEBIAN $(headers_dir)/include/
sed -e 's/@KERNEL_VER@/${KERNEL_VER}/' -e 's/@KVNAME@/${KVNAME}/' -e 's/@PKGREL@/${PKGREL}/' -e 's/@ARCH@/${ARCH}/' <headers-control.in >$(headers_tmp)/DEBIAN/control
sed -e 's/@@KVNAME@@/${KVNAME}/g' <headers-postinst.in >$(headers_tmp)/DEBIAN/postinst
chmod 0755 $(headers_tmp)/DEBIAN/postinst
install -D -m 644 copyright $(headers_tmp)/usr/share/doc/${HDRPACKAGE}/copyright
install -D -m 644 changelog.Debian $(headers_tmp)/usr/share/doc/${HDRPACKAGE}/changelog.Debian
echo "git clone git://git.proxmox.com/git/pve-kernel.git\\ngit checkout ${GITVERSION}" > $(headers_tmp)/usr/share/doc/${HDRPACKAGE}/SOURCE
gzip -n -f --best $(headers_tmp)/usr/share/doc/${HDRPACKAGE}/changelog.Debian
install -m 0644 ${KERNEL_SRC}/.config $(headers_dir)
install -m 0644 ${KERNEL_SRC}/Module.symvers $(headers_dir)
cd ${KERNEL_SRC}; find . -path './debian/*' -prune -o -path './include/*' -prune -o -path './Documentation' -prune \
-o -path './scripts' -prune -o -type f \
\( -name 'Makefile*' -o -name 'Kconfig*' -o -name 'Kbuild*' -o \
-name '*.sh' -o -name '*.pl' \) \
-print | cpio -pd --preserve-modification-time $(headers_dir)
cd ${KERNEL_SRC}; cp -a include scripts $(headers_dir)
cd ${KERNEL_SRC}; (find arch/${KERNEL_ARCH} -name include -type d -print | \
xargs -n1 -i: find : -type f) | \
cpio -pd --preserve-modification-time $(headers_dir)
mkdir -p ${headers_tmp}/lib/modules/${KVNAME}
ln -sf /usr/src/linux-headers-${KVNAME} ${headers_tmp}/lib/modules/${KVNAME}/build
dpkg-deb --build $(headers_tmp) ${HDR_DEB}
#lintian ${HDR_DEB}
${SPLDIR}.prepared: ${ZFSDIR}.prepared
${ZFSDIR}.prepared: ${ZFSONLINUX_SUBMODULE}
rm -rf ${BUILD_DIR}/${MODULES}/${SPLDIR} ${BUILD_DIR}/${MODULES}/${ZFSDIR} ${BUILD_DIR}/${MODULES}/tmp $@
mkdir -p ${BUILD_DIR}/${MODULES}/tmp
cp -a ${ZFSONLINUX_SUBMODULE}/* ${BUILD_DIR}/${MODULES}/tmp
cd ${BUILD_DIR}/${MODULES}/tmp; make kernel
rm -rf ${BUILD_DIR}/${MODULES}/tmp
touch ${ZFSDIR}.prepared ${SPLDIR}.prepared
.PHONY: upload
upload: ${DEBS}
tar cf - ${DEBS}|ssh repoman@repo.proxmox.com -- upload --product pve --dist stretch --arch ${ARCH}
tar cf - ${DEBS}|ssh -X repoman@repo.proxmox.com -- upload --product pve,pmg --dist stretch --arch ${ARCH}
.PHONY: distclean
distclean: clean
rm -rf linux-firmware.git dvb-firmware.git ${KERNEL_SRC}.org
git submodule deinit --all
# upgrade to current master
.PHONY: update_modules
update_modules: submodule
git submodule foreach 'git pull --ff-only origin master'
cd ${ZFSONLINUX_SUBMODULE}; git pull --ff-only origin master
# make sure submodules were initialized
.PHONY: submodule
submodule:
test -f "${KERNEL_SRC_SUBMODULE}/README" || git submodule update --init
test -f "${ZFSSRC}/debian/changelog" || git submodule update --init
test -f "${SPLSRC}/debian/changelog" || git submodule update --init
test -f "${KERNEL_SRC_SUBMODULE}/README" || git submodule update --init ${KERNEL_SRC_SUBMODULE}
test -f "${ZFSONLINUX_SUBMODULE}/Makefile" || git submodule update --init ${ZFSONLINUX_SUBMODULE}
(test -f "${ZFSONLINUX_SUBMODULE}/zfs/upstream/README.markdown" && test -f "${ZFSONLINUX_SUBMODULE}/spl/upstream/README.markdown") || (cd ${ZFSONLINUX_SUBMODULE}; git submodule update --init)
# call after ABI bump with header deb in working directory
.PHONY: abiupdate
abiupdate: abi-prev-${KVNAME}
abi-prev-${KVNAME}: abi-tmp-${KVNAME}
ifneq ($(strip $(shell git status --untracked-files=no --porcelain -z)),)
@echo "working directory unclean, aborting!"
@false
else
git rm "abi-prev-*"
mv $< $@
git add $@
git commit -s -m "update ABI file for ${KVNAME}" -m "(generated with debian/scripts/abi-generate)"
@echo "update abi-prev-${KVNAME} committed!"
endif
abi-tmp-${KVNAME}:
@ test -e ${HDR_DEB} || (echo "need ${HDR_DEB} to extract ABI data!" && false)
debian/scripts/abi-generate ${HDR_DEB} $@ ${KVNAME} 1
.PHONY: clean
clean:
rm -rf *~ .compile_mark watchdog-blacklist.tmp ${KERNEL_CFG_ORG} ${KERNEL_SRC} ${KERNEL_SRC}.tmp ${KERNEL_CFG_ORG} ${KERNEL_SRC}.org orig tmp data proxmox-ve/data *.deb ${headers_tmp} fwdata fwlist.tmp *.ko abi-${KVNAME} fwlist-${KVNAME} ${ZFSDIR} ${SPLDIR} ${SPL_MODULES} ${ZFS_MODULES} hpsa.ko ${HPSADIR} ${DRBDDIR} drbd-9.0 ${IGBDIR} igb.ko ${IXGBEDIR} ixgbe.ko ${E1000EDIR} e1000e.ko linux-tools ${LINUX_TOOLS_DEB}
rm -rf *~ build *.prepared ${KERNEL_CFG_ORG}
rm -f *.deb *.changes *.buildinfo
+80 -53
View File
@@ -3,7 +3,7 @@ KERNEL SOURCE:
We currently use the Ubuntu kernel sources, available from:
http://kernel.ubuntu.com/git/ubuntu/ubuntu-xenial.git/
http://kernel.ubuntu.com/git/ubuntu/ubuntu-bionic.git/
Ubuntu will maintain those kernels till:
@@ -15,14 +15,7 @@ Additional/Updated Modules:
- include latest e1000e driver from intel/sourceforge
- include latest ixgbe driver from intel/sourceforge
- include latest igb driver from intel/sourceforge
# Note: hpsa does not compile with kernel 3.19.8
#- include latest HPSA driver (HP Smart Array)
#
# * http://sourceforge.net/projects/cciss/
- include latest igb driver from intel/sourceforge
- include native OpenZFS filesystem kernel modules for Linux
@@ -30,43 +23,76 @@ Additional/Updated Modules:
For licensing questions, see: http://open-zfs.org/wiki/Talk:FAQ
- include latest DRBD 9 driver, see http://drbd.linbit.com/home/what-is-drbd/
FIRMWARE:
SUBMODULE
=========
We create our own firmware package, which includes the firmware for
all proxmox-ve kernels. So far this include
We track the current upstream repository as submodule. Besides obvious
advantages over tracking binary tar archives this also has some implications.
pve-kernel-2.6.18
pve-kernel-2.6.24
pve-kernel-2.6.32
pve-kernel-3.10.0
pve-kernel-3.19.0
For building the submodule directory gets copied into build/ and a few patches
get applied with the `patch` tool. From a git point-of-view, the copied
directory remains clean even with extra patches applied since it does not
contain a .git directory, but a reference to the (still pristine) submodule:
We use 'find-firmware.pl' to extract lists of required firmeware
files. The script 'assemble-firmware.pl' is used to read those lists
and copy the files from various source directory into a target
directory.
$ cat build/ubuntu-bionic/.git
We do not include firmeware for some wireless HW when there is a
separate debian package for that, for example:
If you mistakenly cloned the upstream repo as "normal" clone (not via the
submodule mechanics) this means that you have a real .git directory with its
independent objects and tracking info when copying for building, thus git
operates on the copied directory - and "sees" that it was dirtied by `patch`,
and thus the kernel buildsystem sees this too and will add a '+' to the version
as a result. This changes the output directories for modules and other build
artefacts and let's then the build fail on packaging.
zd1211-firmware
atmel-firmware
bluez-firmware
So always ensure that you really checked it out as submodule, not as full
"normal" clone. You can also explicitly set the LOCALVERSION variable to
undefined with: `export LOCALVERSION= but that should only be done for test
builds.
RELATED PACKAGES:
=================
proxmox-ve
----------
top level meta package, depends on current default kernel series meta package.
git clone git://git.proxmox.com/git/proxmox-ve.git
pve-kernel-meta
---------------
depends on latest kernel and header package within a certain kernel series,
e.g., pve-kernel-4.15 / pve-headers-4.15
git clone git://git.proxmox.com/git/pve-kernel-meta.git
pve-firmware
------------
contains the firmware for all released PVE kernels.
git clone git://git.proxmox.com/git/pve-firmware.git
PATCHES:
--------
NOTES:
======
bridge-patch.diff: Avoid bridge problems with changing MAC
see also: http://forum.openvz.org/index.php?t=msg&th=5291
ABI versions, package versions and package name:
------------------------------------------------
Behaviour after 2.6.27 has changed slighly - after setting mac address
of bridge device, then address won't change. So we could omit
that patch, requiring to set hwaddress in /etc/network/interfaces.
We follow debian's versioning w.r.t ABI changes:
https://kernel-team.pages.debian.net/kernel-handbook/ch-versions.html
https://wiki.debian.org/DebianKernelABIChanges
The debian/rules file has a target comparing the build kernel's ABI against the
version stored in the repository and indicates when an ABI bump is necessary.
An ABI bump within one upstream version consists of incrementing the KREL
variable in the Makefile, rebuilding the packages and running 'make abiupdate'
(the 'abiupdate' target in 'Makefile' contains the steps for consistently
updating the repository).
Watchdog blacklist
------------------
@@ -80,14 +106,20 @@ Additional information
----------------------
We use the default configuration provided by Ubuntu, and apply
the following modification:
the following modifications:
see Makefile (PVE_CONFIG_OPTS)
NOTE: For the exact and current list see debian/rules (PVE_CONFIG_OPTS)
- enable INTEL_MEI_WDT=m (to allow disabling via patch)
- disable CONFIG_SND_PCM_OSS (enabled by default in Ubuntu, not needed)
- switch CONFIG_TRANSPARENT_HUGEPAGE to MADVISE from ALWAYS
- enable CONFIG_CEPH_FS=m (request from user)
- enable common CONFIG_BLK_DEV_XXX to avoid hardware detection
problems (udev, undate-initramfs have serious problems without that)
problems (udev, update-initramfs have serious problems without that)
CONFIG_BLK_DEV_SD=y
CONFIG_BLK_DEV_SR=y
@@ -102,20 +134,13 @@ see Makefile (PVE_CONFIG_OPTS)
CONFIG_BLK_DEV_NBD=m
CONFIG_BLK_DEV_RBD=m
- set LOOP_MIN_COUNT to 8 (debian defaults)
CONFIG_BLK_DEV_LOOP_MIN_COUNT=8
- enable IBM JFS file system as module
- disable module signatures (CONFIG_MODULE_SIG)
- enable IBM JFS file system
enable it as requested by users (bug #64)
This is disabled in RHEL kernel for no real reason, so we enable
it as requested by users (bug #64)
- enable apple HFS and HFSPLUS as module
- enable apple HFS and HFSPLUS
This is disabled in RHEL kernel for no real reason, so we enable
it as requested by users
enable it as requested by users
- enable CONFIG_BCACHE=m (requested by user)
@@ -127,7 +152,7 @@ see Makefile (PVE_CONFIG_OPTS)
- enable CONFIG_DEFAULT_SECURITY_APPARMOR
We need this for lxc
- set CONFIG_CPU_FREQ_DEFAULT_GOV_PERFORMANCE=y
because if not set, it can give some dynamic memory or cpu frequencies
@@ -145,8 +170,10 @@ see Makefile (PVE_CONFIG_OPTS)
Module evbug is not blacklisted on debian, so we simply disable it
to avoid key-event logs (which is a big security problem)
Testing final kernel with kvm
-----------------------------
- enable CONFIG_MODVERSIONS (needed for ABI tracking)
kvm -kernel data/boot/vmlinuz-3.19.8-1-pve -initrd initrd.img-3.19.8-1-pve -append "vga=791 video=vesafb:ywrap,mtrr" /dev/zero
- switch default UNWINDER to FRAME_POINTER
the recently introduced ORC_UNWINDER is not 100% stable yet, especially in combination with ZFS
- enable CONFIG_PAGE_TABLE_ISOLATION (Meltdown mitigation)
File diff suppressed because it is too large Load Diff
-21375
View File
File diff suppressed because it is too large Load Diff
-14
View File
@@ -1,14 +0,0 @@
--- linux-2.6-3.10.0/net/bridge/br_stp_if.c.orig 2013-11-26 22:20:20.000000000 +0100
+++ linux-2.6-3.10.0/net/bridge/br_stp_if.c 2013-12-17 08:42:10.004428223 +0100
@@ -228,10 +228,7 @@
return false;
list_for_each_entry(p, &br->port_list, list) {
- if (addr == br_mac_zero ||
- memcmp(p->dev->dev_addr, addr, ETH_ALEN) < 0)
- addr = p->dev->dev_addr;
-
+ addr = p->dev->dev_addr;
}
if (ether_addr_equal(br->bridge_id.addr, addr))
-137
View File
@@ -1,137 +0,0 @@
commit 8974189222159154c55f24ddad33e3613960521a
Author: Peter Zijlstra <peterz@infradead.org>
Date: Thu Jun 16 10:50:40 2016 +0200
sched/fair: Fix cfs_rq avg tracking underflow
As per commit:
b7fa30c9cc48 ("sched/fair: Fix post_init_entity_util_avg() serialization")
> the code generated from update_cfs_rq_load_avg():
>
> if (atomic_long_read(&cfs_rq->removed_load_avg)) {
> s64 r = atomic_long_xchg(&cfs_rq->removed_load_avg, 0);
> sa->load_avg = max_t(long, sa->load_avg - r, 0);
> sa->load_sum = max_t(s64, sa->load_sum - r * LOAD_AVG_MAX, 0);
> removed_load = 1;
> }
>
> turns into:
>
> ffffffff81087064: 49 8b 85 98 00 00 00 mov 0x98(%r13),%rax
> ffffffff8108706b: 48 85 c0 test %rax,%rax
> ffffffff8108706e: 74 40 je ffffffff810870b0 <update_blocked_averages+0xc0>
> ffffffff81087070: 4c 89 f8 mov %r15,%rax
> ffffffff81087073: 49 87 85 98 00 00 00 xchg %rax,0x98(%r13)
> ffffffff8108707a: 49 29 45 70 sub %rax,0x70(%r13)
> ffffffff8108707e: 4c 89 f9 mov %r15,%rcx
> ffffffff81087081: bb 01 00 00 00 mov $0x1,%ebx
> ffffffff81087086: 49 83 7d 70 00 cmpq $0x0,0x70(%r13)
> ffffffff8108708b: 49 0f 49 4d 70 cmovns 0x70(%r13),%rcx
>
> Which you'll note ends up with sa->load_avg -= r in memory at
> ffffffff8108707a.
So I _should_ have looked at other unserialized users of ->load_avg,
but alas. Luckily nikbor reported a similar /0 from task_h_load() which
instantly triggered recollection of this here problem.
Aside from the intermediate value hitting memory and causing problems,
there's another problem: the underflow detection relies on the signed
bit. This reduces the effective width of the variables, IOW its
effectively the same as having these variables be of signed type.
This patch changes to a different means of unsigned underflow
detection to not rely on the signed bit. This allows the variables to
use the 'full' unsigned range. And it does so with explicit LOAD -
STORE to ensure any intermediate value will never be visible in
memory, allowing these unserialized loads.
Note: GCC generates crap code for this, might warrant a look later.
Note2: I say 'full' above, if we end up at U*_MAX we'll still explode;
maybe we should do clamping on add too.
Signed-off-by: Peter Zijlstra (Intel) <peterz@infradead.org>
Cc: Andrey Ryabinin <aryabinin@virtuozzo.com>
Cc: Chris Wilson <chris@chris-wilson.co.uk>
Cc: Linus Torvalds <torvalds@linux-foundation.org>
Cc: Mike Galbraith <efault@gmx.de>
Cc: Peter Zijlstra <peterz@infradead.org>
Cc: Thomas Gleixner <tglx@linutronix.de>
Cc: Yuyang Du <yuyang.du@intel.com>
Cc: bsegall@google.com
Cc: kernel@kyup.com
Cc: morten.rasmussen@arm.com
Cc: pjt@google.com
Cc: steve.muckle@linaro.org
Fixes: 9d89c257dfb9 ("sched/fair: Rewrite runnable load and utilization average tracking")
Link: http://lkml.kernel.org/r/20160617091948.GJ30927@twins.programming.kicks-ass.net
Signed-off-by: Ingo Molnar <mingo@kernel.org>
---
kernel/sched/fair.c | 33 +++++++++++++++++++++++++--------
1 file changed, 25 insertions(+), 8 deletions(-)
--- a/kernel/sched/fair.c
+++ b/kernel/sched/fair.c
@@ -2682,6 +2682,23 @@ static inline void update_tg_load_avg(st
static inline u64 cfs_rq_clock_task(struct cfs_rq *cfs_rq);
+/*
+ * Unsigned subtract and clamp on underflow.
+ *
+ * Explicitly do a load-store to ensure the intermediate value never hits
+ * memory. This allows lockless observations without ever seeing the negative
+ * values.
+ */
+#define sub_positive(_ptr, _val) do { \
+ typeof(_ptr) ptr = (_ptr); \
+ typeof(*ptr) val = (_val); \
+ typeof(*ptr) res, var = READ_ONCE(*ptr); \
+ res = var - val; \
+ if (res > var) \
+ res = 0; \
+ WRITE_ONCE(*ptr, res); \
+} while (0)
+
/* Group cfs_rq's load_avg is used for task_h_load and update_cfs_share */
static inline int update_cfs_rq_load_avg(u64 now, struct cfs_rq *cfs_rq)
{
@@ -2690,15 +2707,15 @@ static inline int update_cfs_rq_load_avg
if (atomic_long_read(&cfs_rq->removed_load_avg)) {
s64 r = atomic_long_xchg(&cfs_rq->removed_load_avg, 0);
- sa->load_avg = max_t(long, sa->load_avg - r, 0);
- sa->load_sum = max_t(s64, sa->load_sum - r * LOAD_AVG_MAX, 0);
+ sub_positive(&sa->load_avg, r);
+ sub_positive(&sa->load_sum, r * LOAD_AVG_MAX);
removed = 1;
}
if (atomic_long_read(&cfs_rq->removed_util_avg)) {
long r = atomic_long_xchg(&cfs_rq->removed_util_avg, 0);
- sa->util_avg = max_t(long, sa->util_avg - r, 0);
- sa->util_sum = max_t(s32, sa->util_sum - r * LOAD_AVG_MAX, 0);
+ sub_positive(&sa->util_avg, r);
+ sub_positive(&sa->util_sum, r * LOAD_AVG_MAX);
}
decayed = __update_load_avg(now, cpu_of(rq_of(cfs_rq)), sa,
@@ -2764,10 +2781,10 @@ static void detach_entity_load_avg(struc
&se->avg, se->on_rq * scale_load_down(se->load.weight),
cfs_rq->curr == se, NULL);
- cfs_rq->avg.load_avg = max_t(long, cfs_rq->avg.load_avg - se->avg.load_avg, 0);
- cfs_rq->avg.load_sum = max_t(s64, cfs_rq->avg.load_sum - se->avg.load_sum, 0);
- cfs_rq->avg.util_avg = max_t(long, cfs_rq->avg.util_avg - se->avg.util_avg, 0);
- cfs_rq->avg.util_sum = max_t(s32, cfs_rq->avg.util_sum - se->avg.util_sum, 0);
+ sub_positive(&cfs_rq->avg.load_avg, se->avg.load_avg);
+ sub_positive(&cfs_rq->avg.load_sum, se->avg.load_sum);
+ sub_positive(&cfs_rq->avg.util_avg, se->avg.util_avg);
+ sub_positive(&cfs_rq->avg.util_sum, se->avg.util_sum);
}
/* Add the load generated by se into cfs_rq's load average */
-178
View File
@@ -1,178 +0,0 @@
From 40d641241a5399afc93d4eb75d8794f72fe3c0fb Mon Sep 17 00:00:00 2001
From: Wolfgang Bumiller <w.bumiller@proxmox.com>
Date: Wed, 21 Dec 2016 15:37:20 +0100
Subject: [PATCH] cgroup, cpuset: add cpuset.remap_cpus
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
Changes a cpuset, recursively remapping all its descendants
to the new range.
Signed-off-by: Wolfgang Bumiller <w.bumiller@proxmox.com>
Signed-off-by: Fabian Grünbichler <f.gruenbichler@proxmox.com>
---
include/linux/cpumask.h | 17 ++++++++++++++++
kernel/cpuset.c | 54 +++++++++++++++++++++++++++++++++++++++----------
2 files changed, 60 insertions(+), 11 deletions(-)
diff --git a/include/linux/cpumask.h b/include/linux/cpumask.h
index 59915ea..f5487c8 100644
--- a/include/linux/cpumask.h
+++ b/include/linux/cpumask.h
@@ -514,6 +514,23 @@ static inline void cpumask_copy(struct cpumask *dstp,
}
/**
+ * cpumask_remap - *dstp = map(old, new)(*srcp)
+ * @dstp: the result
+ * @srcp: the input cpumask
+ * @oldp: the old mask
+ * @newp: the new mask
+ */
+static inline void cpumask_remap(struct cpumask *dstp,
+ const struct cpumask *srcp,
+ const struct cpumask *oldp,
+ const struct cpumask *newp)
+{
+ bitmap_remap(cpumask_bits(dstp), cpumask_bits(srcp),
+ cpumask_bits(oldp), cpumask_bits(newp),
+ nr_cpumask_bits);
+}
+
+/**
* cpumask_any - pick a "random" cpu from *srcp
* @srcp: the input cpumask
*
diff --git a/kernel/cpuset.c b/kernel/cpuset.c
index 7e78cfe..ff5ff3a 100644
--- a/kernel/cpuset.c
+++ b/kernel/cpuset.c
@@ -462,7 +462,8 @@ static void free_trial_cpuset(struct cpuset *trial)
* Return 0 if valid, -errno if not.
*/
-static int validate_change(struct cpuset *cur, struct cpuset *trial)
+static int validate_change(struct cpuset *cur, struct cpuset *trial,
+ int remap)
{
struct cgroup_subsys_state *css;
struct cpuset *c, *par;
@@ -470,11 +471,13 @@ static int validate_change(struct cpuset *cur, struct cpuset *trial)
rcu_read_lock();
- /* Each of our child cpusets must be a subset of us */
- ret = -EBUSY;
- cpuset_for_each_child(c, css, cur)
- if (!is_cpuset_subset(c, trial))
- goto out;
+ if (!remap) {
+ /* Each of our child cpusets must be a subset of us */
+ ret = -EBUSY;
+ cpuset_for_each_child(c, css, cur)
+ if (!is_cpuset_subset(c, trial))
+ goto out;
+ }
/* Remaining checks don't apply to root cpuset */
ret = 0;
@@ -937,11 +940,15 @@ static void update_cpumasks_hier(struct cpuset *cs, struct cpumask *new_cpus)
* @cs: the cpuset to consider
* @trialcs: trial cpuset
* @buf: buffer of cpu numbers written to this cpuset
+ * @remap: recursively remap all child nodes
*/
static int update_cpumask(struct cpuset *cs, struct cpuset *trialcs,
- const char *buf)
+ const char *buf, int remap)
{
int retval;
+ struct cpuset *cp;
+ struct cgroup_subsys_state *pos_css;
+ struct cpumask tempmask;
/* top_cpuset.cpus_allowed tracks cpu_online_mask; it's read-only */
if (cs == &top_cpuset)
@@ -969,11 +976,25 @@ static int update_cpumask(struct cpuset *cs, struct cpuset *trialcs,
if (cpumask_equal(cs->cpus_allowed, trialcs->cpus_allowed))
return 0;
- retval = validate_change(cs, trialcs);
+ retval = validate_change(cs, trialcs, remap);
if (retval < 0)
return retval;
spin_lock_irq(&callback_lock);
+ if (remap) {
+ rcu_read_lock();
+ cpuset_for_each_descendant_pre(cp, pos_css, cs) {
+ /* skip empty subtrees */
+ if (cpumask_empty(cp->cpus_allowed)) {
+ pos_css = css_rightmost_descendant(pos_css);
+ continue;
+ }
+ cpumask_copy(&tempmask, cp->cpus_allowed);
+ cpumask_remap(cp->cpus_allowed, &tempmask,
+ cs->cpus_allowed, trialcs->cpus_allowed);
+ }
+ rcu_read_unlock();
+ }
cpumask_copy(cs->cpus_allowed, trialcs->cpus_allowed);
spin_unlock_irq(&callback_lock);
@@ -1250,7 +1271,7 @@ static int update_nodemask(struct cpuset *cs, struct cpuset *trialcs,
retval = 0; /* Too easy - nothing to do */
goto done;
}
- retval = validate_change(cs, trialcs);
+ retval = validate_change(cs, trialcs, 0);
if (retval < 0)
goto done;
@@ -1337,7 +1358,7 @@ static int update_flag(cpuset_flagbits_t bit, struct cpuset *cs,
else
clear_bit(bit, &trialcs->flags);
- err = validate_change(cs, trialcs);
+ err = validate_change(cs, trialcs, 0);
if (err < 0)
goto out;
@@ -1596,6 +1617,7 @@ static void cpuset_attach(struct cgroup_taskset *tset)
typedef enum {
FILE_MEMORY_MIGRATE,
FILE_CPULIST,
+ FILE_REMAP_CPULIST,
FILE_MEMLIST,
FILE_EFFECTIVE_CPULIST,
FILE_EFFECTIVE_MEMLIST,
@@ -1728,7 +1750,10 @@ static ssize_t cpuset_write_resmask(struct kernfs_open_file *of,
switch (of_cft(of)->private) {
case FILE_CPULIST:
- retval = update_cpumask(cs, trialcs, buf);
+ retval = update_cpumask(cs, trialcs, buf, 0);
+ break;
+ case FILE_REMAP_CPULIST:
+ retval = update_cpumask(cs, trialcs, buf, 1);
break;
case FILE_MEMLIST:
retval = update_nodemask(cs, trialcs, buf);
@@ -1845,6 +1870,13 @@ static struct cftype files[] = {
},
{
+ .name = "remap_cpus",
+ .write = cpuset_write_resmask,
+ .max_write_len = (100U + 6 * NR_CPUS),
+ .private = FILE_REMAP_CPULIST,
+ },
+
+ {
.name = "mems",
.seq_show = cpuset_common_seq_show,
.write = cpuset_write_resmask,
--
2.1.4
-11
View File
@@ -1,11 +0,0 @@
Package: pve-kernel-@KVNAME@
Version: @KERNEL_VER@-@PKGREL@
Section: admin
Priority: optional
Architecture: @ARCH@
Provides: linux-image, linux-image-2.6
Suggests: pve-firmware
Depends: grub-pc | grub-efi-amd64 | grub-efi-ia32 | grub-efi-arm64, initramfs-tools, busybox
Maintainer: Proxmox Support Team <support@proxmox.com>
Description: The Proxmox PVE Kernel Image
This package contains the linux kernel and initial ramdisk used for booting
-12
View File
@@ -1,12 +0,0 @@
Source: pve-kernel
Maintainer: Proxmox Support Team <support@proxmox.com>
Package: linux-tools-4.10
Architecture: any
Section: devel
Priority: optional
Depends: ${misc:Depends}, ${shlibs:Depends}, linux-base
Description: Linux kernel version specific tools for version 4.10
This package provides the architecture dependent parts for kernel
version locked tools (such as perf and x86_energy_perf_policy)
+646 -8
View File
@@ -1,18 +1,656 @@
pve-kernel (4.10.17-25) unstable; urgency=medium
pve-kernel (4.15.18-58) pve pmg; urgency=medium
* update ZFS/SPL to 0.7.3
* update to Ubuntu-4.15.0-107.108
* bump ABI to 4.10.17-5-pve
* bump ABI to 4.15.18-30
-- Proxmox Support Team <support@proxmox.com> Mon, 6 Nov 2017 12:37:43 +0100
-- Proxmox Support Team <support@proxmox.com> Fri, 12 Jun 2020 13:53:01 +0200
pve-kernel (4.10.17-24) unstable; urgency=medium
pve-kernel (4.15.18-57) pve pmg; urgency=medium
* update to Ubuntu-4.10.0-37.41
* update to Ubuntu-4.15.0-102.103
* bump ABI to 4.10.17-4-pve
* bump ABI to 4.15.18-29
-- Proxmox Support Team <support@proxmox.com> Tue, 10 Oct 2017 14:12:14 +0200
-- Proxmox Support Team <support@proxmox.com> Mon, 18 May 2020 14:34:54 +0200
pve-kernel (4.15.18-56) pve pmg; urgency=medium
* update to Ubuntu-4.15.0-97.98
* bump ABI to 4.15.18-28
-- Proxmox Support Team <support@proxmox.com> Wed, 08 Apr 2020 20:06:11 +0200
pve-kernel (4.15.18-55) pve pmg; urgency=medium
* update to Ubuntu-4.15.0-92.93
* bump ABI to 4.15.18-27
-- Proxmox Support Team <support@proxmox.com> Tue, 17 Mar 2020 15:32:02 +0100
pve-kernel (4.15.18-54) pve pmg; urgency=medium
* update to Ubuntu-4.15.0-89.89
* bump ABI to 4.15.18-26
-- Proxmox Support Team <support@proxmox.com> Sat, 15 Feb 2020 15:34:24 +0100
pve-kernel (4.15.18-53) pve pmg; urgency=medium
* update to Ubuntu-4.15.0-87.87
* bump ABI to 4.15.18-25
-- Proxmox Support Team <support@proxmox.com> Wed, 05 Feb 2020 11:58:15 +0100
pve-kernel (4.15.18-52) pve pmg; urgency=medium
* update to Ubuntu-4.15.0-73.82
* bump ABI to 4.15.18-24
-- Proxmox Support Team <support@proxmox.com> Thu, 05 Dec 2019 10:14:17 +0100
pve-kernel (4.15.18-51) pve pmg; urgency=medium
* update to Ubuntu-4.15.0-69.78
* avoid bogus error message about PC Speaker module being already registered
on boot
* bump ABI to 4.15.18-23
-- Proxmox Support Team <support@proxmox.com> Wed, 13 Nov 2019 11:20:34 +0100
pve-kernel (4.15.18-50) pve pmg; urgency=medium
* update to Ubuntu-4.15.0-68.77
* fix #2458: fix issues with Linux KVM guest on old Intel CPUs
-- Proxmox Support Team <support@proxmox.com> Mon, 11 Nov 2019 15:28:06 +0100
pve-kernel (4.15.18-49) pve pmg; urgency=medium
* update to Ubuntu-4.15.0-67.76
* bump ABI to 4.15.18-22
-- Proxmox Support Team <support@proxmox.com> Wed, 23 Oct 2019 20:39:55 +0200
pve-kernel (4.15.18-48) pve pmg; urgency=medium
* update to Ubuntu-4.15.0-65.74
-- Proxmox Support Team <support@proxmox.com> Fri, 20 Sep 2019 11:28:30 +0200
pve-kernel (4.15.18-47) pve pmg; urgency=medium
* update to Ubuntu-4.15.0-63.72
* bump ABI to 4.15.18-21
-- Proxmox Support Team <support@proxmox.com> Fri, 06 Sep 2019 16:08:32 +0200
pve-kernel (4.15.18-46) pve pmg; urgency=medium
* update to Ubuntu-4.15.0-58.64
* bump ABI to 4.15.18-20
-- Proxmox Support Team <support@proxmox.com> Thu, 8 Aug 2019 10:42:06 +0200
pve-kernel (4.15.18-45) unstable; urgency=medium
* update to Ubuntu-4.15.0-56.62
* bump ABI to 4.15.18-19
-- Proxmox Support Team <support@proxmox.com> Fri, 26 Jul 2019 09:34:08 +0200
pve-kernel (4.15.18-44) unstable; urgency=medium
* update to Ubuntu-4.15.0-55.60
* bump ABI to 4.15.18-18
-- Proxmox Support Team <support@proxmox.com> Wed, 03 Jul 2019 11:19:13 +0200
pve-kernel (4.15.18-43) unstable; urgency=medium
* backport refinement for TCP SACK mitigations to avoid regressions for some
clients
-- Proxmox Support Team <support@proxmox.com> Tue, 25 Jun 2019 17:59:49 +0200
pve-kernel (4.15.18-42) unstable; urgency=medium
* update sources to Ubuntu-4.15.0-53.57
* bump ABI to 4.15.18-17
-- Proxmox Support Team <support@proxmox.com> Fri, 21 Jun 2019 06:45:23 +0200
pve-kernel (4.15.18-41) unstable; urgency=medium
* update sources to Ubuntu-4.15.0-52.56
* backport: KVM: x86: Emulate MSR_IA32_ARCH_CAPABILITIES on AMD hosts
* backport: net: rds: force to destroy connection if t_sock is NULL in rds_tcp_kill_sock()
* bump ABI to 4.15.18-16
-- Proxmox Support Team <support@proxmox.com> Tue, 18 Jun 2019 07:36:54 +0200
pve-kernel (4.15.18-40) unstable; urgency=medium
* update to Ubuntu-4.15.0-51.55
* bump ABI to 4.15.18-15
-- Proxmox Support Team <support@proxmox.com> Tue, 21 May 2019 17:43:20 +0200
pve-kernel (4.15.18-39) unstable; urgency=medium
* update to Ubuntu-4.15.0-50.54 with MDS mitigations
-- Proxmox Support Team <support@proxmox.com> Wed, 15 May 2019 06:56:23 +0200
pve-kernel (4.15.18-38) unstable; urgency=medium
* update to Ubuntu-4.15.0-49.53
* bump ABI to 4.15.18-14
-- Proxmox Support Team <support@proxmox.com> Tue, 30 Apr 2019 10:51:33 +0200
pve-kernel (4.15.18-37) unstable; urgency=medium
* bump ABI to 4.15.18-13
-- Proxmox Support Team <support@proxmox.com> Sat, 13 Apr 2019 21:09:15 +0200
pve-kernel (4.15.18-36) unstable; urgency=medium
* update sources to Ubuntu-4.15.0-48.51
-- Proxmox Support Team <support@proxmox.com> Fri, 05 Apr 2019 18:47:13 +0200
pve-kernel (4.15.18-35) unstable; urgency=medium
* update sources to Ubuntu-4.15.0-47.50
* update ZFS to 0.7.13
* bump ABI to 4.15.18-12
-- Proxmox Support Team <support@proxmox.com> Wed, 13 Mar 2019 08:24:42 +0100
pve-kernel (4.15.18-34) unstable; urgency=medium
* backport fix for possible ipset memory exhaustion bug
* backport fix for possible use after free in crypto stack
* backport fixes for multiple KVM vulnerabilities: CVE-2019-6974,
CVE-2019-7221, CVE-2019-7222
-- Proxmox Support Team <support@proxmox.com> Mon, 25 Feb 2019 14:51:06 +0100
pve-kernel (4.15.18-33) unstable; urgency=medium
* update sources to Ubuntu-4.15.0-46.49
* bump ABI to 4.15.18-11
-- Proxmox Support Team <support@proxmox.com> Tue, 05 Feb 2019 07:36:16 +0100
pve-kernel (4.15.18-32) unstable; urgency=medium
* fix NULL pointer dereference possibility in net/ipip
-- Proxmox Support Team <support@proxmox.com> Sat, 19 Jan 2019 10:09:37 +0100
pve-kernel (4.15.18-31) unstable; urgency=medium
* update sources to Ubuntu-4.15.0-44.47
* bump ABI to 4.15.18-10
-- Proxmox Support Team <support@proxmox.com> Mon, 14 Jan 2019 10:59:31 +0100
pve-kernel (4.15.18-30) unstable; urgency=medium
* add patches for CVE-2018-18955 and https://launchpad.net/bugs/1789161
* update ZFS to 0.7.12
-- Proxmox Support Team <support@proxmox.com> Thu, 15 Nov 2018 13:32:46 +0100
pve-kernel (4.15.18-29) unstable; urgency=medium
* update sources to Ubuntu-4.15.0-40.43
* bump ABI to 4.15.18-9
-- Proxmox Support Team <support@proxmox.com> Mon, 12 Nov 2018 14:01:34 +0100
pve-kernel (4.15.18-28) unstable; urgency=medium
* backport deadlock fix for issue ZOL#7939
* cherry-pick 2 patches planned for zfs-0.7.12
* update sources to Ubuntu-4.15.0-39.42
* bump ABI to 4.15.18-8
-- Proxmox Support Team <support@proxmox.com> Tue, 30 Oct 2018 14:27:50 +0100
pve-kernel (4.15.18-27) unstable; urgency=medium
* backport fix for silent corruption in Linux kernel 4.15 with O_DIRECT
(e.g., VM with cache=none disk)
-- Proxmox Support Team <support@proxmox.com> Wed, 10 Oct 2018 10:50:11 +0200
pve-kernel (4.15.18-26) unstable; urgency=medium
* update sources to Ubuntu-4.15.0-37.40
* bump ABI to 4.15.18-7-pve
-- Proxmox Support Team <support@proxmox.com> Thu, 04 Oct 2018 11:03:06 +0200
pve-kernel (4.15.18-25) unstable; urgency=medium
* update sources to Ubuntu-4.15.0-36.39
* bump ABI to 4.15.18-6-pve
-- Proxmox Support Team <support@proxmox.com> Wed, 03 Oct 2018 14:09:02 +0200
pve-kernel (4.15.18-24) unstable; urgency=medium
* bump spl and zfs to 0.7.11
* update sources to Ubuntu-4.15.0-35.38
* bump ABI to 4.15.18-5-pve
-- Proxmox Support Team <support@proxmox.com> Thu, 13 Sep 2018 09:15:10 +0200
pve-kernel (4.15.18-23) unstable; urgency=medium
* backport protection against userspace-userspace spectreRSB
* update sources to Ubuntu-4.15.0-34.37
* bump ABI to 4.15.18-4-pve
-- Proxmox Support Team <support@proxmox.com> Thu, 30 Aug 2018 13:04:08 +0200
pve-kernel (4.15.18-22) unstable; urgency=medium
* update sources to Ubuntu-4.15.0-33.36
* bump ABI to 4.15.18-3-pve
-- Proxmox Support Team <support@proxmox.com> Fri, 24 Aug 2018 11:12:20 +0200
pve-kernel (4.15.18-21) unstable; urgency=medium
* backport fix for udp/tcp with SO_BINDTODEVICE
* scsi: hpsa: disable device during shutdown
* vhost: fix info leak due to uninitialized memory (CVE-2018-1118)
-- Proxmox Support Team <support@proxmox.com> Thu, 23 Aug 2018 11:01:17 +0200
pve-kernel (4.15.18-20) unstable; urgency=medium
* update to Ubuntu-4.15.0-32.35
* bump ABI to 4.15.18-2-pve
* fix CVE-2018-3620, CVE-2018-3646, CVE-2018-5391
-- Proxmox Support Team <support@proxmox.com> Thu, 16 Aug 2018 11:06:35 +0200
pve-kernel (4.15.18-19) unstable; urgency=medium
* update ZFS submodule to 0.7.9-pve3
-- Proxmox Support Team <support@proxmox.com> Mon, 13 Aug 2018 07:50:59 +0200
pve-kernel (4.15.18-18) unstable; urgency=medium
* add SGID non-directory fix (fixes CVE-2018-13405)
* update to Ubuntu-4.15.0-30.32 (fixes CVE-2018-5390)
-- Proxmox Support Team <support@proxmox.com> Tue, 07 Aug 2018 16:04:18 +0200
pve-kernel (4.15.18-17) unstable; urgency=medium
* apparmor: fix apparmor mediating locking non-fs unix sockets
Addresses issues with newer systemd versions found in, e.g., Arch or Fedora
containers
-- Proxmox Support Team <support@proxmox.com> Mon, 30 Jul 2018 12:53:35 +0200
pve-kernel (4.15.18-16) unstable; urgency=medium
* update to Ubuntu-4.15.0-29.31
* cherry-pick fix for zpl_mount deadlock possibility
-- Proxmox Support Team <support@proxmox.com> Mon, 23 Jul 2018 15:59:19 +0200
pve-kernel (4.15.18-15) unstable; urgency=medium
* update sources to Ubuntu-4.15.0-24.26
* drop out-of-tree IXGBE driver
-- Proxmox Support Team <support@proxmox.com> Wed, 04 Jul 2018 15:42:56 +0200
pve-kernel (4.15.17-14) unstable; urgency=medium
* fix KVM L1 guest escape when nested virtualization is used - CVE-2018-12904
-- Proxmox Support Team <support@proxmox.com> Wed, 27 Jun 2018 17:18:05 +0200
pve-kernel (4.15.17-13) unstable; urgency=medium
* fix regression for newer out-of-tree IGB driver when setting a non-
default MTU
-- Proxmox Support Team <support@proxmox.com> Mon, 18 Jun 2018 17:15:04 +0200
pve-kernel (4.15.17-12) unstable; urgency=medium
* backport fix for SUN NICs when used with Open vSwitch
* update and re-enable out-of-tree Intel ethernet drivers (e1000e, igb, ixgbe)
-- Proxmox Support Team <support@proxmox.com> Fri, 08 Jun 2018 11:18:32 +0200
pve-kernel (4.15.17-10) unstable; urgency=medium
* update to Ubuntu-4.15.0-22.24
* update ZFS to 0.7.9-pve1
-- Proxmox Support Team <support@proxmox.com> Tue, 22 May 2018 11:15:44 +0200
pve-kernel (4.15.17-9) unstable; urgency=medium
* include objtool in pve-headers-* package (needed for some external
modules)
-- Proxmox Support Team <support@proxmox.com> Wed, 9 May 2018 13:31:43 +0200
pve-kernel (4.15.17-8) unstable; urgency=medium
* update ZFS to 0.7.8-pve1
* update sources to Ubuntu-4.15.0-20.21
-- Proxmox Support Team <support@proxmox.com> Thu, 03 May 2018 08:43:38 +0200
pve-kernel (4.15.17-7) unstable; urgency=medium
* update sources to Ubuntu-4.15.0-17.18
* bump ABI to 4.15.17-1-pve
-- Proxmox Support Team <support@proxmox.com> Thu, 19 Apr 2018 14:43:22 +0200
pve-kernel (4.15.15-6) unstable; urgency=medium
* update ZFS to 0.7.7-pve2
-- Proxmox Support Team <support@proxmox.com> Mon, 9 Apr 2018 12:24:42 +0200
pve-kernel (4.15.15-5) unstable; urgency=medium
* update sources to Ubuntu-4.15.0-14.15
* bump ABI to 4.15.15-1-pve
* update SPL/ZFS to 0.7.7
-- Proxmox Support Team <support@proxmox.com> Wed, 4 Apr 2018 09:50:07 +0200
pve-kernel (4.15.10-4) unstable; urgency=medium
* cherry-pick fix for shmem related deadlock
-- Proxmox Support Team <support@proxmox.com> Wed, 28 Mar 2018 15:47:48 +0200
pve-kernel (4.15.10-3) unstable; urgency=medium
* cherry-pick fix for THP related deadlock
-- Proxmox Support Team <support@proxmox.com> Wed, 28 Mar 2018 11:07:39 +0200
pve-kernel (4.15.10-2) unstable; urgency=medium
* update to Ubuntu-4.15.0-13.14
* bump ABI to 4.15.10-1-pve
-- Proxmox Support Team <support@proxmox.com> Wed, 21 Mar 2018 10:35:07 +0100
pve-kernel (4.15.3-1) unstable; urgency=medium
* switch source to Ubuntu-4.15.0-10.11
* switch to in-tree Intel NIC drivers (e1000e, igb, ixgbe)
-- Proxmox Support Team <support@proxmox.com> Fri, 9 Mar 2018 14:45:34 +0100
pve-kernel (4.13.13-42) unstable; urgency=medium
* split out pve-kernel-meta and pve-kernel
* switch to dpkg-buildpackage
* update README
* update source to Ubuntu-4.13.0-36.40
* add cherry-pick for NFS in network namespaces
* add cherry-picks for OCFS2 bug
-- Proxmox Support Team <support@proxmox.com> Fri, 9 Mar 2018 11:55:18 +0100
pve-kernel (4.13.13-41) unstable; urgency=medium
* fix refcnt leaks with net namespaces
* update ZFS/SPL to 0.7.6
-- Proxmox Support Team <support@proxmox.com> Wed, 21 Feb 2018 10:07:54 +0100
pve-kernel (4.13.13-40) unstable; urgency=medium
* warn when loading non-RETPOLINE modules
-- Proxmox Support Team <support@proxmox.com> Fri, 16 Feb 2018 09:51:20 +0100
pve-kernel (4.13.13-39) unstable; urgency=medium
* update to Ubuntu-4.13.0-35.39
* bump Abi to 4.13.13-6.pve
* fix EDAC issues
* fix scsi lpfc HBA issue
* cherry-pick sched/wait bug fix
* enable full RETPOLINE support
-- Proxmox Support Team <support@proxmox.com> Wed, 14 Feb 2018 12:14:44 +0100
pve-kernel (4.13.13-38) unstable; urgency=medium
* fix syscall retpoline
-- Proxmox Support Team <support@proxmox.com> Fri, 26 Jan 2018 10:47:09 +0100
pve-kernel (4.13.13-37) unstable; urgency=medium
* update ZFS to 0.7.4 + ARC hit rate cherry-pick
* add tc fixes
* fix 1622: i40e memory leak
-- Proxmox Support Team <support@proxmox.com> Fri, 19 Jan 2018 12:29:37 +0100
pve-kernel (4.13.13-36) unstable; urgency=medium
* cherry-pick (partial) SPECTRE fixes for CPUs supporting IBRS/IBPB
* follow-up fixes for KPTI
-- Proxmox Support Team <support@proxmox.com> Mon, 15 Jan 2018 12:36:49 +0100
pve-kernel (4.13.13-35) unstable; urgency=medium
* KPTI: disable on AMD
* KPTI: add follow-up fixes
* update Spectre KVM PoC fix for AMD
-- Proxmox Support Team <support@proxmox.com> Mon, 8 Jan 2018 10:26:58 +0100
pve-kernel (4.13.13-34) unstable; urgency=medium
* cherry-pick / backport of KPTI / Meltdown fixes
(from Ubuntu-4.13.0-23.25)
* add Google Spectre PoC fix for KVM
* fix objtool build regression
-- Proxmox Support Team <support@proxmox.com> Sun, 7 Jan 2018 13:19:58 +0100
pve-kernel (4.13.13-33) unstable; urgency=medium
* update to Ubuntu-4.13.0-22.25
* fix #1537: cherry-pick AMD NPT / IOMMU fix
-- Proxmox Support Team <support@proxmox.com> Tue, 2 Jan 2018 10:03:58 +0100
pve-kernel (4.13.13-32) unstable; urgency=medium
* update to Ubuntu-4.13.0-21.24
* bump ABI to 4.13.13-2-pve
-- Proxmox Support Team <support@proxmox.com> Thu, 21 Dec 2017 09:02:14 +0100
pve-kernel (4.13.13-31) unstable; urgency=medium
* update to Ubuntu-4.13.0-19.22
* bump ABI to 4.13.13-1-pve
-- Proxmox Support Team <support@proxmox.com> Mon, 11 Dec 2017 10:00:13 +0100
pve-kernel (4.13.8-30) unstable; urgency=medium
* revert igb to 5.3.5.10 (5.3.5.12 broke JUMBO_FRAMES)
-- Proxmox Support Team <support@proxmox.com> Tue, 5 Dec 2017 13:06:48 +0100
pve-kernel (4.13.8-29) unstable; urgency=medium
* cherry-pick KVM fix for old CPUs
* cherry-pick / backport IB fixes
* cherry-pick vhost perf regression and mem-leak fix
* cherry-pick final Windows BSOD fix
* bump version to 4.13-29, bump ABI to 4.13.8-3-pve
-- Proxmox Support Team <support@proxmox.com> Mon, 4 Dec 2017 09:15:03 +0100
pve-kernel (4.13.8-28) unstable; urgency=medium
* revert MMU changeset which caused bluescreens in Windows VMs
* bump ABI to 4.13.8-2-pve
-- Proxmox Support Team <support@proxmox.com> Wed, 29 Nov 2017 09:49:35 +0100
pve-kernel (4.13.8-27) unstable; urgency=medium
* update to Ubuntu-4.13.0-17.20
* bump ABI to 4.13.8-1-pve
* update e1000e to 3.3.6
* update igb to 5.3.5.12
* update ixgbe to 5.3.3
-- Proxmox Support Team <support@proxmox.com> Fri, 17 Nov 2017 11:41:10 +0100
pve-kernel (4.13.4-26) unstable; urgency=medium
* update to ZFS/SPL 0.7.3
-- Proxmox Support Team <support@proxmox.com> Mon, 6 Nov 2017 11:23:55 +0100
pve-kernel (4.13.4-25) unstable; urgency=medium
* update to Ubuntu-4.13.0-16.19
* update to ZFS/SPL 0.7.2
* fix CVE-2017-12188: nested KVM stack overflow
* bump ABI to 4.13.4-1-pve
-- Proxmox Support Team <support@proxmox.com> Fri, 13 Oct 2017 08:59:53 +0200
pve-kernel (4.13.3-2) unstable; urgency=medium
* update to Ubuntu-4.13.0-12.13
* bump ABI to 4.13.3-1-pve
-- Proxmox Support Team <support@proxmox.com> Wed, 27 Sep 2017 14:01:40 +0200
pve-kernel (4.13.1-1) unstable; urgency=medium
* update to Ubuntu-4.13.0-11.12
* bump ABI to 4.13.1-1-pve
* update ACS override patch for 4.12+
* drop cpuset remap patch, add cpuset cherry-picks instead
* update e1000e/igb/ixgbe to current upstream versions
-- Proxmox Support Team <support@proxmox.com> Wed, 27 Sep 2017 10:08:41 +0200
pve-kernel (4.10.17-23) unstable; urgency=medium
+1
View File
@@ -0,0 +1 @@
10
+68
View File
@@ -0,0 +1,68 @@
Source: pve-kernel
Section: devel
Priority: optional
Maintainer: Proxmox Support Team <support@proxmox.com>
Build-Depends: asciidoc-base,
automake,
bc,
bison,
cpio,
debhelper (>= 10~),
file,
flex,
gcc-6 (>= 6.3.0-18+deb9u1),
git,
kmod,
libdw-dev,
libelf-dev,
libiberty-dev,
libnuma-dev,
libpve-common-perl,
libslang2-dev,
libssl-dev,
libtool,
lintian,
perl-modules,
python-minimal,
rsync,
sed,
tar,
xmlto,
zlib1g-dev,
Build-Conflicts: pve-headers-@KVNAME@,
Vcs-Git: git://git.proxmox.com/git/pve-kernel
Vcs-Browser: https://git.proxmox.com/?p=pve-kernel.git
Package: linux-tools-@KVMAJMIN@
Architecture: any
Section: devel
Priority: optional
Depends: linux-base,
${misc:Depends},
${shlibs:Depends},
Description: Linux kernel version specific tools for version @KVMAJMIN@
This package provides the architecture dependent parts for kernel
version locked tools (such as perf and x86_energy_perf_policy)
Package: pve-headers-@KVNAME@
Section: devel
Priority: optional
Architecture: any
Provides: linux-headers,
linux-headers-2.6,
Depends: coreutils | fileutils (>= 4.0),
Description: The Proxmox PVE Kernel Headers
This package contains the linux kernel headers
Package: pve-kernel-@KVNAME@
Section: admin
Priority: optional
Architecture: any
Provides: linux-image,
linux-image-2.6,
Suggests: pve-firmware,
Depends: busybox,
grub-pc | grub-efi-amd64 | grub-efi-ia32 | grub-efi-arm64,
initramfs-tools,
Description: The Proxmox PVE Kernel Image
This package contains the linux kernel and initial ramdisk used for booting
+1 -2
View File
@@ -26,6 +26,5 @@ The complete text of the GNU General Public License can be found in
`/usr/share/common-licenses/GPL-2'.
ZFS module is licensed under the Common Development and Distribution
ZFS module is licensed under the Common Development and Distribution
License (CDDL).
View File
View File
View File
Vendored Executable
+248
View File
@@ -0,0 +1,248 @@
#!/usr/bin/make -f
# -*- makefile -*-
# Uncomment this to turn on verbose mode.
#export DH_VERBOSE=1
# TODO: check for headers not being installed
BUILD_DIR=$(shell pwd)
include /usr/share/dpkg/default.mk
include debian/rules.d/env.mk
include debian/rules.d/${DEB_BUILD_ARCH}.mk
CHANGELOG_DATE:=$(shell dpkg-parsechangelog -SDate)
PVE_KERNEL_PKG=pve-kernel-${KVNAME}
PVE_HEADER_PKG=pve-headers-${KVNAME}
LINUX_TOOLS_PKG=linux-tools-${KERNEL_MAJMIN}
KERNEL_SRC_COPY=${KERNEL_SRC}_tmp
# TODO: split for archs, move to files?
PVE_CONFIG_OPTS= \
-m INTEL_MEI_WDT \
-d CONFIG_SND_PCM_OSS \
-e CONFIG_TRANSPARENT_HUGEPAGE_MADVISE \
-d CONFIG_TRANSPARENT_HUGEPAGE_ALWAYS \
-m CONFIG_CEPH_FS \
-m CONFIG_BLK_DEV_NBD \
-m CONFIG_BLK_DEV_RBD \
-d CONFIG_SND_PCSP \
-m CONFIG_BCACHE \
-m CONFIG_JFS_FS \
-m CONFIG_HFS_FS \
-m CONFIG_HFSPLUS_FS \
-e CONFIG_BRIDGE \
-e CONFIG_BRIDGE_NETFILTER \
-e CONFIG_BLK_DEV_SD \
-e CONFIG_BLK_DEV_SR \
-e CONFIG_BLK_DEV_DM \
-e CONFIG_BLK_DEV_NVME \
-d CONFIG_INPUT_EVBUG \
-d CONFIG_CPU_FREQ_DEFAULT_GOV_ONDEMAND \
-e CONFIG_CPU_FREQ_DEFAULT_GOV_PERFORMANCE \
-d CONFIG_MODULE_SIG \
-d CONFIG_MEMCG_DISABLED \
-e CONFIG_MEMCG_SWAP_ENABLED \
-e CONFIG_MEMCG_KMEM \
-d CONFIG_DEFAULT_CFQ \
-e CONFIG_DEFAULT_DEADLINE \
-e CONFIG_MODVERSIONS \
-d CONFIG_DEFAULT_SECURITY_DAC \
-e CONFIG_DEFAULT_SECURITY_APPARMOR \
--set-str CONFIG_DEFAULT_SECURITY apparmor \
-d CONFIG_UNWINDER_ORC \
-d CONFIG_UNWINDER_GUESS \
-e CONFIG_UNWINDER_FRAME_POINTER \
-e CONFIG_PAGE_TABLE_ISOLATION
debian/control: $(wildcard debian/*.in)
sed -e 's/@@KVNAME@@/${KVNAME}/g' < debian/pve-kernel.prerm.in > debian/${PVE_KERNEL_PKG}.prerm
sed -e 's/@@KVNAME@@/${KVNAME}/g' < debian/pve-kernel.postrm.in > debian/${PVE_KERNEL_PKG}.postrm
sed -e 's/@@KVNAME@@/${KVNAME}/g' < debian/pve-kernel.postinst.in > debian/${PVE_KERNEL_PKG}.postinst
sed -e 's/@@KVNAME@@/${KVNAME}/g' < debian/pve-headers.postinst.in > debian/${PVE_HEADER_PKG}.postinst
chmod +x debian/${PVE_KERNEL_PKG}.prerm
chmod +x debian/${PVE_KERNEL_PKG}.postrm
chmod +x debian/${PVE_KERNEL_PKG}.postinst
chmod +x debian/${PVE_HEADER_PKG}.postinst
sed -e 's/@KVNAME@/${KVNAME}/g' -e 's/@KVMAJMIN@/${KERNEL_MAJMIN}/g' < debian/control.in > debian/control
build: .compile_mark .tools_compile_mark .modules_compile_mark
install: .install_mark .tools_install_mark .headers_install_mark
dh_installdocs -A debian/copyright debian/SOURCE
dh_installchangelogs
dh_installman
dh_strip_nondeterminism
dh_compress
dh_fixperms
binary: install
debian/rules fwcheck abicheck
dh_strip -N${PVE_HEADER_PKG}
dh_makeshlibs
dh_shlibdeps
dh_installdeb
dh_gencontrol
dh_md5sums
dh_builddeb
.config_mark:
cd ${KERNEL_SRC}; scripts/config ${PVE_CONFIG_OPTS}
${MAKE} -C ${KERNEL_SRC} oldconfig
touch $@
.compile_mark: .config_mark
${MAKE} -C ${KERNEL_SRC} KBUILD_BUILD_VERSION_TIMESTAMP="PVE ${DEB_VERSION} (${CHANGELOG_DATE})"
touch $@
.install_mark: .compile_mark .modules_compile_mark
rm -rf debian/${PVE_KERNEL_PKG}
mkdir -p debian/${PVE_KERNEL_PKG}/lib/modules/${KVNAME}
mkdir debian/${PVE_KERNEL_PKG}/boot
install -m 644 ${KERNEL_SRC}/.config debian/${PVE_KERNEL_PKG}/boot/config-${KVNAME}
install -m 644 ${KERNEL_SRC}/System.map debian/${PVE_KERNEL_PKG}/boot/System.map-${KVNAME}
install -m 644 ${KERNEL_SRC}/${KERNEL_IMAGE_PATH} debian/${PVE_KERNEL_PKG}/boot/${KERNEL_INSTALL_FILE}-${KVNAME}
${MAKE} -C ${KERNEL_SRC} INSTALL_MOD_PATH=${BUILD_DIR}/debian/${PVE_KERNEL_PKG}/ modules_install
## install latest ibg driver
install -m 644 ${MODULES}/igb.ko debian/${PVE_KERNEL_PKG}/lib/modules/${KVNAME}/kernel/drivers/net/ethernet/intel/igb/
# install latest e1000e driver
install -m 644 ${MODULES}/e1000e.ko debian/${PVE_KERNEL_PKG}/lib/modules/${KVNAME}/kernel/drivers/net/ethernet/intel/e1000e/
# install zfs drivers
install -d -m 0755 debian/${PVE_KERNEL_PKG}/lib/modules/${KVNAME}/zfs
install -m 644 $(addprefix ${MODULES}/,spl.ko splat.ko zfs.ko zavl.ko znvpair.ko zunicode.ko zcommon.ko zpios.ko icp.ko) debian/${PVE_KERNEL_PKG}/lib/modules/${KVNAME}/zfs
# remove firmware
rm -rf debian/${PVE_KERNEL_PKG}/lib/firmware
# strip debug info
find debian/${PVE_KERNEL_PKG}/lib/modules -name \*.ko -print | while read f ; do strip --strip-debug "$$f"; done
# finalize
/sbin/depmod -b debian/${PVE_KERNEL_PKG}/ ${KVNAME}
# Autogenerate blacklist for watchdog devices (see README)
install -m 0755 -d debian/${PVE_KERNEL_PKG}/lib/modprobe.d
ls debian/${PVE_KERNEL_PKG}/lib/modules/${KVNAME}/kernel/drivers/watchdog/ > watchdog-blacklist.tmp
echo ipmi_watchdog.ko >> watchdog-blacklist.tmp
cat watchdog-blacklist.tmp|sed -e 's/^/blacklist /' -e 's/.ko$$//'|sort -u > debian/${PVE_KERNEL_PKG}/lib/modprobe.d/blacklist_${PVE_KERNEL_PKG}.conf
rm -f debian/${PVE_KERNEL_PKG}/lib/modules/${KVNAME}/source
rm -f debian/${PVE_KERNEL_PKG}/lib/modules/${KVNAME}/build
touch $@
.tools_compile_mark: .compile_mark
${MAKE} -C ${KERNEL_SRC}/tools/perf prefix=/usr HAVE_NO_LIBBFD=1 HAVE_CPLUS_DEMANGLE_SUPPORT=1 NO_LIBPYTHON=1 NO_LIBPERL=1 NO_LIBCRYPTO=1 PYTHON=python2.7
echo "checking GPL-2 only perf binary for library linkage with incompatible licenses.."
! ldd ${KERNEL_SRC}/tools/perf/perf | grep -q -E '\blibbfd'
! ldd ${KERNEL_SRC}/tools/perf/perf | grep -q -E '\blibcrypto'
${MAKE} -C ${KERNEL_SRC}/tools/perf man
touch $@
.tools_install_mark: .tools_compile_mark
rm -rf debian/${LINUX_TOOLS_PKG}
mkdir -p debian/${LINUX_TOOLS_PKG}/usr/bin
mkdir -p debian/${LINUX_TOOLS_PKG}/usr/share/man/man1
install -m 755 ${BUILD_DIR}/${KERNEL_SRC}/tools/perf/perf debian/${LINUX_TOOLS_PKG}/usr/bin/perf_$(KERNEL_MAJMIN)
for i in ${BUILD_DIR}/${KERNEL_SRC}/tools/perf/Documentation/*.1; do \
fname="$${i##*/}"; manname="$${fname%.1}"; \
install -m644 "$$i" "debian/${LINUX_TOOLS_PKG}/usr/share/man/man1/$${manname}_$(KERNEL_MAJMIN).1"; \
done
touch $@
.headers_prepare_mark: .config_mark
rm -rf debian/${PVE_HEADER_PKG}
mkdir -p debian/${PVE_HEADER_PKG}/usr/src/linux-headers-${KVNAME}
install -m 0644 ${KERNEL_SRC}/.config debian/${PVE_HEADER_PKG}/usr/src/linux-headers-${KVNAME}
# copy to allow building in parallel to kernel/module compilation without interference
rm -rf ${KERNEL_SRC_COPY}
cp -ar ${KERNEL_SRC} ${KERNEL_SRC_COPY}
make -C ${KERNEL_SRC_COPY} mrproper
cd ${KERNEL_SRC_COPY}; find . -path './debian/*' -prune \
-o -path './include/*' -prune \
-o -path './Documentation' -prune \
-o -path './scripts' -prune \
-o -type f \
\( \
-name 'Makefile*' \
-o -name 'Kconfig*' \
-o -name 'Kbuild*' \
-o -name '*.sh' \
-o -name '*.pl' \
\) \
-print | cpio -pd --preserve-modification-time ${BUILD_DIR}/debian/${PVE_HEADER_PKG}/usr/src/linux-headers-${KVNAME}
cd ${KERNEL_SRC_COPY}; cp -a include scripts ${BUILD_DIR}/debian/${PVE_HEADER_PKG}/usr/src/linux-headers-${KVNAME}
cd ${KERNEL_SRC_COPY}; \
( \
find arch/${KERNEL_HEADER_ARCH} -name include -type d -print | \
xargs -n1 -i: find : -type f \
) | \
cpio -pd --preserve-modification-time ${BUILD_DIR}/debian/${PVE_HEADER_PKG}/usr/src/linux-headers-${KVNAME}
touch $@
.headers_compile_mark: .headers_prepare_mark
# set output to subdir of source to reduce number of hardcoded paths in output files
rm -rf ${BUILD_DIR}/${KERNEL_SRC_COPY}/${PVE_HEADER_PKG}
mkdir -p ${BUILD_DIR}/${KERNEL_SRC_COPY}/${PVE_HEADER_PKG}
cp ${KERNEL_SRC}/.config ${BUILD_DIR}/${KERNEL_SRC_COPY}/${PVE_HEADER_PKG}/.config
${MAKE} -C ${KERNEL_SRC_COPY} O=${BUILD_DIR}/${KERNEL_SRC_COPY}/${PVE_HEADER_PKG} -j1 silentoldconfig prepare scripts
find ${BUILD_DIR}/${KERNEL_SRC_COPY}/${PVE_HEADER_PKG} -name \*.o.ur-\* | xargs rm -f
rsync --ignore-existing -r -v -a $(addprefix ${BUILD_DIR}/${KERNEL_SRC_COPY}/${PVE_HEADER_PKG}/,arch include kernel scripts tools) ${BUILD_DIR}/debian/${PVE_HEADER_PKG}/usr/src/linux-headers-${KVNAME}/
rm -rf ${BUILD_DIR}/${KERNEL_SRC_COPY}
touch $@
.headers_install_mark: .compile_mark .modules_compile_mark .headers_compile_mark
cp ${KERNEL_SRC}/include/generated/compile.h debian/${PVE_HEADER_PKG}/usr/src/linux-headers-${KVNAME}/include/generated/compile.h
install -m 0644 ${KERNEL_SRC}/Module.symvers debian/${PVE_HEADER_PKG}/usr/src/linux-headers-${KVNAME}
mkdir -p debian/${PVE_HEADER_PKG}/lib/modules/${KVNAME}
ln -sf /usr/src/linux-headers-${KVNAME} debian/${PVE_HEADER_PKG}/lib/modules/${KVNAME}/build
touch $@
.modules_compile_mark: $(addprefix ${MODULES}/,igb.ko e1000e.ko spl.ko zfs.ko)
touch $@
${MODULES}/spl.ko: .compile_mark
cd ${MODULES}/${SPLDIR}; ./autogen.sh
cd ${MODULES}/${SPLDIR}; ./configure --with-config=kernel --with-linux=${BUILD_DIR}/${KERNEL_SRC} --with-linux-obj=${BUILD_DIR}/${KERNEL_SRC}
${MAKE} -C ${MODULES}/${SPLDIR}
cp ${MODULES}/${SPLDIR}/module/splat/splat.ko ${MODULES}/
cp ${MODULES}/${SPLDIR}/module/spl/spl.ko ${MODULES}/
${MODULES}/zfs.ko: .compile_mark ${MODULES}/spl.ko
cd ${MODULES}/${ZFSDIR}; ./autogen.sh
cd ${MODULES}/${ZFSDIR}; ./configure --with-spl=${BUILD_DIR}/${MODULES}/${SPLDIR} --with-spl-obj=${BUILD_DIR}/${MODULES}/${SPLDIR} --with-config=kernel --with-linux=${BUILD_DIR}/${KERNEL_SRC} --with-linux-obj=${BUILD_DIR}/${KERNEL_SRC}
${MAKE} -C ${MODULES}/${ZFSDIR}
cp ${MODULES}/${ZFSDIR}/module/avl/zavl.ko ${MODULES}/
cp ${MODULES}/${ZFSDIR}/module/nvpair/znvpair.ko ${MODULES}/
cp ${MODULES}/${ZFSDIR}/module/unicode/zunicode.ko ${MODULES}/
cp ${MODULES}/${ZFSDIR}/module/zcommon/zcommon.ko ${MODULES}/
cp ${MODULES}/${ZFSDIR}/module/zpios/zpios.ko ${MODULES}/
cp ${MODULES}/${ZFSDIR}/module/icp/icp.ko ${MODULES}/
cp ${MODULES}/${ZFSDIR}/module/zfs/zfs.ko ${MODULES}/
${MODULES}/igb.ko: .compile_mark
${MAKE} -C ${MODULES}/${IGBDIR}/src BUILD_KERNEL=${KVNAME} KSRC=${BUILD_DIR}/${KERNEL_SRC}
cp ${MODULES}/${IGBDIR}/src/igb.ko ${MODULES}/
${MODULES}/e1000e.ko: .compile_mark
${MAKE} -C ${MODULES}/${E1000EDIR}/src BUILD_KERNEL=${KVNAME} KSRC=${BUILD_DIR}/${KERNEL_SRC}
cp ${MODULES}/${E1000EDIR}/src/e1000e.ko ${MODULES}/
fwlist-${KVNAME}: .compile_mark .modules_compile_mark
debian/scripts/find-firmware.pl debian/${PVE_KERNEL_PKG}/lib/modules/${KVNAME} >fwlist.tmp
mv fwlist.tmp $@
.PHONY: fwcheck
fwcheck: fwlist-${KVNAME} fwlist-previous
@echo "checking fwlist for changes since last built firmware package.."
@echo "if this check fails, add fwlist-${KVNAME} to the pve-firmware repository and upload a new firmware package together with the ${KVNAME} kernel"
sort fwlist-previous | uniq > fwlist-previous.sorted
sort fwlist-${KVNAME} | uniq > fwlist-${KVNAME}.sorted
diff -up -N fwlist-previous.sorted fwlist-${KVNAME}.sorted > fwlist.diff
rm fwlist.diff fwlist-previous.sorted fwlist-${KVNAME}.sorted
@echo "done, no need to rebuild pve-firmware"
abi-${KVNAME}: .compile_mark
debian/scripts/abi-generate debian/${PVE_HEADER_PKG}/usr/src/linux-headers-${KVNAME}/Module.symvers abi-${KVNAME} ${KVNAME}
.PHONY: abicheck
abicheck: debian/scripts/abi-check abi-${KVNAME} abi-prev-* abi-blacklist
debian/scripts/abi-check abi-${KVNAME} abi-prev-* ${SKIPABI}
.PHONY: clean
+5
View File
@@ -0,0 +1,5 @@
KERNEL_BUILD_ARCH = x86
KERNEL_HEADER_ARCH = $(KERNEL_BUILD_ARCH)
KERNEL_BUILD_IMAGE = bzImage
KERNEL_IMAGE_PATH = arch/$(KERNEL_BUILD_ARCH)/boot/${KERNEL_BUILD_IMAGE}
KERNEL_INSTALL_FILE = vmlinuz
+14 -8
View File
@@ -4,8 +4,14 @@ my $abinew = shift;
my $abiold = shift;
my $skipabi = shift;
# to catch multiple abi-prev-* files being passed in
die "invalid value for skipabi parameter\n"
if (defined($skipabi) && $skipabi !~ /^[01]$/);
$abinew =~ /abi-(.*)/;
my $abinum = $1;
my $abistr = $1;
$abiold =~ /abi-prev-(.*)/;
my $prev_abistr = $1;
my $fail_exit = 1;
my $EE = "EE:";
@@ -23,12 +29,12 @@ if ($skipabi) {
$EE = "WW:";
}
#if ($prev_abinum != $abinum) {
# print "II: Different ABI's, running in no-fail mode\n";
# $fail_exit = 0;
# $EE = "WW:";
#}
#
if ($prev_abistr ne $abistr) {
print "II: Different ABI's, running in no-fail mode\n";
$fail_exit = 0;
$EE = "WW:";
}
if (not -f "$abinew" or not -f "$abiold") {
print "EE: Previous or current ABI file missing!\n";
print " $abinew\n" if not -f "$abinew";
@@ -83,7 +89,7 @@ sub is_ignored($$) {
}
# Read new syms first
print " Reading new symbols ($abinum)...";
print " Reading new symbols ($abistr)...";
$count = 0;
open(NEW, "< $abinew") or
die "Could not open $abinew";
Vendored Executable
+42
View File
@@ -0,0 +1,42 @@
#!/usr/bin/perl -w
use PVE::Tools;
use IO::File;
sub usage {
die "USAGE: $0 INFILE OUTFILE [ABI INFILE-IS-DEB]\n";
}
my $input_file = shift // usage();
my $output_file = shift // usage();
my $abi = shift;
my $extract_deb = shift;
die "input file '$input_file' does not exist\n" if ! -e $input_file;
my $modules_symver_fh;
if ($extract_deb) {
usage() if !defined($abi);
my $cmd = [];
push @$cmd, ['dpkg', '--fsys-tarfile', $input_file];
push @$cmd, ['tar', '-xOf', '-', "./usr/src/linux-headers-${abi}/Module.symvers"];
$modules_symver_fh = IO::File->new_tmpfile();
PVE::Tools::run_command($cmd, output => '>&'.fileno($modules_symver_fh));
seek($modules_symver_fh, 0, 0);
} else {
open($modules_symver_fh, '<', $input_file) or die "can't open '$input_file' - $!\n";
}
my $lines = [];
while(my $line = <$modules_symver_fh>) {
if ($line =~ /^(.+)\s+(.+)\s+(.+)$/) {
push @$lines, "$3 $2 $1";
} else {
warn "malformed symvers line: '$line'\n";
}
}
close($modules_symver_fh);
PVE::Tools::file_set_contents($output_file, join("\n", sort @$lines));
+34
View File
@@ -0,0 +1,34 @@
#!/bin/bash
set -e
top=$(pwd)
if [ "$#" -ne 3 ]; then
echo "USAGE: $0 repo patchdir ref"
echo "\t exports patches from 'repo' to 'patchdir' based on 'ref'"
exit 1
fi
# parameters
kernel_submodule=$1
kernel_patchdir=$2
base_ref=$3
cd "${kernel_submodule}"
echo "clearing old exported patchqueue"
rm -f "${top}/${kernel_patchdir}"/*.patch
echo "exporting patchqueue using 'git format-patch [...] ${base_ref}.."
git format-patch \
--quiet \
--no-numbered \
--no-cover-letter \
--zero-commit \
--no-signature \
--output-dir \
"${top}/${kernel_patchdir}" \
"${base_ref}.."
git checkout ${base_ref}
cd "${top}"
+1 -1
View File
@@ -8,7 +8,7 @@ die "no directory to scan" if !$dir;
die "no such directory" if ! -d $dir;
die "strange directory name" if $dir !~ m|^(.*/)?(4.10.\d+\-\d+\-pve)(/+)?$|;
die "strange directory name" if $dir !~ m|^(.*/)?(4.15.\d+\-\d+\-pve)(/+)?$|;
my $apiver = $2;
+29
View File
@@ -0,0 +1,29 @@
#!/bin/bash
set -e
top=$(pwd)
if [[ "$#" -lt 2 || "$#" -gt 3 ]]; then
echo "USAGE: $0 repo patchdir [branch]"
echo "\t imports patches from 'patchdir' into patchqueue branch 'branch' in 'repo'"
exit 1
fi
# parameters
kernel_submodule=$1
kernel_patchdir=$2
if [[ -z "$3" ]]; then
pq_branch='pq'
else
pq_branch=$3
fi
cd "${kernel_submodule}"
echo "creating patchqeueue branch '${pq_branch}'"
git checkout -b "${pq_branch}"
echo "importing patches from '${kernel_patchdir}'"
git am "${top}/${kernel_patchdir}"/*.patch
cd "${top}"
+119
View File
@@ -0,0 +1,119 @@
#!/bin/bash
set -e
top=$(pwd)
# parameters
kernel_submodule=
kernel_patchdir=
new_tag=
rebase=
# generated based on new_tag
pq_branch=
# previously checked out in submodule
old_ref=
function cleanup_pq_branch {
if [[ -n $pq_branch ]]; then
echo "cleaning up PQ branch '$pq_branch'"
cd "${top}/${kernel_submodule}"
git checkout --quiet $old_ref
git reset --hard
git branch -D "$pq_branch"
fi
}
function error_exit {
echo "$1"
set +e
cleanup_pq_branch
cd "${top}"
exit 1
}
if [[ "$#" -lt 3 || "$#" -gt 4 ]]; then
echo "USAGE: $0 submodule patchdir tag [rebase]"
echo "\t fetches and checks out 'tag' in 'submodule'"
echo "\t if 'rebase' is given, imports, rebases and exports patchqueue from 'patchdir' as well"
exit 1
fi
kernel_submodule=$1
if [ ! -d "${kernel_submodule}" ]; then
error_exit "'${kernel_submodule}' must be a directory!"
fi
kernel_patchdir=$2
if [ ! -d "${kernel_patchdir}" ]; then
error_exit "'${kernel_patchdir}' must be a directory!"
fi
new_tag=$3
rebase=$4
if [[ -n $(git status --untracked-files=no --porcelain) ]]; then
error_exit "working directory unclean, aborting"
fi
cd "${kernel_submodule}"
## check for tag and fetch if needed
echo "checking for tag '${new_tag}'"
if [[ -z $(git tag -l "${new_tag}") ]]; then
echo "tag not found, fetching and retrying"
git fetch --tags
fi
if [[ -z $(git tag -l "${new_tag}") ]]; then
error_exit "tag not found, aborting"
fi
echo "tag found"
cd "${top}"
if [[ -n "$rebase" ]]; then
echo ""
echo "automatic patchqueue rebase enabled"
cd "${kernel_submodule}"
## preparing patch queue branch
old_ref=$(git rev-parse HEAD)
pq_branch="auto_pq/${new_tag}"
cd "${top}"
echo "previous HEAD: ${old_ref}"
echo ""
"${top}/debian/scripts/import-patchqueue" "${kernel_submodule}" "${kernel_patchdir}" "${pq_branch}" || error_exit "failed to import patchqueue"
cd "${kernel_submodule}"
## rebase patches
echo ""
echo "rebasing patchqueue on top of '${new_tag}'"
git rebase "${new_tag}"
cd "${top}"
## regenerate exported patch queue
echo ""
"${top}/debian/scripts/export-patchqueue" "${kernel_submodule}" "${kernel_patchdir}" "${new_tag}" || error_exit "failed to export patchqueue"
cleanup_pq_branch
cd "${top}"
pq_branch=
fi
cd "${kernel_submodule}"
echo ""
echo "checking out '${new_tag}' in submodule"
git checkout --quiet "${new_tag}"
cd "${top}"
echo ""
echo "committing results"
git commit --verbose -s -m "update sources to ${new_tag}" -m "(generated with debian/scripts/import-upstream-tag)" "${kernel_submodule}"
if [[ -n "$rebase" ]]; then
git add "${kernel_patchdir}"
git commit --verbose -s -m "rebase patches on top of ${new_tag}" -m "(generated with debian/scripts/import-upstream-tag)" "${kernel_patchdir}"
fi
Binary file not shown.
Binary file not shown.
-81
View File
@@ -1,81 +0,0 @@
src/{netdev.c.orig => netdev.c} | 18 +++++++++---------
src/{ptp.c.orig => ptp.c} | 4 ++--
2 files changed, 11 insertions(+), 11 deletions(-)
diff --git a/src/netdev.c.orig b/src/netdev.c
index 73b0f9a..480265b 100644
--- a/src/netdev.c.orig
+++ b/src/netdev.c
@@ -4833,24 +4833,24 @@ void e1000e_reinit_locked(struct e1000_adapter *adapter)
/**
* e1000e_sanitize_systim - sanitize raw cycle counter reads
* @hw: pointer to the HW structure
- * @systim: cycle_t value read, sanitized and returned
+ * @systim: u64 value read, sanitized and returned
*
* Errata for 82574/82583 possible bad bits read from SYSTIMH/L:
* check to see that the time is incrementing at a reasonable
* rate and is a multiple of incvalue.
**/
-static cycle_t e1000e_sanitize_systim(struct e1000_hw *hw, cycle_t systim)
+static u64 e1000e_sanitize_systim(struct e1000_hw *hw, u64 systim)
{
u64 time_delta, rem, temp;
- cycle_t systim_next;
+ u64 systim_next;
u32 incvalue;
int i;
incvalue = er32(TIMINCA) & E1000_TIMINCA_INCVALUE_MASK;
for (i = 0; i < E1000_MAX_82574_SYSTIM_REREADS; i++) {
/* latch SYSTIMH on read of SYSTIML */
- systim_next = (cycle_t)er32(SYSTIML);
- systim_next |= (cycle_t)er32(SYSTIMH) << 32;
+ systim_next = (u64)er32(SYSTIML);
+ systim_next |= (u64)er32(SYSTIMH) << 32;
time_delta = systim_next - systim;
temp = time_delta;
@@ -4872,13 +4872,13 @@ static cycle_t e1000e_sanitize_systim(struct e1000_hw *hw, cycle_t systim)
* e1000e_cyclecounter_read - read raw cycle counter (used by time counter)
* @cc: cyclecounter structure
**/
-static cycle_t e1000e_cyclecounter_read(const struct cyclecounter *cc)
+static u64 e1000e_cyclecounter_read(const struct cyclecounter *cc)
{
struct e1000_adapter *adapter = container_of(cc, struct e1000_adapter,
cc);
struct e1000_hw *hw = &adapter->hw;
u32 systimel, systimeh;
- cycle_t systim;
+ u64 systim;
/* SYSTIMH latching upon SYSTIML read does not work well.
* This means that if SYSTIML overflows after we read it but before
* we read SYSTIMH, the value of SYSTIMH has been incremented and we
@@ -4899,8 +4899,8 @@ static cycle_t e1000e_cyclecounter_read(const struct cyclecounter *cc)
systimel = systimel_2;
}
}
- systim = (cycle_t)systimel;
- systim |= (cycle_t)systimeh << 32;
+ systim = (u64)systimel;
+ systim |= (u64)systimeh << 32;
if (adapter->flags2 & FLAG2_CHECK_SYSTIM_OVERFLOW)
systim = e1000e_sanitize_systim(hw, systim);
diff --git a/src/ptp.c.orig b/src/ptp.c
index 00c419f..228adce 100644
--- a/src/ptp.c.orig
+++ b/src/ptp.c
@@ -136,8 +136,8 @@ static int e1000e_phc_get_syncdevicetime(ktime_t * device,
unsigned long flags;
int i;
u32 tsync_ctrl;
- cycle_t dev_cycles;
- cycle_t sys_cycles;
+ u64 dev_cycles;
+ u64 sys_cycles;
tsync_ctrl = er32(TSYNCTXCTL);
tsync_ctrl |= E1000_TSYNCTXCTL_START_SYNC |
+1351 -1164
View File
File diff suppressed because it is too large Load Diff
-10
View File
@@ -1,10 +0,0 @@
Package: pve-headers-@KVNAME@
Version: @KERNEL_VER@-@PKGREL@
Section: devel
Priority: optional
Architecture: @ARCH@
Provides: linux-headers, linux-headers-2.6
Depends: coreutils | fileutils (>= 4.0)
Maintainer: Proxmox Support Team <support@proxmox.com>
Description: The Proxmox PVE Kernel Headers
This package contains the linux kernel headers
Binary file not shown.
Binary file not shown.
-25
View File
@@ -1,25 +0,0 @@
src/{igb_ptp.c.orig => igb_ptp.c} | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/src/igb_ptp.c.orig b/src/igb_ptp.c
index 744fa65..f334ac7 100644
--- a/src/igb_ptp.c.orig
+++ b/src/igb_ptp.c
@@ -93,7 +93,7 @@
* SYSTIM read access for the 82576
*/
-static cycle_t igb_ptp_read_82576(const struct cyclecounter *cc)
+static u64 igb_ptp_read_82576(const struct cyclecounter *cc)
{
struct igb_adapter *igb = container_of(cc, struct igb_adapter, cc);
struct e1000_hw *hw = &igb->hw;
@@ -113,7 +113,7 @@ static cycle_t igb_ptp_read_82576(const struct cyclecounter *cc)
* SYSTIM read access for the 82580
*/
-static cycle_t igb_ptp_read_82580(const struct cyclecounter *cc)
+static u64 igb_ptp_read_82580(const struct cyclecounter *cc)
{
struct igb_adapter *igb = container_of(cc, struct igb_adapter, cc);
struct e1000_hw *hw = &igb->hw;
-47
View File
@@ -1,47 +0,0 @@
diff --git a/src/e1000_defines.h b/src/e1000_defines.h
index 6de3988..d58e12f 100644
--- a/src/e1000_defines.h
+++ b/src/e1000_defines.h
@@ -423,7 +423,8 @@
#define ETHERNET_IEEE_VLAN_TYPE 0x8100 /* 802.3ac packet */
#define ETHERNET_FCS_SIZE 4
-#define MAX_JUMBO_FRAME_SIZE 0x3F00
+#define MAX_JUMBO_FRAME_SIZE 0x2600
+#define MAX_STD_JUMBO_FRAME_SIZE 9216
/* The datasheet maximum supported RX size is 9.5KB (9728 bytes) */
#define MAX_RX_JUMBO_FRAME_SIZE 0x2600
#define E1000_TX_PTR_GAP 0x1F
diff --git a/src/igb_main.c b/src/igb_main.c
index 2dff0f4..bbfe87e 100644
--- a/src/igb_main.c
+++ b/src/igb_main.c
@@ -2852,6 +2852,10 @@ static int igb_probe(struct pci_dev *pdev,
if (pci_using_dac)
netdev->features |= NETIF_F_HIGHDMA;
+ /* MTU range: 68 - 9216 */
+ netdev->min_mtu = ETH_MIN_MTU;
+ netdev->max_mtu = MAX_STD_JUMBO_FRAME_SIZE;
+
adapter->en_mng_pt = e1000_enable_mng_pass_thru(hw);
#ifdef DEBUG
if (adapter->dmac != IGB_DMAC_DISABLE)
@@ -5832,17 +5836,6 @@ static int igb_change_mtu(struct net_device *netdev, int new_mtu)
struct pci_dev *pdev = adapter->pdev;
int max_frame = new_mtu + ETH_HLEN + ETH_FCS_LEN + VLAN_HLEN;
- if ((new_mtu < 68) || (max_frame > MAX_JUMBO_FRAME_SIZE)) {
- dev_err(pci_dev_to_dev(pdev), "Invalid MTU setting\n");
- return -EINVAL;
- }
-
-#define MAX_STD_JUMBO_FRAME_SIZE 9238
- if (max_frame > MAX_STD_JUMBO_FRAME_SIZE) {
- dev_err(pci_dev_to_dev(pdev), "MTU > 9216 not supported.\n");
- return -EINVAL;
- }
-
/* adjust max frame to be at least the size of a standard frame */
if (max_frame < (ETH_FRAME_LEN + ETH_FCS_LEN))
max_frame = ETH_FRAME_LEN + ETH_FCS_LEN;
-95
View File
@@ -1,95 +0,0 @@
From 6445198f802d993c73f4b246353b2ceb2dfafc32 Mon Sep 17 00:00:00 2001
From: Ferruh Yigit <ferruh.yigit@intel.com>
Date: Mon, 17 Oct 2016 11:23:14 +0100
Subject: kni: fix build with kernel 4.9
compile error:
CC [M] .../lib/librte_eal/linuxapp/kni/igb_main.o
.../lib/librte_eal/linuxapp/kni/igb_main.c:2317:21:
error: initialization from incompatible pointer type
[-Werror=incompatible-pointer-types]
.ndo_set_vf_vlan = igb_ndo_set_vf_vlan,
^~~~~~~~~~~~~~~~~~~
Linux kernel 4.9 updates API for ndo_set_vf_vlan:
Linux: 79aab093a0b5 ("net: Update API for VF vlan protocol 802.1ad support")
Use new API for Linux kernels >= 4.9
Signed-off-by: Ferruh Yigit <ferruh.yigit@intel.com>
Tested-by: Pablo de Lara <pablo.de.lara.guarch@intel.com>
---
src/igb_main.c | 19 +++++++++++++++++++
src/kcompat.h | 4 ++++
2 files changed, 23 insertions(+)
diff --git a/src/igb_main.c b/src/igb_main.c
index 23e2d64..f4dca5a 100644
--- a/src/igb_main.c
+++ b/src/igb_main.c
@@ -195,7 +195,11 @@ static void igb_process_mdd_event(struct igb_adapter *);
#ifdef IFLA_VF_MAX
static int igb_ndo_set_vf_mac( struct net_device *netdev, int vf, u8 *mac);
static int igb_ndo_set_vf_vlan(struct net_device *netdev,
+#ifdef HAVE_VF_VLAN_PROTO
+ int vf, u16 vlan, u8 qos, __be16 vlan_proto);
+#else
int vf, u16 vlan, u8 qos);
+#endif
#ifdef HAVE_VF_SPOOFCHK_CONFIGURE
static int igb_ndo_set_vf_spoofchk(struct net_device *netdev, int vf,
bool setting);
@@ -6412,7 +6416,11 @@ static void igb_set_vmvir(struct igb_adapter *adapter, u32 vid, u32 vf)
}
static int igb_ndo_set_vf_vlan(struct net_device *netdev,
+#ifdef HAVE_VF_VLAN_PROTO
+ int vf, u16 vlan, u8 qos, __be16 vlan_proto)
+#else
int vf, u16 vlan, u8 qos)
+#endif
{
int err = 0;
struct igb_adapter *adapter = netdev_priv(netdev);
@@ -6420,6 +6428,12 @@ static int igb_ndo_set_vf_vlan(struct net_device *netdev,
/* VLAN IDs accepted range 0-4094 */
if ((vf >= adapter->vfs_allocated_count) || (vlan > VLAN_VID_MASK-1) || (qos > 7))
return -EINVAL;
+
+#ifdef HAVE_VF_VLAN_PROTO
+ if (vlan_proto != htons(ETH_P_8021Q))
+ return -EPROTONOSUPPORT;
+#endif
+
if (vlan || qos) {
err = igb_vlvf_set(adapter, vlan, !!vlan, vf);
if (err)
@@ -6580,7 +6594,12 @@ static inline void igb_vf_reset(struct igb_adapter *adapter, u32 vf)
if (adapter->vf_data[vf].pf_vlan)
igb_ndo_set_vf_vlan(adapter->netdev, vf,
adapter->vf_data[vf].pf_vlan,
+#ifdef HAVE_VF_VLAN_PROTO
+ adapter->vf_data[vf].pf_qos,
+ htons(ETH_P_8021Q));
+#else
adapter->vf_data[vf].pf_qos);
+#endif
else
igb_clear_vf_vfta(adapter, vf);
#endif
diff --git a/src/kcompat.h b/src/kcompat.h
index 69e0e7a..84826b2 100644
--- a/src/kcompat.h
+++ b/src/kcompat.h
@@ -3929,4 +3929,8 @@ skb_set_hash(struct sk_buff *skb, __u32 hash, __always_unused int type)
#define vlan_tx_tag_present skb_vlan_tag_present
#endif
+#if ( LINUX_VERSION_CODE >= KERNEL_VERSION(4,9,0) )
+#define HAVE_VF_VLAN_PROTO
+#endif /* >= 4.9.0 */
+
#endif /* _KCOMPAT_H_ */
--
cgit v1.0
Binary file not shown.
-25
View File
@@ -1,25 +0,0 @@
src/{ixgbe_ptp.c.orig => ixgbe_ptp.c} | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/src/ixgbe_ptp.c.orig b/src/ixgbe_ptp.c
index fb832f0..b868c68 100644
--- a/src/ixgbe_ptp.c.orig
+++ b/src/ixgbe_ptp.c
@@ -244,7 +244,7 @@ static void ixgbe_ptp_setup_sdp_X540(struct ixgbe_adapter *adapter)
* result of SYSTIME is 32bits of "billions of cycles" and 32 bits of
* "cycles", rather than seconds and nanoseconds.
*/
-static cycle_t ixgbe_ptp_read_X550(const struct cyclecounter *hw_cc) {
+static u64 ixgbe_ptp_read_X550(const struct cyclecounter *hw_cc) {
struct ixgbe_adapter *adapter =
container_of(hw_cc, struct ixgbe_adapter, hw_cc);
struct ixgbe_hw *hw = &adapter->hw;
@@ -280,7 +280,7 @@ static cycle_t ixgbe_ptp_read_X550(const struct cyclecounter *hw_cc) {
* cyclecounter structure used to construct a ns counter from the
* arbitrary fixed point registers
*/
-static cycle_t ixgbe_ptp_read_82599(const struct cyclecounter *hw_cc)
+static u64 ixgbe_ptp_read_82599(const struct cyclecounter *hw_cc)
{
struct ixgbe_adapter *adapter =
container_of(hw_cc, struct ixgbe_adapter, hw_cc);
-37
View File
@@ -1,37 +0,0 @@
diff --git a/src/ixgbe_main.c b/src/ixgbe_main.c
index 83c6250..fe226cd 100644
--- a/src/ixgbe_main.c
+++ b/src/ixgbe_main.c
@@ -6379,11 +6379,6 @@ static void ixgbe_free_all_rx_resources(struct ixgbe_adapter *adapter)
static int ixgbe_change_mtu(struct net_device *netdev, int new_mtu)
{
struct ixgbe_adapter *adapter = netdev_priv(netdev);
- int max_frame = new_mtu + ETH_HLEN + ETH_FCS_LEN;
-
- /* MTU < 68 is an error and causes problems on some kernels */
- if ((new_mtu < 68) || (max_frame > IXGBE_MAX_JUMBO_FRAME_SIZE))
- return -EINVAL;
/*
* For 82599EB we cannot allow legacy VFs to enable their receive
@@ -6392,7 +6387,7 @@ static int ixgbe_change_mtu(struct net_device *netdev, int new_mtu)
*/
if ((adapter->flags & IXGBE_FLAG_SRIOV_ENABLED) &&
(adapter->hw.mac.type == ixgbe_mac_82599EB) &&
- (max_frame > (ETH_FRAME_LEN + ETH_FCS_LEN)))
+ (new_mtu > ETH_DATA_LEN))
e_warn(probe, "Setting MTU > 1500 will disable legacy VFs\n");
e_info(probe, "changing MTU from %d to %d\n", netdev->mtu, new_mtu);
@@ -10134,6 +10129,11 @@ static int __devinit ixgbe_probe(struct pci_dev *pdev,
#ifdef IFF_SUPP_NOFCS
netdev->priv_flags |= IFF_SUPP_NOFCS;
#endif
+
+ /* MTU range: 68 - 9710 */
+ netdev->min_mtu = ETH_MIN_MTU;
+ netdev->max_mtu = IXGBE_MAX_JUMBO_FRAME_SIZE - (ETH_HLEN + ETH_FCS_LEN);
+
#if IS_ENABLED(CONFIG_DCB)
if (adapter->flags & IXGBE_FLAG_DCB_CAPABLE)
netdev->dcbnl_ops = &dcbnl_ops;
@@ -1,12 +0,0 @@
diff --git a/virt/kvm/kvm_main.c b/virt/kvm/kvm_main.c
--- a/virt/kvm/kvm_main.c 2016-05-12 10:39:37.540387127 +0200
+++ b/virt/kvm/kvm_main.c 2016-05-04 10:43:38.063996221 +0200
@@ -75,7 +75,7 @@ static unsigned int halt_poll_ns = KVM_H
EXPORT_SYMBOL_GPL(halt_poll_ns);
/* Default doubles per-vcpu halt_poll_ns. */
-unsigned int halt_poll_ns_grow = 2;
+unsigned int halt_poll_ns_grow = 0;
module_param(halt_poll_ns_grow, uint, S_IRUGO | S_IWUSR);
EXPORT_SYMBOL_GPL(halt_poll_ns_grow);
@@ -0,0 +1,53 @@
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
From: Thomas Lamprecht <t.lamprecht@proxmox.com>
Date: Tue, 5 Jun 2018 11:16:29 +0200
Subject: [PATCH] port to new internal kernel timer API
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
---
diff --git a/src/netdev.c b/src/netdev.c
--- a/src/netdev.c
+++ b/src/netdev.c
@@ -5389,9 +5389,10 @@
* Need to wait a few seconds after link up to get diagnostic information from
* the phy
**/
-static void e1000_update_phy_info(unsigned long data)
+static void e1000_update_phy_info(struct timer_list *t)
{
- struct e1000_adapter *adapter = (struct e1000_adapter *)data;
+ struct e1000_adapter *adapter;
+ adapter = from_timer(adapter, t, phy_info_timer);
if (test_bit(__E1000_DOWN, &adapter->state))
return;
@@ -5774,9 +5775,10 @@
* e1000_watchdog - Timer Call-back
* @data: pointer to adapter cast into an unsigned long
**/
-static void e1000_watchdog(unsigned long data)
+static void e1000_watchdog(struct timer_list *t)
{
- struct e1000_adapter *adapter = (struct e1000_adapter *)data;
+ struct e1000_adapter *adapter;
+ adapter = from_timer(adapter, t, watchdog_timer);
/* Do the rest outside of interrupt context */
schedule_work(&adapter->watchdog_task);
@@ -8348,13 +8348,9 @@
goto err_eeprom;
}
- init_timer(&adapter->watchdog_timer);
- adapter->watchdog_timer.function = e1000_watchdog;
- adapter->watchdog_timer.data = (unsigned long)adapter;
-
- init_timer(&adapter->phy_info_timer);
- adapter->phy_info_timer.function = e1000_update_phy_info;
- adapter->phy_info_timer.data = (unsigned long)adapter;
+ timer_setup(&adapter->watchdog_timer, e1000_watchdog, 0);
+
+ timer_setup(&adapter->phy_info_timer, e1000_update_phy_info, 0);
INIT_WORK(&adapter->reset_task, e1000_reset_task);
INIT_WORK(&adapter->watchdog_task, e1000_watchdog_task);
+15
View File
@@ -0,0 +1,15 @@
diff --git a/src/igb_main.c.orig b/src/igb_main.c
index 3ee1ec7..c8adf04 100644
--- a/src/igb_main.c.orig
+++ b/src/igb_main.c
@@ -5888,10 +5888,8 @@ static int igb_change_mtu(struct net_dev
while (test_and_set_bit(__IGB_RESETTING, &adapter->state))
usleep_range(1000, 2000);
-#ifndef HAVE_NETDEVICE_MIN_MAX_MTU
/* igb_down has a dependency on max_frame_size */
adapter->max_frame_size = max_frame;
-#endif
if (netif_running(netdev))
igb_down(adapter);
@@ -1,7 +1,10 @@
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
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
Subject: [PATCH] Make mkcompile_h accept an alternate timestamp string
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
We want to include the Debian version in the utsname::version string
instead of a full timestamp string. However, we still need to provide
@@ -11,9 +14,17 @@ kernel image reproducible.
Make mkcompile_h use $KBUILD_BUILD_VERSION_TIMESTAMP in preference to
$KBUILD_BUILD_TIMESTAMP.
Signed-off-by: Fabian Grünbichler <f.gruenbichler@proxmox.com>
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
---
scripts/mkcompile_h | 10 +++++++---
1 file changed, 7 insertions(+), 3 deletions(-)
diff --git a/scripts/mkcompile_h b/scripts/mkcompile_h
index 87f1fc9801d7..4ef868f1f244 100755
--- a/scripts/mkcompile_h
+++ b/scripts/mkcompile_h
@@ -37,10 +37,14 @@ else
@@ -33,10 +33,14 @@ else
VERSION=$KBUILD_BUILD_VERSION
fi
@@ -0,0 +1,36 @@
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Fabian=20Gr=C3=BCnbichler?= <f.gruenbichler@proxmox.com>
Date: Thu, 14 Sep 2017 11:02:18 +0200
Subject: [PATCH] bridge: keep MAC of first assigned port
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
original commit message:
Default bridge changes MAC dynamically using smallest MAC of all
connected ports (for no real reason). To avoid problems with ARP
we simply use the MAC of the first connected port.
Signed-off-by: Fabian Grünbichler <f.gruenbichler@proxmox.com>
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
---
net/bridge/br_stp_if.c | 5 +----
1 file changed, 1 insertion(+), 4 deletions(-)
diff --git a/net/bridge/br_stp_if.c b/net/bridge/br_stp_if.c
index 808e2b914015..b0ad54384826 100644
--- a/net/bridge/br_stp_if.c
+++ b/net/bridge/br_stp_if.c
@@ -259,10 +259,7 @@ bool br_stp_recalculate_bridge_id(struct net_bridge *br)
return false;
list_for_each_entry(p, &br->port_list, list) {
- if (addr == br_mac_zero ||
- memcmp(p->dev->dev_addr, addr, ETH_ALEN) < 0)
- addr = p->dev->dev_addr;
-
+ addr = p->dev->dev_addr;
}
if (ether_addr_equal(br->bridge_id.addr, addr))
@@ -1,13 +1,15 @@
From 866f4c5de45ae13aa590de0d40819a0c38f3f682 Mon Sep 17 00:00:00 2001
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
From: Mark Weiman <mark.weiman@markzz.com>
Date: Sun, 23 Oct 2016 12:57:37 -0400
Subject: [PATCH] pci: Enable overrides for missing ACS capabilities (4.8+)
Date: Wed, 7 Feb 2018 16:04:03 -0500
Subject: [PATCH] pci: Enable overrides for missing ACS capabilities (4.15)
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
This an updated version of Alex Williamson's patch from:
https://lkml.org/lkml/2013/5/30/513
Original commit message follows:
---
PCIe ACS (Access Control Services) is the PCIe 2.0+ feature that
allows us to control whether transactions are allowed to be redirected
in various subnodes of a PCIe topology. For instance, if two
@@ -45,37 +47,38 @@ specific devices which enforce isolation but not provide an ACS
capability. Please contact me to have your devices added and save
your customers the hassle of this boot option.
Signed-off-by: Mark Weiman <mark.weiman@markzz.com>
Signed-off-by: Fabian Grünbichler <f.gruenbichler@proxmox.com>
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
---
Documentation/admin-guide/kernel-parameters.txt | 9 ++++
drivers/pci/quirks.c | 101 ++++++++++++++++++++++++++++++++++++
.../admin-guide/kernel-parameters.txt | 9 ++
drivers/pci/quirks.c | 101 ++++++++++++++++++
2 files changed, 110 insertions(+)
diff --git a/Documentation/admin-guide/kernel-parameters.txt b/Documentation/admin-guide/kernel-parameters.txt
index a4f4d69..d68cfab 100644
index 325a5dd7813d..a95cc0b61b29 100644
--- a/Documentation/admin-guide/kernel-parameters.txt
+++ b/Documentation/admin-guide/kernel-parameters.txt
@@ -2928,6 +2928,15 @@ bytes respectively. Such letter suffixes can also be entirely omitted.
nomsi [MSI] If the PCI_MSI kernel config parameter is
enabled, this kernel boot option can be used to
disable the use of MSI interrupts system-wide.
@@ -3181,6 +3181,15 @@
Also, it enforces the PCI Local Bus spec
rule that those bits should be 0 in system reset
events (useful for kexec/kdump cases).
+ pci_acs_override =
+ [PCIE] Override missing PCIe ACS support for:
+ [PCIE] Override missing PCIe ACS support for:
+ downstream
+ All downstream ports - full ACS capabilities
+ multfunction
+ All multifunction devices - multifunction ACS subset
+ multifunction
+ Add multifunction devices - multifunction ACS subset
+ id:nnnn:nnnn
+ Specfic device - full ACS capabilities
+ Specific device - full ACS capabilities
+ Specified as vid:did (vendor/device ID) in hex
noioapicquirk [APIC] Disable all boot interrupt quirks.
Safety option to keep boot IRQs enabled. This
should never be necessary.
diff --git a/drivers/pci/quirks.c b/drivers/pci/quirks.c
index 44e0ff3..32016cb 100644
index e5d1a00c481d..7ecd84506d8d 100644
--- a/drivers/pci/quirks.c
+++ b/drivers/pci/quirks.c
@@ -3487,6 +3487,106 @@ static int __init pci_apply_final_quirks(void)
@@ -3769,6 +3769,106 @@ static int __init pci_apply_final_quirks(void)
fs_initcall_sync(pci_apply_final_quirks);
@@ -119,7 +122,6 @@ index 44e0ff3..32016cb 100644
+ goto next;
+ }
+ acs_on_ids[max_acs_id].vendor = val;
+
+ p += strcspn(p, ":");
+ if (*p != ':') {
+ pr_warn("PCIe ACS invalid ID\n");
@@ -164,32 +166,30 @@ index 44e0ff3..32016cb 100644
+ return 1;
+
+ switch (pci_pcie_type(dev)) {
+ case PCI_EXP_TYPE_DOWNSTREAM:
+ case PCI_EXP_TYPE_ROOT_PORT:
+ if (acs_on_downstream)
+ return 1;
+ break;
+ case PCI_EXP_TYPE_ENDPOINT:
+ case PCI_EXP_TYPE_UPSTREAM:
+ case PCI_EXP_TYPE_LEG_END:
+ case PCI_EXP_TYPE_RC_END:
+ if (acs_on_multifunction && dev->multifunction)
+ return 1;
+ case PCI_EXP_TYPE_DOWNSTREAM:
+ case PCI_EXP_TYPE_ROOT_PORT:
+ if (acs_on_downstream)
+ return 1;
+ break;
+ case PCI_EXP_TYPE_ENDPOINT:
+ case PCI_EXP_TYPE_UPSTREAM:
+ case PCI_EXP_TYPE_LEG_END:
+ case PCI_EXP_TYPE_RC_END:
+ if (acs_on_multifunction && dev->multifunction)
+ return 1;
+ }
+
+ return -ENOTTY;
+}
+
/*
* Followings are device-specific reset methods which can be used to
* Following are device-specific reset methods which can be used to
* reset a single function if other methods (e.g. FLR, PM D0->D3) are
@@ -4160,6 +4260,7 @@ static const struct pci_dev_acs_enabled {
{ 0x10df, 0x720, pci_quirk_mf_endpoint_acs }, /* Emulex Skyhawk-R */
/* Cavium ThunderX */
@@ -4664,6 +4764,7 @@ static const struct pci_dev_acs_enabled {
{ PCI_VENDOR_ID_CAVIUM, PCI_ANY_ID, pci_quirk_cavium_acs },
/* APM X-Gene */
{ PCI_VENDOR_ID_AMCC, 0xE004, pci_quirk_xgene_acs },
+ { PCI_ANY_ID, PCI_ANY_ID, pcie_acs_overrides },
{ 0 }
};
--
2.10.1
@@ -0,0 +1,27 @@
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Fabian=20Gr=C3=BCnbichler?= <f.gruenbichler@proxmox.com>
Date: Thu, 14 Sep 2017 11:09:58 +0200
Subject: [PATCH] kvm: disable default dynamic halt polling growth
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
Signed-off-by: Fabian Grünbichler <f.gruenbichler@proxmox.com>
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
---
virt/kvm/kvm_main.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/virt/kvm/kvm_main.c b/virt/kvm/kvm_main.c
index 706b13f0c698..c6749d154ebc 100644
--- a/virt/kvm/kvm_main.c
+++ b/virt/kvm/kvm_main.c
@@ -78,7 +78,7 @@ module_param(halt_poll_ns, uint, 0644);
EXPORT_SYMBOL_GPL(halt_poll_ns);
/* Default doubles per-vcpu halt_poll_ns. */
-unsigned int halt_poll_ns_grow = 2;
+unsigned int halt_poll_ns_grow = 0;
module_param(halt_poll_ns_grow, uint, 0644);
EXPORT_SYMBOL_GPL(halt_poll_ns_grow);
@@ -0,0 +1,59 @@
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
From: Changwei Ge <ge.changwei@h3c.com>
Date: Wed, 31 Jan 2018 16:15:02 -0800
Subject: [PATCH] ocfs2: make metadata estimation accurate and clear
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
Current code assume that ::w_unwritten_list always has only one item on.
This is not right and hard to get understood. So improve how to count
unwritten item.
Link: http://lkml.kernel.org/r/1515479070-32653-1-git-send-email-ge.changwei@h3c.com
Signed-off-by: Changwei Ge <ge.changwei@h3c.com>
Reported-by: John Lightsey <john@nixnuts.net>
Tested-by: John Lightsey <john@nixnuts.net>
Cc: Mark Fasheh <mfasheh@versity.com>
Cc: Joseph Qi <jiangqi903@gmail.com>
Cc: Junxiao Bi <junxiao.bi@oracle.com>
Cc: Joel Becker <jlbec@evilplan.org>
Cc: Changwei Ge <ge.changwei@h3c.com>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
(cherry picked from commit 63de8bd9328bf2a778fc277503da163ae3defa3c)
Signed-off-by: Fabian Grünbichler <f.gruenbichler@proxmox.com>
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
---
fs/ocfs2/aops.c | 4 +++-
1 file changed, 3 insertions(+), 1 deletion(-)
diff --git a/fs/ocfs2/aops.c b/fs/ocfs2/aops.c
index 7de0c9562b70..209cec7efef4 100644
--- a/fs/ocfs2/aops.c
+++ b/fs/ocfs2/aops.c
@@ -797,6 +797,7 @@ struct ocfs2_write_ctxt {
struct ocfs2_cached_dealloc_ctxt w_dealloc;
struct list_head w_unwritten_list;
+ unsigned int w_unwritten_count;
};
void ocfs2_unlock_and_free_pages(struct page **pages, int num_pages)
@@ -1386,6 +1387,7 @@ static int ocfs2_unwritten_check(struct inode *inode,
desc->c_clear_unwritten = 0;
list_add_tail(&new->ue_ip_node, &oi->ip_unwritten_list);
list_add_tail(&new->ue_node, &wc->w_unwritten_list);
+ wc->w_unwritten_count++;
new = NULL;
unlock:
spin_unlock(&oi->ip_lock);
@@ -2277,7 +2279,7 @@ static int ocfs2_dio_wr_get_block(struct inode *inode, sector_t iblock,
ue->ue_phys = desc->c_phys;
list_splice_tail_init(&wc->w_unwritten_list, &dwc->dw_zero_list);
- dwc->dw_zero_count++;
+ dwc->dw_zero_count += wc->w_unwritten_count;
}
ret = ocfs2_write_end_nolock(inode->i_mapping, pos, len, len, wc);
@@ -0,0 +1,368 @@
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
From: Changwei Ge <ge.changwei@h3c.com>
Date: Wed, 31 Jan 2018 16:15:06 -0800
Subject: [PATCH] ocfs2: try to reuse extent block in dealloc without
meta_alloc
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
A crash issue was reported by John Lightsey with a call trace as follows:
ocfs2_split_extent+0x1ad3/0x1b40 [ocfs2]
ocfs2_change_extent_flag+0x33a/0x470 [ocfs2]
ocfs2_mark_extent_written+0x172/0x220 [ocfs2]
ocfs2_dio_end_io+0x62d/0x910 [ocfs2]
dio_complete+0x19a/0x1a0
do_blockdev_direct_IO+0x19dd/0x1eb0
__blockdev_direct_IO+0x43/0x50
ocfs2_direct_IO+0x8f/0xa0 [ocfs2]
generic_file_direct_write+0xb2/0x170
__generic_file_write_iter+0xc3/0x1b0
ocfs2_file_write_iter+0x4bb/0xca0 [ocfs2]
__vfs_write+0xae/0xf0
vfs_write+0xb8/0x1b0
SyS_write+0x4f/0xb0
system_call_fastpath+0x16/0x75
The BUG code told that extent tree wants to grow but no metadata was
reserved ahead of time. From my investigation into this issue, the root
cause it that although enough metadata is not reserved, there should be
enough for following use. Rightmost extent is merged into its left one
due to a certain times of marking extent written. Because during
marking extent written, we got many physically continuous extents. At
last, an empty extent showed up and the rightmost path is removed from
extent tree.
Add a new mechanism to reuse extent block cached in dealloc which were
just unlinked from extent tree to solve this crash issue.
Criteria is that during marking extents *written*, if extent rotation
and merging results in unlinking extent with growing extent tree later
without any metadata reserved ahead of time, try to reuse those extents
in dealloc in which deleted extents are cached.
Also, this patch addresses the issue John reported that ::dw_zero_count
is not calculated properly.
After applying this patch, the issue John reported was gone. Thanks for
the reproducer provided by John. And this patch has passed
ocfs2-test(29 cases) suite running by New H3C Group.
[ge.changwei@h3c.com: fix static checker warnning]
Link: http://lkml.kernel.org/r/63ADC13FD55D6546B7DECE290D39E373F29196AE@H3CMLB12-EX.srv.huawei-3com.com
[akpm@linux-foundation.org: brelse(NULL) is legal]
Link: http://lkml.kernel.org/r/1515479070-32653-2-git-send-email-ge.changwei@h3c.com
Signed-off-by: Changwei Ge <ge.changwei@h3c.com>
Reported-by: John Lightsey <john@nixnuts.net>
Tested-by: John Lightsey <john@nixnuts.net>
Cc: Joel Becker <jlbec@evilplan.org>
Cc: Joseph Qi <jiangqi903@gmail.com>
Cc: Junxiao Bi <junxiao.bi@oracle.com>
Cc: Dan Carpenter <dan.carpenter@oracle.com>
Cc: Mark Fasheh <mfasheh@versity.com>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
(cherry picked from commit 71a36944042b7d9dd71f6a5d1c5ea1c2353b5d42)
Signed-off-by: Fabian Grünbichler <f.gruenbichler@proxmox.com>
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
---
fs/ocfs2/alloc.c | 206 ++++++++++++++++++++++++++++++++++++++++++++---
fs/ocfs2/alloc.h | 1 +
fs/ocfs2/aops.c | 6 ++
3 files changed, 203 insertions(+), 10 deletions(-)
diff --git a/fs/ocfs2/alloc.c b/fs/ocfs2/alloc.c
index 6b177de324c0..3760888f2e76 100644
--- a/fs/ocfs2/alloc.c
+++ b/fs/ocfs2/alloc.c
@@ -165,6 +165,13 @@ static int ocfs2_dinode_insert_check(struct ocfs2_extent_tree *et,
struct ocfs2_extent_rec *rec);
static int ocfs2_dinode_sanity_check(struct ocfs2_extent_tree *et);
static void ocfs2_dinode_fill_root_el(struct ocfs2_extent_tree *et);
+
+static int ocfs2_reuse_blk_from_dealloc(handle_t *handle,
+ struct ocfs2_extent_tree *et,
+ struct buffer_head **new_eb_bh,
+ int blk_wanted, int *blk_given);
+static int ocfs2_is_dealloc_empty(struct ocfs2_extent_tree *et);
+
static const struct ocfs2_extent_tree_operations ocfs2_dinode_et_ops = {
.eo_set_last_eb_blk = ocfs2_dinode_set_last_eb_blk,
.eo_get_last_eb_blk = ocfs2_dinode_get_last_eb_blk,
@@ -448,6 +455,7 @@ static void __ocfs2_init_extent_tree(struct ocfs2_extent_tree *et,
if (!obj)
obj = (void *)bh->b_data;
et->et_object = obj;
+ et->et_dealloc = NULL;
et->et_ops->eo_fill_root_el(et);
if (!et->et_ops->eo_fill_max_leaf_clusters)
@@ -1158,7 +1166,7 @@ static int ocfs2_add_branch(handle_t *handle,
struct buffer_head **last_eb_bh,
struct ocfs2_alloc_context *meta_ac)
{
- int status, new_blocks, i;
+ int status, new_blocks, i, block_given = 0;
u64 next_blkno, new_last_eb_blk;
struct buffer_head *bh;
struct buffer_head **new_eb_bhs = NULL;
@@ -1213,11 +1221,31 @@ static int ocfs2_add_branch(handle_t *handle,
goto bail;
}
- status = ocfs2_create_new_meta_bhs(handle, et, new_blocks,
- meta_ac, new_eb_bhs);
- if (status < 0) {
- mlog_errno(status);
- goto bail;
+ /* Firstyly, try to reuse dealloc since we have already estimated how
+ * many extent blocks we may use.
+ */
+ if (!ocfs2_is_dealloc_empty(et)) {
+ status = ocfs2_reuse_blk_from_dealloc(handle, et,
+ new_eb_bhs, new_blocks,
+ &block_given);
+ if (status < 0) {
+ mlog_errno(status);
+ goto bail;
+ }
+ }
+
+ BUG_ON(block_given > new_blocks);
+
+ if (block_given < new_blocks) {
+ BUG_ON(!meta_ac);
+ status = ocfs2_create_new_meta_bhs(handle, et,
+ new_blocks - block_given,
+ meta_ac,
+ &new_eb_bhs[block_given]);
+ if (status < 0) {
+ mlog_errno(status);
+ goto bail;
+ }
}
/* Note: new_eb_bhs[new_blocks - 1] is the guy which will be
@@ -1340,15 +1368,25 @@ static int ocfs2_shift_tree_depth(handle_t *handle,
struct ocfs2_alloc_context *meta_ac,
struct buffer_head **ret_new_eb_bh)
{
- int status, i;
+ int status, i, block_given = 0;
u32 new_clusters;
struct buffer_head *new_eb_bh = NULL;
struct ocfs2_extent_block *eb;
struct ocfs2_extent_list *root_el;
struct ocfs2_extent_list *eb_el;
- status = ocfs2_create_new_meta_bhs(handle, et, 1, meta_ac,
- &new_eb_bh);
+ if (!ocfs2_is_dealloc_empty(et)) {
+ status = ocfs2_reuse_blk_from_dealloc(handle, et,
+ &new_eb_bh, 1,
+ &block_given);
+ } else if (meta_ac) {
+ status = ocfs2_create_new_meta_bhs(handle, et, 1, meta_ac,
+ &new_eb_bh);
+
+ } else {
+ BUG();
+ }
+
if (status < 0) {
mlog_errno(status);
goto bail;
@@ -1511,7 +1549,7 @@ static int ocfs2_grow_tree(handle_t *handle, struct ocfs2_extent_tree *et,
int depth = le16_to_cpu(el->l_tree_depth);
struct buffer_head *bh = NULL;
- BUG_ON(meta_ac == NULL);
+ BUG_ON(meta_ac == NULL && ocfs2_is_dealloc_empty(et));
shift = ocfs2_find_branch_target(et, &bh);
if (shift < 0) {
@@ -6585,6 +6623,154 @@ ocfs2_find_per_slot_free_list(int type,
return fl;
}
+static struct ocfs2_per_slot_free_list *
+ocfs2_find_preferred_free_list(int type,
+ int preferred_slot,
+ int *real_slot,
+ struct ocfs2_cached_dealloc_ctxt *ctxt)
+{
+ struct ocfs2_per_slot_free_list *fl = ctxt->c_first_suballocator;
+
+ while (fl) {
+ if (fl->f_inode_type == type && fl->f_slot == preferred_slot) {
+ *real_slot = fl->f_slot;
+ return fl;
+ }
+
+ fl = fl->f_next_suballocator;
+ }
+
+ /* If we can't find any free list matching preferred slot, just use
+ * the first one.
+ */
+ fl = ctxt->c_first_suballocator;
+ *real_slot = fl->f_slot;
+
+ return fl;
+}
+
+/* Return Value 1 indicates empty */
+static int ocfs2_is_dealloc_empty(struct ocfs2_extent_tree *et)
+{
+ struct ocfs2_per_slot_free_list *fl = NULL;
+
+ if (!et->et_dealloc)
+ return 1;
+
+ fl = et->et_dealloc->c_first_suballocator;
+ if (!fl)
+ return 1;
+
+ if (!fl->f_first)
+ return 1;
+
+ return 0;
+}
+
+/* If extent was deleted from tree due to extent rotation and merging, and
+ * no metadata is reserved ahead of time. Try to reuse some extents
+ * just deleted. This is only used to reuse extent blocks.
+ * It is supposed to find enough extent blocks in dealloc if our estimation
+ * on metadata is accurate.
+ */
+static int ocfs2_reuse_blk_from_dealloc(handle_t *handle,
+ struct ocfs2_extent_tree *et,
+ struct buffer_head **new_eb_bh,
+ int blk_wanted, int *blk_given)
+{
+ int i, status = 0, real_slot;
+ struct ocfs2_cached_dealloc_ctxt *dealloc;
+ struct ocfs2_per_slot_free_list *fl;
+ struct ocfs2_cached_block_free *bf;
+ struct ocfs2_extent_block *eb;
+ struct ocfs2_super *osb =
+ OCFS2_SB(ocfs2_metadata_cache_get_super(et->et_ci));
+
+ *blk_given = 0;
+
+ /* If extent tree doesn't have a dealloc, this is not faulty. Just
+ * tell upper caller dealloc can't provide any block and it should
+ * ask for alloc to claim more space.
+ */
+ dealloc = et->et_dealloc;
+ if (!dealloc)
+ goto bail;
+
+ for (i = 0; i < blk_wanted; i++) {
+ /* Prefer to use local slot */
+ fl = ocfs2_find_preferred_free_list(EXTENT_ALLOC_SYSTEM_INODE,
+ osb->slot_num, &real_slot,
+ dealloc);
+ /* If no more block can be reused, we should claim more
+ * from alloc. Just return here normally.
+ */
+ if (!fl) {
+ status = 0;
+ break;
+ }
+
+ bf = fl->f_first;
+ fl->f_first = bf->free_next;
+
+ new_eb_bh[i] = sb_getblk(osb->sb, bf->free_blk);
+ if (new_eb_bh[i] == NULL) {
+ status = -ENOMEM;
+ mlog_errno(status);
+ goto bail;
+ }
+
+ mlog(0, "Reusing block(%llu) from "
+ "dealloc(local slot:%d, real slot:%d)\n",
+ bf->free_blk, osb->slot_num, real_slot);
+
+ ocfs2_set_new_buffer_uptodate(et->et_ci, new_eb_bh[i]);
+
+ status = ocfs2_journal_access_eb(handle, et->et_ci,
+ new_eb_bh[i],
+ OCFS2_JOURNAL_ACCESS_CREATE);
+ if (status < 0) {
+ mlog_errno(status);
+ goto bail;
+ }
+
+ memset(new_eb_bh[i]->b_data, 0, osb->sb->s_blocksize);
+ eb = (struct ocfs2_extent_block *) new_eb_bh[i]->b_data;
+
+ /* We can't guarantee that buffer head is still cached, so
+ * polutlate the extent block again.
+ */
+ strcpy(eb->h_signature, OCFS2_EXTENT_BLOCK_SIGNATURE);
+ eb->h_blkno = cpu_to_le64(bf->free_blk);
+ eb->h_fs_generation = cpu_to_le32(osb->fs_generation);
+ eb->h_suballoc_slot = cpu_to_le16(real_slot);
+ eb->h_suballoc_loc = cpu_to_le64(bf->free_bg);
+ eb->h_suballoc_bit = cpu_to_le16(bf->free_bit);
+ eb->h_list.l_count =
+ cpu_to_le16(ocfs2_extent_recs_per_eb(osb->sb));
+
+ /* We'll also be dirtied by the caller, so
+ * this isn't absolutely necessary.
+ */
+ ocfs2_journal_dirty(handle, new_eb_bh[i]);
+
+ if (!fl->f_first) {
+ dealloc->c_first_suballocator = fl->f_next_suballocator;
+ kfree(fl);
+ }
+ kfree(bf);
+ }
+
+ *blk_given = i;
+
+bail:
+ if (unlikely(status < 0)) {
+ for (i = 0; i < blk_wanted; i++)
+ brelse(new_eb_bh[i]);
+ }
+
+ return status;
+}
+
int ocfs2_cache_block_dealloc(struct ocfs2_cached_dealloc_ctxt *ctxt,
int type, int slot, u64 suballoc,
u64 blkno, unsigned int bit)
diff --git a/fs/ocfs2/alloc.h b/fs/ocfs2/alloc.h
index 27b75cf32cfa..250bcacdf9e9 100644
--- a/fs/ocfs2/alloc.h
+++ b/fs/ocfs2/alloc.h
@@ -61,6 +61,7 @@ struct ocfs2_extent_tree {
ocfs2_journal_access_func et_root_journal_access;
void *et_object;
unsigned int et_max_leaf_clusters;
+ struct ocfs2_cached_dealloc_ctxt *et_dealloc;
};
/*
diff --git a/fs/ocfs2/aops.c b/fs/ocfs2/aops.c
index 209cec7efef4..1cf7ac84b70b 100644
--- a/fs/ocfs2/aops.c
+++ b/fs/ocfs2/aops.c
@@ -2353,6 +2353,12 @@ static int ocfs2_dio_end_io_write(struct inode *inode,
ocfs2_init_dinode_extent_tree(&et, INODE_CACHE(inode), di_bh);
+ /* Attach dealloc with extent tree in case that we may reuse extents
+ * which are already unlinked from current extent tree due to extent
+ * rotation and merging.
+ */
+ et.et_dealloc = &dealloc;
+
ret = ocfs2_lock_allocators(inode, &et, 0, dwc->dw_zero_count*2,
&data_ac, &meta_ac);
if (ret) {
@@ -0,0 +1,54 @@
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Fabian=20Gr=C3=BCnbichler?= <f.gruenbichler@proxmox.com>
Date: Tue, 3 Apr 2018 14:59:26 +0200
Subject: [PATCH] Revert "UBUNTU: [Packaging] retpoline -- add safe usage hint
support"
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
This (partially) reverts commit 1e39020902132b3065bedf0a0c33031e89f9f57a.
this modifies the upstream kernel build to call an Ubuntu script which
we remove before building. it would also be required by any module
builds afterwards and is not shipped by Ubuntu's kernel packages either.
Signed-off-by: Fabian Grünbichler <f.gruenbichler@proxmox.com>
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
---
scripts/Makefile.build | 10 +---------
1 file changed, 1 insertion(+), 9 deletions(-)
diff --git a/scripts/Makefile.build b/scripts/Makefile.build
index 5d72aa39d3c1..451546219dfc 100644
--- a/scripts/Makefile.build
+++ b/scripts/Makefile.build
@@ -295,27 +295,19 @@ objtool_dep = $(objtool_obj) \
$(wildcard include/config/orc/unwinder.h \
include/config/stack/validation.h)
-ifdef CONFIG_RETPOLINE
-cmd_ubuntu_retpoline = $(CONFIG_SHELL) $(srctree)/scripts/ubuntu-retpoline-extract-one $(@) $(<) "$(filter -m16 %code16gcc.h,$(a_flags))";
-else
-cmd_ubuntu_retpoline =
-endif
-
define rule_cc_o_c
$(call echo-cmd,checksrc) $(cmd_checksrc) \
$(call cmd_and_fixdep,cc_o_c) \
$(cmd_checkdoc) \
$(call echo-cmd,objtool) $(cmd_objtool) \
$(cmd_modversions_c) \
- $(call echo-cmd,ubuntu-retpoline) $(cmd_ubuntu_retpoline) \
$(call echo-cmd,record_mcount) $(cmd_record_mcount)
endef
define rule_as_o_S
$(call cmd_and_fixdep,as_o_S) \
$(call echo-cmd,objtool) $(cmd_objtool) \
- $(cmd_modversions_S) \
- $(call echo-cmd,ubuntu-retpoline) $(cmd_ubuntu_retpoline)
+ $(cmd_modversions_S)
endef
# List module undefined symbols (or empty line if not enabled)
@@ -0,0 +1,168 @@
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
From: Christoffer Dall <christoffer.dall@linaro.org>
Date: Mon, 4 Dec 2017 21:35:23 +0100
Subject: [PATCH] KVM: Take vcpu->mutex outside vcpu_load
As we're about to call vcpu_load() from architecture-specific
implementations of the KVM vcpu ioctls, but yet we access data
structures protected by the vcpu->mutex in the generic code, factor
this logic out from vcpu_load().
x86 is the only architecture which calls vcpu_load() outside of the main
vcpu ioctl function, and these calls will no longer take the vcpu mutex
following this patch. However, with the exception of
kvm_arch_vcpu_postcreate (see below), the callers are either in the
creation or destruction path of the VCPU, which means there cannot be
any concurrent access to the data structure, because the file descriptor
is not yet accessible, or is already gone.
kvm_arch_vcpu_postcreate makes the newly created vcpu potentially
accessible by other in-kernel threads through the kvm->vcpus array, and
we therefore take the vcpu mutex in this case directly.
Signed-off-by: Christoffer Dall <christoffer.dall@linaro.org>
Reviewed-by: Cornelia Huck <cohuck@redhat.com>
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
(cherry picked from commit ec7660ccdd2b71d8c7f0243f8590253713e9b75d)
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
---
arch/x86/kvm/vmx.c | 4 +---
arch/x86/kvm/x86.c | 16 ++++++----------
include/linux/kvm_host.h | 2 +-
virt/kvm/kvm_main.c | 17 ++++++-----------
4 files changed, 14 insertions(+), 25 deletions(-)
diff --git a/arch/x86/kvm/vmx.c b/arch/x86/kvm/vmx.c
index 6875c8d13052..5dc2144a0991 100644
--- a/arch/x86/kvm/vmx.c
+++ b/arch/x86/kvm/vmx.c
@@ -10017,10 +10017,8 @@ static void vmx_switch_vmcs(struct kvm_vcpu *vcpu, struct loaded_vmcs *vmcs)
static void vmx_free_vcpu_nested(struct kvm_vcpu *vcpu)
{
struct vcpu_vmx *vmx = to_vmx(vcpu);
- int r;
- r = vcpu_load(vcpu);
- BUG_ON(r);
+ vcpu_load(vcpu);
vmx_switch_vmcs(vcpu, &vmx->vmcs01);
free_nested(vmx);
vcpu_put(vcpu);
diff --git a/arch/x86/kvm/x86.c b/arch/x86/kvm/x86.c
index 960b14ba645e..6b1e434ceaf8 100644
--- a/arch/x86/kvm/x86.c
+++ b/arch/x86/kvm/x86.c
@@ -8061,17 +8061,13 @@ struct kvm_vcpu *kvm_arch_vcpu_create(struct kvm *kvm,
int kvm_arch_vcpu_setup(struct kvm_vcpu *vcpu)
{
- int r;
-
vcpu->arch.arch_capabilities = kvm_get_arch_capabilities();
kvm_vcpu_mtrr_init(vcpu);
- r = vcpu_load(vcpu);
- if (r)
- return r;
+ vcpu_load(vcpu);
kvm_vcpu_reset(vcpu, false);
kvm_mmu_setup(vcpu);
vcpu_put(vcpu);
- return r;
+ return 0;
}
void kvm_arch_vcpu_postcreate(struct kvm_vcpu *vcpu)
@@ -8081,13 +8077,15 @@ void kvm_arch_vcpu_postcreate(struct kvm_vcpu *vcpu)
kvm_hv_vcpu_postcreate(vcpu);
- if (vcpu_load(vcpu))
+ if (mutex_lock_killable(&vcpu->mutex))
return;
+ vcpu_load(vcpu);
msr.data = 0x0;
msr.index = MSR_IA32_TSC;
msr.host_initiated = true;
kvm_write_tsc(vcpu, &msr);
vcpu_put(vcpu);
+ mutex_unlock(&vcpu->mutex);
if (!kvmclock_periodic_sync)
return;
@@ -8474,9 +8472,7 @@ int kvm_arch_post_init_vm(struct kvm *kvm)
static void kvm_unload_vcpu_mmu(struct kvm_vcpu *vcpu)
{
- int r;
- r = vcpu_load(vcpu);
- BUG_ON(r);
+ vcpu_load(vcpu);
kvm_mmu_unload(vcpu);
vcpu_put(vcpu);
}
diff --git a/include/linux/kvm_host.h b/include/linux/kvm_host.h
index f182bbfb0ac5..f8b7ac63219d 100644
--- a/include/linux/kvm_host.h
+++ b/include/linux/kvm_host.h
@@ -560,7 +560,7 @@ static inline int kvm_vcpu_get_idx(struct kvm_vcpu *vcpu)
int kvm_vcpu_init(struct kvm_vcpu *vcpu, struct kvm *kvm, unsigned id);
void kvm_vcpu_uninit(struct kvm_vcpu *vcpu);
-int __must_check vcpu_load(struct kvm_vcpu *vcpu);
+void vcpu_load(struct kvm_vcpu *vcpu);
void vcpu_put(struct kvm_vcpu *vcpu);
#ifdef __KVM_HAVE_IOAPIC
diff --git a/virt/kvm/kvm_main.c b/virt/kvm/kvm_main.c
index c6749d154ebc..66998264619b 100644
--- a/virt/kvm/kvm_main.c
+++ b/virt/kvm/kvm_main.c
@@ -172,17 +172,12 @@ bool kvm_is_reserved_pfn(kvm_pfn_t pfn)
/*
* Switches to specified vcpu, until a matching vcpu_put()
*/
-int vcpu_load(struct kvm_vcpu *vcpu)
+void vcpu_load(struct kvm_vcpu *vcpu)
{
- int cpu;
-
- if (mutex_lock_killable(&vcpu->mutex))
- return -EINTR;
- cpu = get_cpu();
+ int cpu = get_cpu();
preempt_notifier_register(&vcpu->preempt_notifier);
kvm_arch_vcpu_load(vcpu, cpu);
put_cpu();
- return 0;
}
EXPORT_SYMBOL_GPL(vcpu_load);
@@ -192,7 +187,6 @@ void vcpu_put(struct kvm_vcpu *vcpu)
kvm_arch_vcpu_put(vcpu);
preempt_notifier_unregister(&vcpu->preempt_notifier);
preempt_enable();
- mutex_unlock(&vcpu->mutex);
}
EXPORT_SYMBOL_GPL(vcpu_put);
@@ -2786,9 +2780,9 @@ static long kvm_vcpu_ioctl(struct file *filp,
#endif
- r = vcpu_load(vcpu);
- if (r)
- return r;
+ if (mutex_lock_killable(&vcpu->mutex))
+ return -EINTR;
+ vcpu_load(vcpu);
switch (ioctl) {
case KVM_RUN: {
struct pid *oldpid;
@@ -2961,6 +2955,7 @@ static long kvm_vcpu_ioctl(struct file *filp,
}
out:
vcpu_put(vcpu);
+ mutex_unlock(&vcpu->mutex);
kfree(fpu);
kfree(kvm_sregs);
return r;
@@ -0,0 +1,40 @@
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
From: Jim Mattson <jmattson@google.com>
Date: Tue, 30 Oct 2018 12:20:21 -0700
Subject: [PATCH] kvm: x86: Don't modify MSR_PLATFORM_INFO on vCPU reset
If userspace has provided a different value for this MSR (e.g with the
turbo bits set), the userspace-provided value should survive a vCPU
reset. For backwards compatibility, MSR_PLATFORM_INFO is initialized
in kvm_arch_vcpu_setup.
Signed-off-by: Jim Mattson <jmattson@google.com>
Reviewed-by: Drew Schmitt <dasch@google.com>
Cc: Abhiroop Dabral <adabral@paloaltonetworks.com>
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
(cherry picked from commit e53d88af63ab4104e1226b8f9959f1e9903da10b)
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
---
arch/x86/kvm/x86.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/arch/x86/kvm/x86.c b/arch/x86/kvm/x86.c
index 6b1e434ceaf8..93bc3504d39e 100644
--- a/arch/x86/kvm/x86.c
+++ b/arch/x86/kvm/x86.c
@@ -8062,6 +8062,7 @@ struct kvm_vcpu *kvm_arch_vcpu_create(struct kvm *kvm,
int kvm_arch_vcpu_setup(struct kvm_vcpu *vcpu)
{
vcpu->arch.arch_capabilities = kvm_get_arch_capabilities();
+ vcpu->arch.msr_platform_info = MSR_PLATFORM_INFO_CPUID_FAULT;
kvm_vcpu_mtrr_init(vcpu);
vcpu_load(vcpu);
kvm_vcpu_reset(vcpu, false);
@@ -8157,7 +8158,6 @@ void kvm_vcpu_reset(struct kvm_vcpu *vcpu, bool init_event)
kvm_pmu_reset(vcpu);
vcpu->arch.smbase = 0x30000;
- vcpu->arch.msr_platform_info = MSR_PLATFORM_INFO_CPUID_FAULT;
vcpu->arch.msr_misc_features_enables = 0;
vcpu->arch.xcr0 = XFEATURE_MASK_FP;
@@ -0,0 +1,22 @@
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
From: Thomas Lamprecht <t.lamprecht@proxmox.com>
Date: Fri, 6 Sep 2019 13:04:30 +0200
Subject: [PATCH] ntb test: remove unused conflicting SZ_4G define
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
---
drivers/ntb/test/ntb_perf.c | 1 -
1 file changed, 1 deletion(-)
diff --git a/drivers/ntb/test/ntb_perf.c b/drivers/ntb/test/ntb_perf.c
index 427112cf101a..1f8ee33a07a2 100644
--- a/drivers/ntb/test/ntb_perf.c
+++ b/drivers/ntb/test/ntb_perf.c
@@ -74,7 +74,6 @@
#define MAX_SRCS 32
#define DMA_OUT_RESOURCE_TO msecs_to_jiffies(50)
#define DMA_RETRIES 20
-#define SZ_4G (1ULL << 32)
#define MAX_SEG_ORDER 20 /* no larger than 1M for kmalloc buffer */
#define PIDX NTB_DEF_PEER_IDX
-200
View File
@@ -1,200 +0,0 @@
proxmox-ve (5.0-24) unstable; urgency=medium
* depend on newest 4.10.17-4-pve kernel
-- Proxmox Support Team <support@proxmox.com> Tue, 10 Oct 2017 14:39:55 +0200
proxmox-ve (5.0-21) unstable; urgency=medium
* depend on newest 4.10.17-3-pve kernel
-- Proxmox Support Team <support@proxmox.com> Thu, 31 Aug 2017 14:57:17 +0200
proxmox-ve (5.0-16) unstable; urgency=medium
* depend on newest 4.10.17-1-pve kernel
-- Proxmox Support Team <support@proxmox.com> Tue, 11 Jul 2017 11:11:35 +0200
proxmox-ve (5.0-10) unstable; urgency=medium
* depend on newest 4.10.15-1-pve kernel
-- Proxmox Support Team <support@proxmox.com> Wed, 7 Jun 2017 10:36:33 +0200
proxmox-ve (5.0-8) unstable; urgency=medium
* depend on newest 4.10.11-1-pve kernel
-- Proxmox Support Team <support@proxmox.com> Thu, 18 May 2017 09:14:18 +0200
proxmox-ve (5.0-6) unstable; urgency=medium
* depend on newest 4.10.8-1-pve kernel
-- Proxmox Support Team <support@proxmox.com> Thu, 13 Apr 2017 11:24:12 +0200
proxmox-ve (5.0-5) unstable; urgency=medium
* depend on newest 4.10.5-1-pve kernel
* remove old 4.x release key
-- Proxmox Support Team <support@proxmox.com> Tue, 28 Mar 2017 10:14:00 +0200
proxmox-ve (5.0-3) unstable; urgency=medium
* depend on newest 4.10.3-1-pve kernel
-- Proxmox Support Team <support@proxmox.com> Fri, 24 Mar 2017 13:44:18 +0100
proxmox-ve (5.0-2) unstable; urgency=medium
* depend on newest 4.10.1-2-pve kernel
-- Proxmox Support Team <support@proxmox.com> Fri, 10 Mar 2017 10:20:14 +0100
proxmox-ve (5.0-1) unstable; urgency=medium
* Proxmox VE package for Debian Stretch
-- Proxmox Support Team <support@proxmox.com> Fri, 3 Mar 2017 15:56:11 +0100
proxmox-ve (4.4-83) unstable; urgency=medium
* depend on newest 4.4.44-1-pve kernel
-- Proxmox Support Team <support@proxmox.com> Wed, 1 Mar 2017 09:22:26 +0100
proxmox-ve (4.4-82) unstable; urgency=medium
* install PVE release keys in a Debian Stretch compatible way
-- Proxmox Support Team <support@proxmox.com> Thu, 23 Feb 2017 15:14:06 +0100
proxmox-ve (4.4-80) unstable; urgency=medium
* depend on newest 4.4.40-1-pve kernel
-- Proxmox Support Team <support@proxmox.com> Wed, 8 Feb 2017 13:10:57 +0100
proxmox-ve (4.4-76) unstable; urgency=medium
* update version for 4.4 release
-- Proxmox Support Team <support@proxmox.com> Wed, 8 Feb 2017 10:38:33 +0100
proxmox-ve (4.3-74) unstable; urgency=medium
* depend on newest 4.4.35-1-pve kernel
-- Proxmox Support Team <support@proxmox.com> Mon, 5 Dec 2016 10:20:03 +0100
proxmox-ve (4.3-73) unstable; urgency=medium
* depend on newest 4.4.30-1-pve kernel
-- Proxmox Support Team <support@proxmox.com> Wed, 30 Nov 2016 09:43:29 +0100
proxmox-ve (4.3-72) unstable; urgency=medium
* depend on newest 4.4.24-1-pve kernel
-- Proxmox Support Team <support@proxmox.com> Mon, 14 Nov 2016 12:17:16 +0100
proxmox-ve (4.3-67) unstable; urgency=medium
* depend on newest 4.4.21-1-pve kernel
-- Proxmox Support Team <support@proxmox.com> Mon, 10 Oct 2016 13:58:20 +0200
proxmox-ve (4.3-66) unstable; urgency=medium
* depend on newest 4.4.19-1-pve kernel
-- Proxmox Support Team <support@proxmox.com> Wed, 14 Sep 2016 13:23:43 +0200
proxmox-ve (4.2-63) unstable; urgency=medium
* use /etc/apt/trusted.gpg.d/ mechanism to install trusted apt keys
-- Proxmox Support Team <support@proxmox.com> Mon, 29 Aug 2016 12:08:43 +0200
proxmox-ve (4.2-61) unstable; urgency=medium
* depend on newest 4.4.16-1-pve kernel
-- Proxmox Support Team <support@proxmox.com> Wed, 24 Aug 2016 15:11:08 +0200
proxmox-ve (4.2-58) unstable; urgency=medium
* depend on newest 4.4.13-2-pve kernel
-- Proxmox Support Team <support@proxmox.com> Fri, 15 Jul 2016 06:03:16 +0200
proxmox-ve (4.2-55) unstable; urgency=medium
* depend on newest 4.4.13-1-pve kernel
-- Proxmox Support Team <support@proxmox.com> Sat, 25 Jun 2016 11:52:14 +0200
proxmox-ve (4.2-54) unstable; urgency=medium
* depend on newest 4.4.10-1-pve kernel
-- Proxmox Support Team <support@proxmox.com> Fri, 10 Jun 2016 20:56:08 +0200
proxmox-ve (4.0-49) unstable; urgency=medium
* depend on newest 4.4.8-1-pve kernel
-- Proxmox Support Team <support@proxmox.com> Mon, 09 May 2016 10:29:57 +0200
proxmox-ve (4.0-43) unstable; urgency=medium
* depend on newest 4.4.6-1-pve kernel
-- Proxmox Support Team <support@proxmox.com> Mon, 11 Apr 2016 09:35:06 +0200
proxmox-ve (4.0-32) unstable; urgency=medium
* depend on newest 4.2.8-1-pve kernel
-- Proxmox Support Team <support@proxmox.com> Wed, 03 Feb 2016 16:15:41 +0100
proxmox-ve (4.0-31) unstable; urgency=medium
* setup kernel links for installation CD (rescue boot)
-- Proxmox Support Team <support@proxmox.com> Sun, 10 Jan 2016 10:10:37 +0100
proxmox-ve (4.0-29) unstable; urgency=medium
* depend on newest 4.2.6-1-pve kernel
-- Proxmox Support Team <support@proxmox.com> Thu, 31 Dec 2015 12:46:00 +0100
proxmox-ve (4.0-8) unstable; urgency=medium
* depend on newest 4.2.3-2-pve kernel
-- Proxmox Support Team <support@proxmox.com> Tue, 03 Nov 2015 10:40:01 +0100
proxmox-ve (4.0-7) unstable; urgency=medium
* depend on newest 4.2.3-1-pve kernel
-- Proxmox Support Team <support@proxmox.com> Sun, 18 Oct 2015 10:58:21 +0200
proxmox-ve (4.0-6) unstable; urgency=medium
* depend on newest 4.1.3 kernel
-- Proxmox Support Team <support@proxmox.com> Thu, 30 Jul 2015 09:17:30 +0200
proxmox-ve (4.0-1) unstable; urgency=medium
* Proxmox VE package for Debian Jessie
-- Proxmox Support Team <support@proxmox.com> Sat, 28 Feb 2015 17:25:14 +0100
-16
View File
@@ -1,16 +0,0 @@
Package: proxmox-ve
Version: @RELEASE@-@PKGREL@
Architecture: all
Section: admin
Priority: optional
Provides: proxmox-virtual-environment
Conflicts: pve-kernel, proxmox-virtual-environment, proxmox-ve-3.10.0
Replaces: pve-kernel, proxmox-virtual-environment, proxmox-ve-3.10.0
Depends: libc6 (>= 2.7-18), pve-kernel-@KVNAME@, pve-firmware, pve-manager, qemu-server, pve-qemu-kvm, openssh-client, openssh-server, apt, vncterm, spiceterm
Maintainer: Proxmox Support Team <support@proxmox.com>
Description: The Proxmox Virtual Environment
The Proxmox Virtual Environment is an easy to use Open Source
virtualization platform for running Virtual Appliances and Virtual
Machines. This is a meta package which will install everything
needed. This package also depends on the latest available Proxmox
kernel from the @KERNEL_VER@ series.
-21
View File
@@ -1,21 +0,0 @@
Copyright (C) 2016 Proxmox Server Solutions GmbH
This software is written by Proxmox Server Solutions GmbH <support@proxmox.com>
This program is free software; you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation; version 2 dated June, 1991.
This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License for more details.
You should have received a copy of the GNU General Public License
along with this program; if not, write to the Free Software
Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston,
MA 02110-1301 USA
The complete text of the GNU General
Public License can be found in `/usr/share/common-licenses/GPL-2'.
-81
View File
@@ -1,81 +0,0 @@
#! /bin/sh
# Abort if any command returns an error value
set -e
# This script is called as the last step of the installation of the
# package. All the package's files are in place, dpkg has already
# done its automatic conffile handling, and all the packages we depend
# of are already fully installed and configured.
# The following idempotent stuff doesn't generally need protecting
# against being run in the abort-* cases.
case "$1" in
configure)
# Configure this package. If the package must prompt the user for
# information, do it here.
# cleanup - remove Proxmox Release Key key from /etc/apt/trusted.gpg
/usr/bin/apt-key --keyring /etc/apt/trusted.gpg del 9887F95A >/dev/null 2>&1 || /bin/true
# cleanup - remove old stretch-incompatible variant of installing release key
rm -f /etc/apt/trusted.gpg.d/proxmox-ve.gpg /etc/apt/trusted.gpg.d/proxmox-ve.gpg~
# setup kernel links for installation CD (rescue boot)
mkdir -p /boot/pve
ln -sf /boot/vmlinuz-@KVNAME@ /boot/pve/vmlinuz
ln -sf /boot/initrd.img-@KVNAME@ /boot/pve/initrd.img
# There are three sub-cases:
if test "${2+set}" != set; then
# We're being installed by an ancient dpkg which doesn't remember
# which version was most recently configured, or even whether
# there is a most recently configured version.
:
elif test -z "$2" -o "$2" = "<unknown>"; then
# The package has not ever been configured on this system, or was
# purged since it was last configured.
:
else
# Version $2 is the most recently configured version of this
# package.
:
fi ;;
abort-upgrade)
# Back out of an attempt to upgrade this package FROM THIS VERSION
# to version $2. Undo the effects of "prerm upgrade $2".
:
;;
abort-remove)
if test "$2" != in-favour; then
echo "$0: undocumented call to \`postinst $*'" 1>&2
exit 0
fi
# Back out of an attempt to remove this package, which was due to
# a conflict with package $3 (version $4). Undo the effects of
# "prerm remove in-favour $3 $4".
:
;;
abort-deconfigure)
if test "$2" != in-favour -o "$5" != removing; then
echo "$0: undocumented call to \`postinst $*'" 1>&2
exit 0
fi
# Back out of an attempt to deconfigure this package, which was
# due to package $6 (version $7) which we depend on being removed
# to make way for package $3 (version $4). Undo the effects of
# "prerm deconfigure in-favour $3 $4 removing $6 $7".
:
;;
*) echo "$0: didn't understand being called with \`$1'" 1>&2
exit 0;;
esac
exit 0
-19
View File
@@ -1,19 +0,0 @@
#! /bin/sh
# Abort if any command returns an error value
set -e
case "$1" in
purge|remove|upgrade|failed-upgrade|abort-install|abort-upgrade|disappear)
# remove kernel symlinks
rm -f /boot/pve/vmlinuz
rm -f /boot/pve/initrd.img
rmdir --ignore-fail-on-non-empty /boot/pve/ || true
;;
*)
echo "postrm called with unknown argument \`$1'" >&2
exit 1
;;
esac
Binary file not shown.
-11
View File
@@ -1,11 +0,0 @@
Package: pve-headers
Version: @RELEASE@-@PKGREL@
Architecture: all
Section: admin
Priority: optional
Depends: pve-headers-@KVNAME@
Maintainer: Proxmox Support Team <support@proxmox.com>
Description: Latest Proxmox VE Kernel Headers
This is a virtual package which will install the kernel headers
for the latest available proxmox kernel from the @KERNEL_VER@
series.