Commit Graph

61 Commits

Author SHA1 Message Date
Justin Cormack
82ea5c0d90 Merge pull request #836 from justincormack/yama
Add Yama LSM
2016-12-14 17:49:27 -08:00
Justin Cormack
822e4df468 Add Yama LSM
Default config is restricted ptrace, processes can only ptrace
related processes, such as child processes, rather than any process
with the same uid.

Signed-off-by: Justin Cormack <justin.cormack@docker.com>
2016-12-14 17:04:36 -08:00
Justin Cormack
88c3d98af4 Tweak kernel networking options
In 4.9 IPVLAN support needs NET_L3_MASTER_DEV to work.

Signed-off-by: Justin Cormack <justin.cormack@docker.com>
2016-12-14 16:41:12 -08:00
Justin Cormack
3b774e3657 Make AUFS optional and ship choice of kernels
This seems the best option, although none are great

- build with `make AUFS=1` to build with AUFS support, currently with 4.8 kernel
- default is to build without AUFS support, with 4.9 kernel

This recognises that AUFS supprot is temporary #620 and only there until
we can phase it out on desktop editions, and allow the other editions that
never shipped with AUFS to ship something very close to mainline.

However we do still apply the patches so that the non AUFS branch runs fine on
all platforms, so it can be tested elsewhere.

We may be able to move the kernel versions back in line when 4.9 aufs support is out.

Plan is to shift CI to build both sets of images, and get the Desktop editions to
pick up the aufs set automatically, once this is merged.

Signed-off-by: Justin Cormack <justin.cormack@docker.com>
2016-12-13 18:23:45 -08:00
Riyaz Faizullabhoy
6db87549c4 Set CONFIG_LEGACY_VSYSCALL to NONE and vsyscall=emulate
Regenerated the kernel config from container, which bumped the kernel
version and included some other fixes.  Also bumps the check-config
container to check for VSYSCALL_NATIVE

Signed-off-by: Riyaz Faizullabhoy <riyaz.faizullabhoy@docker.com>
2016-12-09 12:09:35 -08:00
Riyaz Faizullabhoy
9284759f2c Disable kexec from kernel_config, revert sysctl config because key is now unknown
Signed-off-by: Riyaz Faizullabhoy <riyaz.faizullabhoy@docker.com>
2016-12-07 11:43:10 -08:00
Rolf Neugebauer
d3b065090e kernel: limit number of CPUs to 128
128 CPUs seems plenty for now and it allows for the
debug kernels to boot on Hyper-V without modifications. It may
also have the added benefit of reducing some data structures
allocated per CPU (in particular for Debug kernels).

Signed-off-by: Rolf Neugebauer <rolf.neugebauer@docker.com>
2016-11-18 16:36:23 +00:00
Justin Cormack
734b901d14 Make oldconfig for 4.8.8 kernel
Most new options disabled, a few picked.

Signed-off-by: Justin Cormack <justin.cormack@docker.com>
2016-11-18 13:46:29 +00:00
Justin Cormack
a7451a2206 Disable EFI framebuffer
Azure only uses the Hyper-V framebuffer, so we should not need this.

Simplify setup for graphics options we are not using.

Signed-off-by: Justin Cormack <justin.cormack@docker.com>
2016-11-16 10:42:19 -05:00
Justin Cormack
d81f00b125 Update kernel config
- remove unused graphics options
- move W^X test to debug kernel #685
- reboot on kernel panic fix #660

Signed-off-by: Justin Cormack <justin.cormack@docker.com>
2016-11-08 16:12:29 +00:00
Justin Cormack
6132c69857 Keep vmlinux in build media for kernel debugging
Signed-off-by: Justin Cormack <justin.cormack@docker.com>
2016-11-07 14:45:37 +00:00
Justin Cormack
62a738a965 Add audit to kernel config
Currently just has syscall audit as no LSM.

See #52

Signed-off-by: Justin Cormack <justin.cormack@docker.com>
2016-10-28 18:12:51 +01:00
Justin Cormack
eec756c494 Add Memory Resource Controller Kernel Memory accounting cgroup support
Signed-off-by: Justin Cormack <justin.cormack@docker.com>
2016-10-28 11:06:07 +01:00
Justin Cormack
9deed26ba6 Additional requested kernel features
- PPP https://github.com/docker/for-mac/issues/851
- NBD for infinit
- extra virtualisation options

Signed-off-by: Justin Cormack <justin.cormack@docker.com>
2016-10-26 17:00:24 +01:00
Justin Cormack
65b7194e13 Add mutiple pts support
I think this may have got mangled in the kernel upgrade/downgrade.

diff file is still messy due to version changes.

Signed-off-by: Justin Cormack <justin.cormack@docker.com>
2016-10-26 15:08:14 +01:00
Justin Cormack
964f235150 Add more trace functions to kernel config
Also disable Hyper-V memory ballooning, enable some mroe security options.

Signed-off-by: Justin Cormack <justin.cormack@docker.com>
2016-10-24 12:43:41 +01:00
Justin Cormack
c66ce62266 Add more network and crypto modules including enough for ipsec
CRYPTO_ECHAINIV took the longest to find, which is needed.

Fix #598

Signed-off-by: Justin Cormack <justin.cormack@docker.com>
2016-10-11 16:04:05 +01:00
Justin Cormack
69f290d28f Remove support for arm kernel build
See #449. Plan is to use upstream Alpine kernel for Arm, as
does not need vsock, hvsock or aufs.

Signed-off-by: Justin Cormack <justin.cormack@docker.com>
2016-08-31 14:23:40 +01:00
Natanael Copa
66ba586cac Move built kernel to arch specific subdir
We want be able to build kernels for different archs without that they
clash with each other so we but the generated files into an $arch subdir.

Signed-off-by: Natanael Copa <natanael.copa@docker.com>
2016-07-25 17:18:02 +02:00
Justin Cormack
4c68383d56 Remove some VMWare devices
In particular vsock causes issues with virtio vsock

We are not supporting VMWare platform at present so not relevant..

Signed-off-by: Justin Cormack <justin.cormack@docker.com>
2016-07-25 14:23:24 +01:00
Justin Cormack
993237bdcf Add default SCSI device used by VMWare Fusion
As this is the default emulation, nicer to have it work.

Signed-off-by: Justin Cormack <justin.cormack@docker.com>
2016-07-22 13:41:45 +01:00
Justin Cormack
79076c4fbd Add VMWare kernel features
Signed-off-by: Justin Cormack <justin.cormack@docker.com>
2016-07-22 12:54:20 +01:00
Rolf Neugebauer
9d5797cdd3 kernel: Update to 4.4.15
patches from: https://github.com/rneugeba/linux-stable/tree/v4.4.15-moby

Signed-off-by: Rolf Neugebauer <rolf.neugebauer@docker.com>
2016-07-12 10:36:57 +01:00
David Sheets
bd33169d49 linux: allow kernel module unloading
The ability to unload kernel modules helps with rapid development of kernel
modules or Moby-integrated functionality. It has no negative side effects
as far as I am aware.

Signed-off-by: David Sheets <dsheets@docker.com>
2016-07-11 11:48:46 -07:00
Justin Cormack
c8b5ffcef0 add e1000 drivers, allows qemu default setup to find an ethernet, and used frequently in emulated environments
Signed-off-by: Justin Cormack <justin.cormack@docker.com>
2016-07-08 16:26:16 +01:00
Justin Cormack
880966311c Updated kernel config
Remove one module, Xen ones not removeable. Make oldconfig.

Signed-off-by: Justin Cormack <justin.cormack@docker.com>
2016-07-04 17:03:10 +01:00
Daniel Hiltgen
b06eb1eb77 Add SATA disk support
Increase the number of hypervisors where Moby can run and detect
the disks.  With this change, I'm able to boot under KVM and see
the disk detected, formatted and mounted as expected.
2016-06-17 08:11:46 -07:00
Daniel Hiltgen
56c6c3a0a9 Add support for console on tty1
When running moby under other hypervisors, requiring troubleshooting on
the serial port can be painful.  This change enables console support on
tty1 similar to the way prior boot2docker images worked.
2016-06-16 17:17:34 -07:00
Justin Cormack
ed34c13840 Kernel config for CDROM support (for Azure)
Signed-off-by: Justin Cormack <justin.cormack@docker.com>
2016-06-14 11:30:47 +01:00
Justin Cormack
9c426928ef Add CRIU support
Also enables expert so a bunch of other options showing

Signed-off-by: Justin Cormack <justin.cormack@docker.com>
2016-06-13 16:33:31 +01:00
Madhu Venugopal
9d7835d6c4 Enabling IPVS kernel configs to support built-in load-balancing
Signed-off-by: Madhu Venugopal <madhu@docker.com>
2016-06-06 15:34:30 -07:00
Justin Cormack
3db42c2753 add ipvs conntrack and other missing net options
Signed-off-by: Justin Cormack <justin.cormack@docker.com>
2016-06-06 23:17:44 +01:00
Rolf Neugebauer
255a92a3dc kernel: enable VFAT and ISO9660 Filesystems in the kernel
DOS filesystems are handy for embedded development. ISO FS was
requested/suggested somewhere on a forum.

Signed-off-by: Rolf Neugebauer <rolf.neugebauer@docker.com>
2016-05-19 10:35:53 +01:00
Justin Cormack
3c3a89b8c7 add Intel 10g VF for AWS, other useful network options
Signed-off-by: Justin Cormack <justin.cormack@docker.com>
2016-05-10 11:01:48 +01:00
Justin Cormack
6165133e8b add Xen net device
Signed-off-by: Justin Cormack <justin.cormack@docker.com>
2016-05-07 10:15:10 +01:00
Justin Cormack
375439e2f9 add xen blockdev support
Signed-off-by: Justin Cormack <justin.cormack@docker.com>
2016-05-06 17:45:17 +01:00
Justin Cormack
ceb7bbf3e4 add framebuffer console support
Signed-off-by: Justin Cormack <justin.cormack@docker.com>
2016-05-04 18:28:06 +01:00
Justin Cormack
63f5178cf8 add nfs client and server support, fix #117
Signed-off-by: Justin Cormack <justin.cormack@docker.com>
2016-05-04 13:24:48 +01:00
Justin Cormack
95e37843cc Add a local prefix '-moby' to the kernel name
We are now using a custom kernel not unmodified upstream, so
best to identify it.

Also fix https://github.com/docker/pinata/issues/2153

Signed-off-by: Justin Cormack <justin.cormack@docker.com>
2016-04-26 12:25:56 +01:00
Justin Cormack
8a4b9a7819 Switch from busybox mdev to kernel devtmpfs
This is simpler, and as a by-product should resolve
https://github.com/docker/pinata/issues/1968
as it uses the now-more-correct loop device names
that newer util-linux expects.

Signed-off-by: Justin Cormack <justin.cormack@docker.com>
2016-04-25 12:03:32 +01:00
Rolf Neugebauer
73a0d1671e kernel,initrd: add CIFS to the kernel and cifs-utils to the initrd
Needed to enable SMB/CIFS mounts on Windows hosts

Signed-off-by: Rolf Neugebauer <rolf.neugebauer@docker.com>
2016-04-15 14:51:27 +01:00
Ian Campbell
5aa8173876 hyperv-socks: Backport patches.
Signed-off-by: Ian Campbell <ian.campbell@docker.com>
2016-04-12 14:36:58 +01:00
Ian Campbell
eb221b4d4f Add VSOCK patches
These are WIP taken from git@github.com:stefanha/linux.git#vsock
(==4c9d2a6be1c6, using "cherry-pick -x") and correspond to RFC v5 of the
frontend patches posted in
http://thread.gmane.org/gmane.linux.kernel.virtualization/27455

There is no corresponding spec proposal update yet, but this set of patches
correspond (roughly) to addressing the feedback on v4 of the spec proposal
http://thread.gmane.org/gmane.comp.emulators.virtio.devel/1062.

kernel_config.arm modifications copied from x86, not tested.

Added /etc/kernel-patches/ directory to the image to be consumed by the
licensing.

Signed-off-by: Ian Campbell <ian.campbell@docker.com>
2016-04-05 13:40:36 +01:00
Justin Cormack
6dc57f8817 update to 4.4.6 stable kernel series
Signed-off-by: Justin Cormack <justin.cormack@docker.com>
2016-04-04 14:04:55 +01:00
Rolf Neugebauer
b8b9126323 kernel: enable CONNECTOR and netlink MMAP access
Used by the Hyper-V daemons

Signed-off-by: Rolf Neugebauer <rolf.neugebauer@docker.com>
2016-01-28 09:14:11 -08:00
Rolf Neugebauer
ed1f926ed5 kernel: enable SCSI disk support
This is needed the get HD access in a Hyper-V VM
2016-01-24 17:40:09 +00:00
Rolf Neugebauer
3361963d6c kernel: add Hyper-V para-virtual device drivers to the kernel
Signed-off-by: Rolf Neugebauer <rolf.neugebauer@docker.com>
2016-01-22 17:12:00 +00:00
Justin Cormack
2fc1137a74 kernel config: enable group scheduling in CFQ
Signed-off-by: Justin Cormack <justin.cormack@docker.com>
2016-01-21 21:52:58 +00:00
Justin Cormack
978c9ff6ab add kexec support
Signed-off-by: Justin Cormack <justin.cormack@unikernel.com>
2016-01-18 22:25:58 +00:00
Justin Cormack
1002ae2921 add virtio scsi support
Signed-off-by: Justin Cormack <justin.cormack@unikernel.com>
2016-01-11 15:28:03 +00:00