Commit Graph

1467 Commits

Author SHA1 Message Date
Justin Cormack
9fe9e95349 Replace mkinitrd.sh with a tool to convert base image to initrd
Better split between content and tools.

Signed-off-by: Justin Cormack <justin.cormack@docker.com>
2017-02-01 22:32:34 +00:00
David Sheets
2e39ad92e2 transfused perfstat: fix bug with running multiple perfstats in a row (#1129)
After freeing the head of the perfstat block list, we must set it to NULL
to indicate that new blocks must be allocated. Previously, we risked
segfaults by trying to use a freed list.

Signed-off-by: David Sheets <dsheets@docker.com>
2017-02-01 20:24:21 +00:00
Justin Cormack
6724a8780d Merge pull request #1126 from justincormack/move-ebpf
Move ebpf to top level
2017-02-01 11:41:43 +00:00
Justin Cormack
ad528b4bea Merge pull request #1123 from dsheets/transfused-perfstat
transfused perfstat
2017-02-01 11:04:14 +00:00
Justin Cormack
1dfa213db0 Move ebpf to top level
Do not build by default, as we are not using yet.

Clean up the gitignores at the same time as they were affected.

Signed-off-by: Justin Cormack <justin.cormack@docker.com>
2017-02-01 10:58:52 +00:00
Justin Cormack
30d0b59b8d Minimise the motd
Signed-off-by: Justin Cormack <justin.cormack@docker.com>
2017-01-31 21:02:57 +00:00
David Sheets
dc7069db1c transfused: add perfstat machinery
This adds two new control channel requests, START_PERFSTAT and
STOP_PERFSTAT, that begin and end performance statistics collection
respectively. START_PERFSTAT takes the name of the mountpoint on which
to enable statistics collection and returns the current monotonic time.
STOP_PERFSTAT takes the name of the mountpoint on which to disable
statistics collection and returns the current monotonic time and the
message timings that have been collected.

Performance statistics are collected in a linked list of blocks. pthread
locks are used for synchronization.

Signed-off-by: David Sheets <dsheets@docker.com>
2017-01-31 18:07:31 +00:00
Justin Cormack
a6416a1214 Merge pull request #1121 from justincormack/fsck-y
Try to fsck harder
2017-01-31 17:50:16 +00:00
Riyaz Faizullabhoy
56899b318d reformat tags before digests
Signed-off-by: Riyaz Faizullabhoy <riyaz.faizullabhoy@docker.com>
2017-01-31 09:33:06 -08:00
Justin Cormack
64bcf1adce Try to fsck harder
This will potentially leave stuff in lost+found but may be able to
recover from more filesystem corruption.

See #736

Signed-off-by: Justin Cormack <justin.cormack@docker.com>
2017-01-31 12:42:37 +00:00
Justin Cormack
76c20080d9 Merge pull request #1120 from justincormack/checkconfigup
Update check-config script
2017-01-31 10:55:47 +00:00
Justin Cormack
db101a1e06 Update check-config script
Signed-off-by: Justin Cormack <justin.cormack@docker.com>
2017-01-31 10:31:26 +00:00
Justin Cormack
699560aaad Clean up GCE image build
In line with the others, support any file names on input.

Signed-off-by: Justin Cormack <justin.cormack@docker.com>
2017-01-30 22:04:34 +00:00
Justin Cormack
38b6847669 Merge pull request #1116 from justincormack/iso-cleanup
Cleanup BIOS ISO builds
2017-01-30 20:32:23 +00:00
Justin Cormack
0fca0245c4 Cleanup BIOS ISO builds
- do not require specific filenames for input
- change EFI build to use `docker run`

Signed-off-by: Justin Cormack <justin.cormack@docker.com>
2017-01-30 15:18:06 +00:00
Justin Cormack
ddb41952ef Update Go to 1.7.5 and remove unnecessary linker flag
Signed-off-by: Justin Cormack <justin.cormack@docker.com>
2017-01-30 14:10:41 +00:00
David Sheets
85f401ac79 transfused: keep a linked list of open connections
Signed-off-by: David Sheets <dsheets@docker.com>
2017-01-30 10:47:46 +00:00
David Sheets
b10d61a94b transfused: rename some types to end in _t
Signed-off-by: David Sheets <dsheets@docker.com>
2017-01-30 10:37:06 +00:00
Justin Cormack
483ea5cb81 Merge pull request #1112 from justincormack/patchfilesfix
Clean up patch copying
2017-01-29 21:34:38 +00:00
Justin Cormack
dfa8321eba Split kernel files into their own image
This means the base system build and kernel build can be split
without dependencies, and just assembled later.

Signed-off-by: Justin Cormack <justin.cormack@docker.com>
2017-01-29 21:07:20 +00:00
Justin Cormack
8ff1fe144d Clean up patch copying
Signed-off-by: Justin Cormack <justin.cormack@docker.com>
2017-01-29 20:26:51 +00:00
Justin Cormack
af88a66bc7 Unmount database after copying
Signed-off-by: Justin Cormack <justin.cormack@docker.com>
2017-01-28 17:09:01 +00:00
Justin Cormack
9e18a0ae4c Fix mountpoint for mac
Signed-off-by: Justin Cormack <justin.cormack@docker.com>
2017-01-28 14:45:44 +00:00
Justin Cormack
1674534757 Merge pull request #1108 from justincormack/osx-mountpoint
Mount osx 9p db on /mnt
2017-01-28 12:27:20 +00:00
Justin Cormack
3b6d1ae4f2 Mount osx 9p db on /mnt
Otherwise interferes with transfused startup.

Signed-off-by: Justin Cormack <justin.cormack@docker.com>
2017-01-28 12:03:02 +00:00
Justin Cormack
eef2e06887 Merge pull request #1107 from justincormack/dockerup
Update to Docker 1.13.1-rc1
2017-01-28 10:42:04 +00:00
Justin Cormack
25c357b375 Update to Docker 1.13.1-rc1
Signed-off-by: Justin Cormack <justin.cormack@docker.com>
2017-01-28 10:16:15 +00:00
Justin Cormack
79d210e70b Update to AUFS 20170130
This now includes the patch we were carrying.

Signed-off-by: Justin Cormack <justin.cormack@docker.com>
2017-01-28 10:11:57 +00:00
Rolf Neugebauer
5e3865e030 kernel: Update 4.9.6 patches
- Update VMBus lockup patch (0009) based on the one submitted to LKML
- Remove hack to forcea TimeSync protocol to version 3 (0005)
- Properly cherry-pick patch 0008 (was missing the cherry-pick reference)
- Add a new patch which properly negotiates the TimeSync protocol (0012)
- The latter required cherry-picking 0010 and 0011

Signed-off-by: Rolf Neugebauer <rolf.neugebauer@docker.com>
2017-01-27 16:12:24 +00:00
Riyaz Faizullabhoy
07e9208236 Update kernels to 4.9.6 and 4.4.45
Signed-off-by: Riyaz Faizullabhoy <riyaz.faizullabhoy@docker.com>
2017-01-26 17:25:22 -08:00
Justin Cormack
7d14547e87 Rework container creation
- simplify the process by having the riddler container build the rootfs and config
- output tarred up rootfs and config.json as otherwise file ownership not preserved
- allow easy build of a collection of container tarballs with another conversion script

This makes it easy to choose which container images you want and just convert any
set to a initrd image
```
tar cf - container1.tar container2.tar | docker run -i tartar2initrd > initrd.img
```

Next stage will use a manifest to select the ones to add for each edition.

Signed-off-by: Justin Cormack <justin.cormack@docker.com>
2017-01-25 22:53:28 +00:00
Justin Cormack
fa4f1aaedc Start diagnostics server earlier, before Docker
Allows it to be used to see what the boot state is.

Signed-off-by: Justin Cormack <justin.cormack@docker.com>
2017-01-25 15:17:55 +00:00
Justin Cormack
53c146d804 Clean up gce image
Was missing in `make clean` and not noticed as we do not build by default.

Signed-off-by: Justin Cormack <justin.cormack@docker.com>
2017-01-25 00:22:08 +00:00
Justin Cormack
3d03a8ae9b Merge pull request #1090 from nathanleclaire/chown_azure_proper
Chown azure proper
2017-01-25 00:20:39 +00:00
Nathan LeClaire
9bd4680e09 Modify init script to create+chown proper directory
Signed-off-by: Nathan LeClaire <nathan.leclaire@gmail.com>
2017-01-24 15:53:19 -08:00
Justin Cormack
f8e0a3d61c Move base images directory to top level
These are standalone, better to have them at the top.

Signed-off-by: Justin Cormack <justin.cormack@docker.com>
2017-01-24 18:55:23 +00:00
Justin Cormack
f27c3ff5ed Move ebpf to its own directory
Unlike the other images in `base` this needs parts from the
Moby build so move it for now.

Signed-off-by: Justin Cormack <justin.cormack@docker.com>
2017-01-24 18:50:38 +00:00
Justin Cormack
b53e83d695 Merge pull request #1086 from justincormack/new-containerd
Shift to development track containerd
2017-01-24 17:50:45 +00:00
Justin Cormack
89e98eefa0 Shift to development track containerd
Move to the development track of `containerd` not the legacy 0.2
branch. The commands have changed a bit.

This does increase the image size as we are bundling the Docker
copy and our copy, and the new one is larger as it is growing features.
Hopefully Docker will shrink eventually. Also we may replace `ctr`
with a library.

Fix #1029

Signed-off-by: Justin Cormack <justin.cormack@docker.com>
2017-01-24 15:39:44 +00:00
Justin Cormack
c565c75a85 Merge pull request #1081 from riyazdf/panic
Do not reboot on panic, except for desktop editions
2017-01-24 12:09:20 +00:00
Justin Cormack
bb2da98169 Merge pull request #1080 from justincormack/split-database
Split config database setup by platform
2017-01-24 12:08:33 +00:00
Riyaz Faizullabhoy
4c810a27f9 Merge lint.sh into compile.sh, remove unused alpine-build-go
Signed-off-by: Riyaz Faizullabhoy <riyaz.faizullabhoy@docker.com>
2017-01-23 13:25:44 -08:00
Riyaz Faizullabhoy
c37e0c592f Set CONFIG_PANIC_TIMEOUT=0 in kernel config
Signed-off-by: Riyaz Faizullabhoy <riyaz.faizullabhoy@docker.com>
2017-01-23 10:58:58 -08:00
Riyaz Faizullabhoy
bb9a9f1050 Set panic=1 for docker 4 win
Signed-off-by: Riyaz Faizullabhoy <riyaz.faizullabhoy@docker.com>
2017-01-23 10:44:06 -08:00
Justin Cormack
321c180c60 Split config database setup by platform
Add basic database setup for AWS, GCP although these are not yet used
by the setup code but will be useful later.

Currently each is gated by `mobyplatform` but this can be removed once we
construct Moby per platform, and once these are containerised so they
are not run from `openrc`.

Signed-off-by: Justin Cormack <justin.cormack@docker.com>
2017-01-23 18:08:26 +00:00
Justin Cormack
4278e0d78e Merge pull request #1079 from justincormack/swapdiskname
Clean up swap partition mounting logic
2017-01-23 17:04:12 +00:00
Justin Cormack
aaa2e30a75 Merge pull request #1077 from djs55/benchmark-ipc
tap-vsockd: add buffering
2017-01-23 16:22:12 +00:00
Justin Cormack
df2c4818ed Clean up swap partition mounting logic
Signed-off-by: Justin Cormack <justin.cormack@docker.com>
2017-01-23 16:20:10 +00:00
David Scott
370a43de83 tap-vsockd: allocate payload separately for better alignment
Previously we allocated `sizeof(struct ring) + size`. This patch
allocates `sizeof(struct ring)` and then `size` for the payload
separately. Hopefully the payload will be better aligned.

Signed-off-by: David Scott <dave.scott@docker.com>
2017-01-23 14:44:34 +00:00
Justin Cormack
79b7893679 Add aufs patch for 4.9 to fix issue with extended attribute removal
See https://github.com/docker/docker/issues/30245

This should hit aufs upstream patch set shortly.

Signed-off-by: Justin Cormack <justin.cormack@docker.com>
2017-01-23 14:01:16 +00:00