Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

1.11.2 cherry pick #23058

Merged
merged 8 commits into from
May 28, 2016
Merged

1.11.2 cherry pick #23058

merged 8 commits into from
May 28, 2016

Conversation

mlaventure
Copy link
Contributor

@mlaventure mlaventure commented May 27, 2016

The following commits have been cherry-picked:

5ff18be6d92a50d40727e6e8729ce2074191c1fc (#23067) Fixes Issue #22992: docker commit failing.
e24f320 (#22922) Enable seccomp on ppc64le
bde0bcf (#23032) Fix directory walker error checking
6d17d5b (#22918) Release memoryStore locks before filter/apply
a8dc0ba (#22836) Update port info on network connect/disconnect
966e912 (#22561) Wait for discovery on container start error
4a26a65 (#22227) Bump Go version to 1.6.2 from 1.6.1 where it was used
d84150a (#22168) Add refcounts to graphdrivers that use fsdiff

cpuguy83 and others added 6 commits May 27, 2016 08:21
This makes sure fsdiff doesn't try to unmount things that shouldn't be.

**Note**: This is intended as a temporary solution to have as minor a
change as possible for 1.11.1. A bigger change will be required in order
to support container re-attach.

Signed-off-by: Brian Goff <cpuguy83@gmail.com>
(cherry picked from commit 7342060)
Signed-off-by: Ken Cochrane <kencochrane@gmail.com>
(cherry picked from commit 09ca4dd)
This gives discovery a chance to initialize, particularly if the K/V
store being used is in a container.

Signed-off-by: Brian Goff <cpuguy83@gmail.com>
(cherry picked from commit 2dce79e)
Signed-off-by: Alessandro Boch <aboch@docker.com>
(cherry picked from commit f198dfd)
Rework memoryStore so that filters and apply run
on a cloned list of containers after the lock has
been released. This avoids possible deadlocks when
these filter/apply callbacks take locks for a
container.

Fixes moby#22732

Signed-off-by: Tonis Tiigi <tonistiigi@gmail.com>
(cherry picked from commit bd2b3d3)
Signed-off-by: Tonis Tiigi <tonistiigi@gmail.com>
(cherry picked from commit 81d24e7)
In order to do this, allow the socketcall syscall in the default
seccomp profile. This is a multiplexing syscall for the socket
operations, which is becoming obsolete gradually, but it is used
in some architectures. libseccomp has special handling for it for
x86 where it is common, so we did not need it in the profile,
but does not have any handling for ppc64le. It turns out that the
Debian images we use for tests do use the socketcall, while the
newer images such as Ubuntu 16.04 do not. Enabling this does no
harm as we allow all the socket operations anyway, and we allow
the similar ipc call for similar reasons already.

Signed-off-by: Justin Cormack <justin.cormack@docker.com>
(cherry picked from commit a83cedd)
@mlaventure
Copy link
Contributor Author

That should be all the cherry-picks, just need to wait for this to go green :)

@@ -151,26 +153,35 @@ func (d *Driver) Remove(id string) error {
// Get mounts a device with given id into the root filesystem
func (d *Driver) Get(id, mountLabel string) (string, error) {
mp := path.Join(d.home, "mnt", id)
rootFs := path.Join(mp, "rootfs")
if count := d.ctr.Increment(mp); count > 1 {
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Because of the cherry pick this should be id not mp

@thaJeztah
Copy link
Member

thaJeztah commented May 27, 2016

can you update the description to include the last two cherry picks as well?

Sorry, you added them at the top, ignore ignore

@mlaventure
Copy link
Contributor Author

will do

On Fri, May 27, 2016 at 3:32 PM Sebastiaan van Stijn <
notifications@github.com> wrote:

can you update the description to include the last two cherry picks as
well?


You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub
#23058 (comment), or mute
the thread
https://github.com/notifications/unsubscribe/APUifv1sv8hb4Mivromc1aZAS-hKZiG_ks5qF3D1gaJpZM4IonhV
.

1) docker create / run / start: this would create a snapshot device and mounts it onto the filesystem.
So the first time GET operation is called. it will create the rootfs directory and return the path to rootfs
2) Now when I do docker commit. It will call the GET operation second time. This time the refcount will check
that the count > 1 (count=2). so the rootfs already exists, it will just return the path to rootfs.

Earlier it was just returning the mp: /var/lib/docker/devicemapper/mnt/{ID} and hence the inconsistent paths error.

Signed-off-by: Shishir Mahajan <shishir.mahajan@redhat.com>
(cherry picked from commit 09d0720)
Signed-off-by: Kenfe-Mickael Laventure <mickael.laventure@gmail.com>
@mlaventure mlaventure force-pushed the 1.11.2-cherry-pick branch from 5ff18be to 08ecb29 Compare May 28, 2016 02:23
@mlaventure
Copy link
Contributor Author

Fixed the last cherry-pick @crosbymichael

@thaJeztah
Copy link
Member

LGTM

1 similar comment
@cpuguy83
Copy link
Member

LGTM

@cpuguy83 cpuguy83 merged commit a75a949 into moby:bump_v1.11.1 May 28, 2016
@mlaventure mlaventure deleted the 1.11.2-cherry-pick branch June 17, 2016 20:35
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

9 participants