SHA256
1
0
forked from pool/docker
compilation on Factory and Tumbleweed (which have btrfsprogs >= 4.5).
    + fix-btrfs-ioctl-structure.patch

OBS-URL: https://build.opensuse.org/package/show/Virtualization:containers/docker?expand=0&rev=89
This commit is contained in:
Aleksa Sarai 2016-04-07 09:37:14 +00:00 committed by Git OBS Bridge
parent 30f62d728c
commit fc54adafab
3 changed files with 73 additions and 14 deletions

View File

@ -1,3 +1,10 @@
-------------------------------------------------------------------
Thu Apr 7 09:35:40 UTC 2016 - asarai@suse.de
- Add patch from upstream (https://github.com/docker/docker/pull/21723) to fix
compilation on Factory and Tumbleweed (which have btrfsprogs >= 4.5).
+ fix-btrfs-ioctl-structure.patch
-------------------------------------------------------------------
Tue Mar 22 15:27:26 UTC 2016 - fcastelli@suse.com
@ -381,11 +388,11 @@ Thu Sep 10 22:33:01 UTC 2015 - jmassaguerpla@suse.com
see detailed changelog in
https://github.com/docker/docker/releases/tag/v1.8.2
https://github.com/docker/docker/releases/tag/v1.8.2
fix bsc#946653 update do docker 1.8.2
- devicemapper: fix zero-sized field access
- devicemapper: fix zero-sized field access
Fix issue #15279: does not build with Go 1.5 tip
Due to golang/go@7904946
the devices field is dropped.
@ -393,7 +400,7 @@ Thu Sep 10 22:33:01 UTC 2015 - jmassaguerpla@suse.com
This solution works on go1.4 and go1.5
See more in https://github.com/docker/docker/pull/15404
This fix was not included in v1.8.2. See previous link
on why.
@ -421,9 +428,9 @@ Thu Aug 13 09:00:25 UTC 2015 - jmassaguerpla@suse.com
- Update to docker 1.8.0:
see detailed changelog in
https://github.com/docker/docker/releases/tag/v1.8.0
https://github.com/docker/docker/releases/tag/v1.8.0
- remove docker-netns-aarch64.patch: This patch was adding
- remove docker-netns-aarch64.patch: This patch was adding
vendor/src/github.com/vishvananda/netns/netns_linux_arm64.go
which is now included upstream, so we don't need this patch anymore
@ -433,7 +440,7 @@ Fri Jul 24 14:24:16 UTC 2015 - jmassaguerpla@suse.com
- Exclude archs where docker does not build. Otherwise it gets into
and infinite loop when building.
We'll fix that later if we want to release for those archs.
We'll fix that later if we want to release for those archs.
-------------------------------------------------------------------
Wed Jul 15 08:11:11 UTC 2015 - jmassaguerpla@suse.com
@ -462,18 +469,18 @@ Distribution
Fix pulling private images
Fix fallback between registry V2 and V1
-------------------------------------------------------------------
Fri Jul 10 11:22:00 UTC 2015 - jmassaguerpla@suse.com
- Exclude init scripts other than systemd from the test-package
- Exclude init scripts other than systemd from the test-package
-------------------------------------------------------------------
Wed Jul 1 12:38:50 UTC 2015 - jmassaguerpla@suse.com
- Exclude intel 32 bits arch. Docker does not built on that. Let's
make it explicit.
make it explicit.
-------------------------------------------------------------------
Thu Jun 25 16:49:59 UTC 2015 - dmueller@suse.com
@ -525,7 +532,7 @@ Mon Jun 22 08:48:11 UTC 2015 - fcastelli@suse.com
-------------------------------------------------------------------
Tue Jun 9 16:35:46 UTC 2015 - jmassaguerpla@suse.com
- Add test subpackage and fix line numbers in patches
- Add test subpackage and fix line numbers in patches
-------------------------------------------------------------------
Fri Jun 5 15:29:45 UTC 2015 - fcastelli@suse.com
@ -698,7 +705,7 @@ Fri Dec 12 16:13:30 UTC 2014 - fcastelli@suse.com
* Notable Features since 1.3.0:
- Set key=value labels to the daemon (displayed in `docker info`), applied with
new `-label` daemon flag
- Add support for `ENV` in Dockerfile of the form:
- Add support for `ENV` in Dockerfile of the form:
`ENV name=value name2=value2...`
- New Overlayfs Storage Driver
- `docker info` now returns an `ID` and `Name` field
@ -1176,7 +1183,7 @@ Wed Feb 19 08:35:27 UTC 2014 - fcastelli@suse.com
- Fix broken images API for version less than 1.7
- Use the right encoding for all API endpoints which return JSON
- Move remote api client to api/
- Queue calls to the API using generic socket wait
- Queue calls to the API using generic socket wait
* Runtime:
- Fix the use of custom settings for bridges and custom bridges
- Refactor the devicemapper code to avoid many mount/unmount race
@ -1299,7 +1306,7 @@ Fri Jan 10 10:44:23 UTC 2014 - fcastelli@suse.com
* Do not add hostname when networking is disabled
* Return most recent image from the cache by date
* Return all errors from docker wait
* Add Content-Type Header "application/json" to GET /version and /info responses
* Add Content-Type Header "application/json" to GET /version and /info responses
* Other:
- Update DCO to version 1.1
- Update Makefile to use "docker:GIT_BRANCH" as the generated image name
@ -1318,7 +1325,7 @@ Fri Jan 10 10:44:23 UTC 2014 - fcastelli@suse.com
- Fix for wrong version warning on master instead of latest
* Runtime:
- Only get the image's rootfs when we need to calculate the image size
- Correctly handle unmapping UDP ports
- Correctly handle unmapping UDP ports
- Make CopyFileWithTar use a pipe instead of a buffer to save memory on docker build
- Fix login message to say pull instead of push
- Fix "docker load" help by removing "SOURCE" prompt and mentioning STDIN

View File

@ -49,6 +49,9 @@ Patch0: fix_platform_type_arm.patch
Patch1: gcc5_socket_workaround.patch
Patch2: fix-docker-init.patch
Patch3: fix-apparmor.patch
# TODO: Remove this once we update to Docker 1.11.0. This has been merged in
# https://github.com/docker/docker/pull/21723
Patch4: fix-btrfs-ioctl-structure.patch
# Required to overcome some limitations of gcc-go: https://groups.google.com/forum/#!msg/golang-nuts/SlGCPYkjxo4/4DjcjXRCqAkJ
# Right now docker passes the sha1sum of the dockerinit binary to the docker binary at build time
# We cannot do that, right now a quick and really dirty way to get it running is
@ -166,6 +169,7 @@ Test package for docker. It contains the source code and the tests.
%endif
%patch2 -p1
%patch3 -p1
%patch4 -p1
%ifnarch %go_arches
%patch101 -p1
%patch102 -p1

View File

@ -0,0 +1,48 @@
From a038cccf88998814249a7a40b71a33a680e3f02f Mon Sep 17 00:00:00 2001
From: Julio Montes <imc.coder@gmail.com>
Date: Fri, 1 Apr 2016 08:58:29 -0600
Subject: [PATCH] Fix compilation errors with btrfs-progs-4.5
btrfs-progs-4.5 introduces device delete by devid
for this reason btrfs_ioctl_vol_args_v2's name was encapsulated
in a union
this patch is for setting btrfs_ioctl_vol_args_v2's name
using a C function in order to preserve compatibility
with all btrfs-progs versions
Signed-off-by: Julio Montes <imc.coder@gmail.com>
Signed-off-by: Aleksa Sarai <asarai@suse.de>
---
daemon/graphdriver/btrfs/btrfs.go | 11 ++++++++---
1 file changed, 8 insertions(+), 3 deletions(-)
Index: docker-1.10.3/daemon/graphdriver/btrfs/btrfs.go
===================================================================
--- docker-1.10.3.orig/daemon/graphdriver/btrfs/btrfs.go
+++ docker-1.10.3/daemon/graphdriver/btrfs/btrfs.go
@@ -7,6 +7,10 @@ package btrfs
#include <dirent.h>
#include <btrfs/ioctl.h>
#include <btrfs/ctree.h>
+
+static void set_name_btrfs_ioctl_vol_args_v2(struct btrfs_ioctl_vol_args_v2* btrfs_struct, const char* value) {
+ snprintf(btrfs_struct->name, BTRFS_SUBVOL_NAME_MAX, "%s", value);
+}
*/
import "C"
@@ -160,9 +164,10 @@ func subvolSnapshot(src, dest, name stri
var args C.struct_btrfs_ioctl_vol_args_v2
args.fd = C.__s64(getDirFd(srcDir))
- for i, c := range []byte(name) {
- args.name[i] = C.char(c)
- }
+
+ var cs = C.CString(name)
+ C.set_name_btrfs_ioctl_vol_args_v2(&args, cs)
+ C.free(unsafe.Pointer(cs))
_, _, errno := syscall.Syscall(syscall.SYS_IOCTL, getDirFd(destDir), C.BTRFS_IOC_SNAP_CREATE_V2,
uintptr(unsafe.Pointer(&args)))