752 Commits

Author SHA1 Message Date
Rolf Neugebauer
86deeaff90 kernel: Bring 4.4 x86_64 kernel config more in line with 4.9
Signed-off-by: Rolf Neugebauer <rolf.neugebauer@docker.com>
2017-08-21 20:43:30 +01:00
Rolf Neugebauer
ba2e6a5bb8 kernel: Add a Dockerfile to make it easier to configure kernels
The new Dockerfile.kconfig can be used, via the 'kconfig' make target
to build a 'linuxkit/kconfig' images. This images contains the patched
source and default kernel configs for all supported kernels.

It's useful to updating the kernel config files.

While at it, also update the alpine base.

Signed-off-by: Rolf Neugebauer <rolf.neugebauer@docker.com>
2017-08-21 20:43:30 +01:00
Rolf Neugebauer
ffcf5db6ee kernel: Use local kernel source if available
The kernel build currently downloads the source tar ball every
time, which is a little tedious when experimenting with kernel
configs or when compiling the kernel multiple times.

This commit adds a new 'fetch' make target which downloads the
kernel sources into ./sources. Then in the Dockerfile we add
the directory and only download the source if it is not present.

The tarballs signature is till checked on each build.

Signed-off-by: Rolf Neugebauer <rolf.neugebauer@docker.com>
2017-08-20 11:41:59 +01:00
Rolf Neugebauer
9362de0adb kernel: Verify kernel config
Since we supply a full .config file we can check that after
make defconfig/oldconfig it hasn't changed. This should catch
cases where a config option has changed between releases.

Signed-off-by: Rolf Neugebauer <rolf.neugebauer@docker.com>
2017-08-20 11:05:35 +01:00
Rolf Neugebauer
72ed2b3a06 kernel: Rename kernel_config-4.x.x to kernel_config-4.x.x-x86_64
Consistently arch suffixes for kernel config.

Signed-off-by: Rolf Neugebauer <rolf.neugebauer@docker.com>
2017-08-20 10:46:28 +01:00
Rolf Neugebauer
5898bc9f0d kernel: Update to 4.9.44/4.4.83
Signed-off-by: Rolf Neugebauer <rolf.neugebauer@docker.com>
2017-08-18 18:08:32 +01:00
Rolf Neugebauer
516b11d262 kernel: Set DEFAULT_MMAP_MIN_ADDR to 65536/32768
This is a recommended security measure to protect the low portion
of virtual memory. On x86_64 the recommended value is 65536 while
for arm it shouldn't be higher than 32768.

Signed-off-by: Rolf Neugebauer <rolf.neugebauer@docker.com>
2017-08-18 15:18:38 +01:00
Rolf Neugebauer
edf74c249a kernel: Enable CONFIG_ENABLE_MUST_CHECK
This is a compile time option enabling __must_check annotations
for return values.

Signed-off-by: Rolf Neugebauer <rolf.neugebauer@docker.com>
2017-08-18 15:18:38 +01:00
Rolf Neugebauer
3e5ba03cdc kernel: Enable Ethernet Team driver support
While at it also disable an un-used NIC vendor (Netronome).

Signed-off-by: Rolf Neugebauer <rolf.neugebauer@docker.com>
2017-08-18 15:18:38 +01:00
Rolf Neugebauer
ec7c2fe82d kernel: Align arm64 kernel config more with x86
The resulting kernel boots fine on qemu and on Cavium Thunder,
though the latter still has some issues.

Signed-off-by: Rolf Neugebauer <rolf.neugebauer@docker.com>
2017-08-18 15:18:38 +01:00
Rolf Neugebauer
72c2c7f85b kernel: Set LOCALVERSION to "-linuxkit" on arm64 as well
Signed-off-by: Rolf Neugebauer <rolf.neugebauer@docker.com>
2017-08-14 11:01:22 +01:00
Rolf Neugebauer
1882939623 kernel: Update to 4.9.43/4.4.82
Signed-off-by: Rolf Neugebauer <rolf.neugebauer@docker.com>
2017-08-14 10:58:54 +01:00
Rolf Neugebauer
3889f198e5 kernel: Update to 4.9.42/4.4.81
Signed-off-by: Rolf Neugebauer <rolf.neugebauer@docker.com>
2017-08-14 10:45:56 +01:00
Jason A. Donenfeld
f74477def2 wireguard: version bump
Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
2017-08-10 23:17:22 +02:00
Dennis Chen
7f313870a9 arm64: kernel 4.4.x bringup enablement
Enable DEVPTS_MULTIPLE_INSTANCES in kernel configuration file
to avoid the devpts mounting hang issue during bootup when
running LinuxKit.

Signed-off-by: Dennis Chen <dennis.chen@arm.com>
2017-08-09 02:56:36 +00:00
Rolf Neugebauer
4f5582edf2 kernel: Update to 4.9.41/4.4.80
Signed-off-by: Rolf Neugebauer <rolf.neugebauer@docker.com>
2017-08-08 17:46:21 +01:00
Alex Johnson
97b91cf5f2 Installed the MEGARAID_SAS driver as a kernel module to support the RAID controller in Packet.net type 2 servers
Fixes #1245

Signed-off-by: Alex Johnson <hello@alex-johnson.net>
2017-08-07 13:09:02 -07:00
Rolf Neugebauer
a1892cd8f1 kernel: Convert kernel build to a multi-arch image
Signed-off-by: Rolf Neugebauer <rolf.neugebauer@docker.com>
2017-08-03 17:36:22 +01:00
Rolf Neugebauer
0714aa7380 kernel: Remove 4.11.x
It has been EOLed today and won't receive any further updates.

The images are still on hub so can be continued to be used
for the time being.

4.12 support is coming soon.

Signed-off-by: Rolf Neugebauer <rolf.neugebauer@docker.com>
2017-07-28 20:14:01 +01:00
Rolf Neugebauer
57659aa5dd kernel: Update to 4.9.40/4.4.79
Signed-off-by: Rolf Neugebauer <rolf.neugebauer@docker.com>
2017-07-28 19:25:55 +01:00
Dave Freitag
9152d065b6 Add NFS Debug Modules
- Adding NFS debug modules to kernel_config.debug
- Also updating some dead links in the kernels.md doc file

Signed-off-by: Dave Freitag <dcfreita@us.ibm.com>
2017-07-28 10:48:10 -05:00
Jason A. Donenfeld
5b875bd1d4 wireguard: version bump
Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
2017-07-26 04:01:29 +02:00
Rolf Neugebauer
4e4594cb2e kernel: Update to 4.11.12/4.9.39/4.4.78
Signed-off-by: Rolf Neugebauer <rolf.neugebauer@docker.com>
2017-07-24 10:53:45 +01:00
Jason A. Donenfeld
e24cc5c77f wireguard: add into default kernel
This integrates the WireGuard module directly into the kernel build
system.

Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
2017-07-20 16:51:18 +02:00
Rolf Neugebauer
90d1866bdc Merge pull request #2234 from deitch/kernel-tpm-modules
[WIP] Add TPM module builder options to kernel
2017-07-18 09:59:47 +01:00
Avi Deitcher
19ce7e18a2 Add TPM module builder options to kernel
Signed-off-by: Avi Deitcher <avi@deitcher.net>
2017-07-18 11:01:40 +03:00
Rolf Neugebauer
e1bc6e4c55 kernel: Update to 4.11.11/4.9.38/4.4.77
Signed-off-by: Rolf Neugebauer <rolf.neugebauer@docker.com>
2017-07-17 11:02:12 +01:00
Rolf Neugebauer
759e5a8a51 kernel: Update to 4.11.10/4.9.37
Signed-off-by: Rolf Neugebauer <rolf.neugebauer@docker.com>
2017-07-17 10:54:49 +01:00
Rolf Neugebauer
98615f43e7 kernel: Add 4.11 kernel config options for LCOW
This is a semi-educated guess of which kernel config options
may be needed to run LCOW based on the config file posted here:
2e5c2fac44/kernelconfig/4.11/kconfig_for_4_11

Signed-off-by: Rolf Neugebauer <rolf.neugebauer@docker.com>
2017-07-12 18:16:42 +01:00
Rolf Neugebauer
ed18d81191 kernel: Enable more hardware drivers and KVM
- Enables module for some common 10/40G NICs
  from Broadcom, Intel, and Mellanox
- Enable KVM and related modules

These are targeted to support more bare metal
configuration with LinuxKit.

Signed-off-by: Rolf Neugebauer <rolf.neugebauer@docker.com>
2017-07-12 18:16:42 +01:00
Rolf Neugebauer
11e06d3d63 kernel: Update 4.11.x patches
Incorporate the update for the Hyper-V socket patches from
https://github.com/dcui/linux/commits/decui/hv_sock/v4.11/20170511-debug-0628-with-signed-off-by-of-dexuan-fixed
as well as the additional pLCOW requires patches from
2e5c2fac44

Signed-off-by: Rolf Neugebauer <rolf.neugebauer@docker.com>
2017-07-12 18:16:41 +01:00
Rolf Neugebauer
c1e48c37ac Merge pull request #2190 from arm64b/kernel-Makefile-config
ARM64: Add kernel config file for aarch64
2017-07-12 18:12:51 +01:00
Dennis Chen
fb8eb41623 ARM64: Add kernel config file for aarch64
Add the kernel configuration file of arm64.

Signed-off-by: Dennis Chen <dennis.chen@arm.com>
2017-07-12 09:10:17 +00:00
Justin Cormack
4b3fc038b7 Merge pull request #2188 from justincormack/never-metadata-i-didnt-like
Add labels for repo and commit to packages
2017-07-11 18:22:15 +01:00
Justin Cormack
ed38adbc90 Add labels for repo and commit to packages
- use image spec metadata https://github.com/opencontainers/image-spec/blob/master/annotations.md
- omit commit if dirty

Signed-off-by: Justin Cormack <justin.cormack@docker.com>
2017-07-11 14:33:59 +01:00
Dennis Chen
e0a8a1d4df ARM64: Adapt the kernel Dockerfile to multiarch support
The original kernel Dockerfile hardcodes the amd64 as the
only arch supported, this patch removes this kind of hardcode
and make the Dockerfile is ready to support both amd64 and
arm64 by using the runtime arch type.

Signed-off-by: Dennis Chen <dennis.chen@arm.com>
2017-07-11 12:39:27 +00:00
Rolf Neugebauer
aa9b718d8a kernel: Update to 4.11.9/4.9.36/4.4.76
Added a new patch to the 4.11 and 4.9 kernels based on a patch
submitted to stable: https://patchwork.kernel.org/patch/9829039/

This patch fixes a off-by-one error in the VMBus code.

Signed-off-by: Rolf Neugebauer <rolf.neugebauer@docker.com>
2017-07-07 18:41:33 +01:00
Ian Campbell
fe918f8a31 pkg: Run git update-index --refresh before git diff-index.
Otherwise files which have an updated timestamp but no actual changes are
marked as changes because `git diff-index` only uses the `lstat` result and not
the actual file contents. Running `git update-index --refresh` updates the
cache.

Signed-off-by: Ian Campbell <ian.campbell@docker.com>
2017-07-03 10:27:31 +01:00
Ian Campbell
c9b5cbf89b kernel: Calculate HASH and DIRTY in the same way as pkg/package.mk
The definition of `$(TAG)` differs from pkg/package.mk and is only the
HASH+DIRTY since the full tag is defined by the kernel macro and varies for
each kernel.

Also `show-tag` is `show-tags` here due to the multiple builds. Individual
`show-tag_FOO` rules are provided similar to the `build_FOO` rules.

Signed-off-by: Ian Campbell <ian.campbell@docker.com>
2017-07-03 10:27:31 +01:00
Rolf Neugebauer
699a864302 pkg: Update to new Alpine base
Signed-off-by: Rolf Neugebauer <rolf.neugebauer@docker.com>
2017-07-01 18:11:45 +01:00
Rolf Neugebauer
8cee2cd68b kernel: Update to 4.11.8/4.9.35/4.4.75
Signed-off-by: Rolf Neugebauer <rolf.neugebauer@docker.com>
2017-06-30 18:23:29 +01:00
Rolf Neugebauer
40ea10065c kernel: Tweak kernel build
- Combine 'sign' and 'push' targets like it is done for
  package builds.
- Append '-dirty' to the tag if the repository is dirty.
- Don't push to hub if the repository is dirty.

Signed-off-by: Rolf Neugebauer <rolf.neugebauer@docker.com>
2017-06-27 17:43:57 +01:00
Rolf Neugebauer
c12eafeeb2 kernel: Update to 4.11.7/4.9.34/4.4.74
In particular this contains 1be7107fbe18eed3e319 ("mm: larger stack
guard gap, between vmas") which is a fix for CVE-2017-1000364.

Signed-off-by: Rolf Neugebauer <rolf.neugebauer@docker.com>
2017-06-27 10:39:23 +01:00
Rolf Neugebauer
492b6c3fdb kernel: Move some less commonly used features to modules
Module loading on hotplug and boot seems to work now, so
move some less commonly used kernel features and drivers
out of the kernel into drivers. Specifically:
- Devices: All non-virtual network device drivers
- Networking: GRE, GENEVE, PPP, non-essential IPv6 protos,
  L2TP, MPLS_GSO, bonding, IPSec (XFRM), openvswitch,
  queueing/schedulers
- FS: SUNRPC, NFS, NFSD, LOCKD, NTFS
- Misc: ATA over Ethernet

Remove Nozomi serial driver. It doesn't seem to be used
on any of our platforms.

The config files were also run through 'make defconfig &&
make oldconfig' to update any missing options.

Signed-off-by: Rolf Neugebauer <rolf.neugebauer@docker.com>
2017-06-22 19:32:13 +01:00
Rolf Neugebauer
4d8f8956b3 kernel: Update to 4.11.6/4.9.33/4.4.73
Signed-off-by: Rolf Neugebauer <rolf.neugebauer@docker.com>
2017-06-22 19:32:13 +01:00
Rolf Neugebauer
974bc56886 kernel: Remove elfutils-dev package
It clashes with libelf-dev but libelf-dev is sufficient
to compile the kernel. This also allows us to remove the
'|| true' from the 'apk add', catching errors with the
tools installation.

Signed-off-by: Rolf Neugebauer <rolf.neugebauer@docker.com>
2017-06-22 19:32:12 +01:00
Riyaz Faizullabhoy
130800446a alpine: add zfs package
Signed-off-by: Riyaz Faizullabhoy <riyaz.faizullabhoy@docker.com>
2017-06-21 17:54:45 -07:00
Riyaz Faizullabhoy
6b5ef8c70e alpine: include gnupg package
Signed-off-by: Riyaz Faizullabhoy <riyaz.faizullabhoy@docker.com>
2017-06-21 17:49:51 -07:00
Riyaz Faizullabhoy
503c08a6fb Add PGP key for 00411886 (torvalds@linux-foundation.org)
Signed-off-by: Riyaz Faizullabhoy <riyaz.faizullabhoy@docker.com>
2017-06-20 10:05:33 -07:00
Justin Cormack
324605c48c Merge pull request #2068 from mscribe/master
Verify kernel with GPG and sha256 checksum
2017-06-20 09:50:47 -07:00