]> git.proxmox.com Git - pve-kernel.git/blame - README
backport: block: fix silent corruption in Linux kernel 4.15
[pve-kernel.git] / README
CommitLineData
ba2f1a67
FG
1KERNEL SOURCE:
2==============
3
4We currently use the Ubuntu kernel sources, available from:
5
1e99f45b 6 http://kernel.ubuntu.com/git/ubuntu/ubuntu-bionic.git/
ba2f1a67
FG
7
8Ubuntu will maintain those kernels till:
9
10 https://wiki.ubuntu.com/Kernel/Dev/ExtendedStable
11
12
13Additional/Updated Modules:
14---------------------------
15
16- include latest e1000e driver from intel/sourceforge
17
44403fcc 18- include latest igb driver from intel/sourceforge
ba2f1a67
FG
19
20- include native OpenZFS filesystem kernel modules for Linux
21
22 * https://github.com/zfsonlinux/
23
24 For licensing questions, see: http://open-zfs.org/wiki/Talk:FAQ
25
ba2f1a67 26
44403fcc
FG
27RELATED PACKAGES:
28=================
29
30proxmox-ve
31----------
ba2f1a67 32
44403fcc 33top level meta package, depends on current default kernel series meta package.
ba2f1a67 34
44403fcc 35git clone git://git.proxmox.com/git/proxmox-ve.git
ba2f1a67 36
44403fcc
FG
37pve-kernel-meta
38---------------
ba2f1a67 39
44403fcc 40depends on latest kernel and header package within a certain kernel series,
1e99f45b 41e.g., pve-kernel-4.15 / pve-headers-4.15
ba2f1a67 42
44403fcc 43git clone git://git.proxmox.com/git/pve-kernel-meta.git
ba2f1a67 44
44403fcc
FG
45pve-firmware
46------------
ba2f1a67 47
44403fcc 48contains the firmware for all released PVE kernels.
ba2f1a67 49
44403fcc 50git clone git://git.proxmox.com/git/pve-firmware.git
ba2f1a67 51
ba2f1a67 52
44403fcc
FG
53NOTES:
54======
ba2f1a67 55
8b4e1fa9
SI
56ABI versions, package versions and package name:
57------------------------------------------------
58
59We follow debian's versioning w.r.t ABI changes:
60
61https://kernel-team.pages.debian.net/kernel-handbook/ch-versions.html
62https://wiki.debian.org/DebianKernelABIChanges
63
64The debian/rules file has a target comparing the build kernel's ABI against the
65version stored in the repository and indicates when an ABI bump is necessary.
66An ABI bump within one upstream version consists of incrementing the KREL
67variable in the Makefile, rebuilding the packages and running 'make abiupdate'
68(the 'abiupdate' target in 'Makefile' contains the steps for consistently
69updating the repository).
70
ba2f1a67
FG
71Watchdog blacklist
72------------------
73
74By default, all watchdog modules are black-listed because it is totally undefined
75which device is actually used for /dev/watchdog.
76We ship this list in /lib/modprobe.d/blacklist_pve-kernel-<VERSION>.conf
77The user typically edit /etc/modules to enable a specific watchdog device.
78
79Additional information
80----------------------
81
82We use the default configuration provided by Ubuntu, and apply
44403fcc
FG
83the following modifications:
84
043808ec 85NOTE: For the exact and current list see debian/rules (PVE_CONFIG_OPTS)
44403fcc
FG
86
87- enable INTEL_MEI_WDT=m (to allow disabling via patch)
ba2f1a67 88
44403fcc
FG
89- disable CONFIG_SND_PCM_OSS (enabled by default in Ubuntu, not needed)
90
91- switch CONFIG_TRANSPARENT_HUGEPAGE to MADVISE from ALWAYS
ba2f1a67
FG
92
93- enable CONFIG_CEPH_FS=m (request from user)
94
95- enable common CONFIG_BLK_DEV_XXX to avoid hardware detection
0b82622c 96 problems (udev, update-initramfs have serious problems without that)
ba2f1a67
FG
97
98 CONFIG_BLK_DEV_SD=y
99 CONFIG_BLK_DEV_SR=y
100 CONFIG_BLK_DEV_DM=y
101
102- add workaround for Debian bug #807000 (see
103 https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=807000)
104
105 CONFIG_BLK_DEV_NVME=y
106
107- compile NBD and RBD modules
108 CONFIG_BLK_DEV_NBD=m
109 CONFIG_BLK_DEV_RBD=m
110
043808ec 111- enable IBM JFS file system as module
ba2f1a67 112
043808ec 113 enable it as requested by users (bug #64)
ba2f1a67 114
043808ec 115- enable apple HFS and HFSPLUS as module
ba2f1a67 116
043808ec 117 enable it as requested by users
ba2f1a67
FG
118
119- enable CONFIG_BCACHE=m (requested by user)
120
121- enable CONFIG_BRIDGE=y
122
123 Else we get warnings on boot, that
124 net.bridge.bridge-nf-call-iptables is an unknown key
125
126- enable CONFIG_DEFAULT_SECURITY_APPARMOR
127
128 We need this for lxc
44403fcc 129
ba2f1a67
FG
130- set CONFIG_CPU_FREQ_DEFAULT_GOV_PERFORMANCE=y
131
132 because if not set, it can give some dynamic memory or cpu frequencies
133 change, and vms can crash (mainly windows guest).
134
135 see http://forum.proxmox.com/threads/18238-Windows-7-x64-VMs-crashing-randomly-during-process-termination?p=93273#post93273
136
137- use 'deadline' as default scheduler
138
139 This is the suggested setting for KVM. We also measure bad fsync
140 performance with ext4 and cfq.
141
142- disable CONFIG_INPUT_EVBUG
143
144 Module evbug is not blacklisted on debian, so we simply disable it
145 to avoid key-event logs (which is a big security problem)
146
44403fcc
FG
147- enable CONFIG_MODVERSIONS (needed for ABI tracking)
148
149- switch default UNWINDER to FRAME_POINTER
ba2f1a67 150
44403fcc 151 the recently introduced ORC_UNWINDER is not 100% stable yet, especially in combination with ZFS
ba2f1a67 152
44403fcc 153- enable CONFIG_PAGE_TABLE_ISOLATION (Meltdown mitigation)