]> git.proxmox.com Git - pve-kernel-jessie.git/blob - README
buildsys: update make upload target for stretch
[pve-kernel-jessie.git] / README
1 KERNEL SOURCE:
2 ==============
3
4 We currently use the Ubuntu kernel sources, available from:
5
6 http://kernel.ubuntu.com/git/ubuntu/ubuntu-xenial.git/
7
8 Ubuntu will maintain those kernels till:
9
10 https://wiki.ubuntu.com/Kernel/Dev/ExtendedStable
11
12
13 Additional/Updated Modules:
14 ---------------------------
15
16 - include latest e1000e driver from intel/sourceforge
17
18 - include latest ixgbe driver from intel/sourceforge
19
20 - include latest igb driver from intel/sourceforge
21
22 # Note: hpsa does not compile with kernel 3.19.8
23 #- include latest HPSA driver (HP Smart Array)
24 #
25 # * http://sourceforge.net/projects/cciss/
26
27 - include native OpenZFS filesystem kernel modules for Linux
28
29 * https://github.com/zfsonlinux/
30
31 For licensing questions, see: http://open-zfs.org/wiki/Talk:FAQ
32
33 - include latest DRBD 9 driver, see http://drbd.linbit.com/home/what-is-drbd/
34
35
36 FIRMWARE:
37 =========
38
39 We create our own firmware package, which includes the firmware for
40 all proxmox-ve kernels. So far this include
41
42 pve-kernel-2.6.18
43 pve-kernel-2.6.24
44 pve-kernel-2.6.32
45 pve-kernel-3.10.0
46 pve-kernel-3.19.0
47
48 We use 'find-firmware.pl' to extract lists of required firmeware
49 files. The script 'assemble-firmware.pl' is used to read those lists
50 and copy the files from various source directory into a target
51 directory.
52
53 We do not include firmeware for some wireless HW when there is a
54 separate debian package for that, for example:
55
56 zd1211-firmware
57 atmel-firmware
58 bluez-firmware
59
60
61 PATCHES:
62 --------
63
64 bridge-patch.diff: Avoid bridge problems with changing MAC
65 see also: http://forum.openvz.org/index.php?t=msg&th=5291
66
67 Behaviour after 2.6.27 has changed slighly - after setting mac address
68 of bridge device, then address won't change. So we could omit
69 that patch, requiring to set hwaddress in /etc/network/interfaces.
70
71 Watchdog blacklist
72 ------------------
73
74 By default, all watchdog modules are black-listed because it is totally undefined
75 which device is actually used for /dev/watchdog.
76 We ship this list in /lib/modprobe.d/blacklist_pve-kernel-<VERSION>.conf
77 The user typically edit /etc/modules to enable a specific watchdog device.
78
79 Additional information
80 ----------------------
81
82 We use the default configuration provided by Ubuntu, and apply
83 the following modification:
84
85 see Makefile (PVE_CONFIG_OPTS)
86
87 - enable CONFIG_CEPH_FS=m (request from user)
88
89 - enable common CONFIG_BLK_DEV_XXX to avoid hardware detection
90 problems (udev, undate-initramfs have serious problems without that)
91
92 CONFIG_BLK_DEV_SD=y
93 CONFIG_BLK_DEV_SR=y
94 CONFIG_BLK_DEV_DM=y
95
96 - add workaround for Debian bug #807000 (see
97 https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=807000)
98
99 CONFIG_BLK_DEV_NVME=y
100
101 - compile NBD and RBD modules
102 CONFIG_BLK_DEV_NBD=m
103 CONFIG_BLK_DEV_RBD=m
104
105 - set LOOP_MIN_COUNT to 8 (debian defaults)
106 CONFIG_BLK_DEV_LOOP_MIN_COUNT=8
107
108 - disable module signatures (CONFIG_MODULE_SIG)
109
110 - enable IBM JFS file system
111
112 This is disabled in RHEL kernel for no real reason, so we enable
113 it as requested by users (bug #64)
114
115 - enable apple HFS and HFSPLUS
116
117 This is disabled in RHEL kernel for no real reason, so we enable
118 it as requested by users
119
120 - enable CONFIG_BCACHE=m (requested by user)
121
122 - enable CONFIG_BRIDGE=y
123
124 Else we get warnings on boot, that
125 net.bridge.bridge-nf-call-iptables is an unknown key
126
127 - enable CONFIG_DEFAULT_SECURITY_APPARMOR
128
129 We need this for lxc
130
131 - set CONFIG_CPU_FREQ_DEFAULT_GOV_PERFORMANCE=y
132
133 because if not set, it can give some dynamic memory or cpu frequencies
134 change, and vms can crash (mainly windows guest).
135
136 see http://forum.proxmox.com/threads/18238-Windows-7-x64-VMs-crashing-randomly-during-process-termination?p=93273#post93273
137
138 - use 'deadline' as default scheduler
139
140 This is the suggested setting for KVM. We also measure bad fsync
141 performance with ext4 and cfq.
142
143 - disable CONFIG_INPUT_EVBUG
144
145 Module evbug is not blacklisted on debian, so we simply disable it
146 to avoid key-event logs (which is a big security problem)
147
148 Testing final kernel with kvm
149 -----------------------------
150
151 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
152