From: ebiederm-aS9lmoZGLiVWk0Htik3J/w@public.gmane.org (Eric W. Biederman)
To: Dongsheng Yang <yangds.fnst-BthXqXjhjHXQFUHtdCDX3A@public.gmane.org>
Cc: cgroups-u79uwXL29TY76Z2rM5mHXA@public.gmane.org,
containers-cunTk1MwBs9QetFLy7KEm3xJsTq8ys+cHZ5vskTnxNA@public.gmane.org,
Al Viro <viro-3bDd1+5oDREiFSDQTTA3OLVCufUGDwFn@public.gmane.org>,
LKML <linux-kernel-u79uwXL29TY76Z2rM5mHXA@public.gmane.org>
Subject: Re: [Propose] Isolate core_pattern in mnt namespace.
Date: Mon, 21 Dec 2015 15:52:11 -0600 [thread overview]
Message-ID: <87twnbzcz8.fsf@x220.int.ebiederm.org> (raw)
In-Reply-To: <567798EC.1040304-BthXqXjhjHXQFUHtdCDX3A@public.gmane.org> (Dongsheng Yang's message of "Mon, 21 Dec 2015 14:15:08 +0800")
Dongsheng Yang <yangds.fnst-BthXqXjhjHXQFUHtdCDX3A@public.gmane.org> writes:
> On 12/20/2015 05:47 PM, Eric W. Biederman wrote:
>> Dongsheng Yang <yangds.fnst-BthXqXjhjHXQFUHtdCDX3A@public.gmane.org> writes:
>>
>>> On 12/20/2015 10:37 AM, Al Viro wrote:
>>>> On Sun, Dec 20, 2015 at 10:14:29AM +0800, Dongsheng Yang wrote:
>>>>> On 12/17/2015 07:23 PM, Dongsheng Yang wrote:
>>>>>> Hi guys,
>>>>>> We are working on making core dump behaviour isolated in
>>>>>> container. But the problem is, the /proc/sys/kernel/core_pattern
>>>>>> is a kernel wide setting, not belongs to a container.
>>>>>>
>>>>>> So we want to add core_pattern into mnt namespace. What
>>>>>> do you think about it?
>>>>>
>>>>> Hi Eric,
>>>>> I found your patch about "net: Implement the per network namespace
>>>>> sysctl infrastructure", I want to do the similar thing
>>>>> in mnt namespace. Is that suggested way?
>>>>
>>>> Why mnt namespace and not something else?
>>>
>>> Hi Al,
>>>
>>> Well, because core_pattern indicates the path to store core file.
>>> In different mnt namespace, we would like to change the path with
>>> different value.
>>>
>>> In addition, Let's considering other namespaces:
>>> UTS ns: contains informations of kernel and arch, not proper for core_pattern.
>>> IPC ns: communication informations, not proper for core_pattern
>>> PID ns: core_pattern is not related with pid
>>> net ns: obviousely no.
>>> user ns: not proper too.
>>>
>>> Then I believe it's better to do this in mnt namespace. of course,
>>> core_pattern is just one example. After this infrastructure finished,
>>> we can implement more sysctls as per-mnt if necessary, I think.
>>>
>>> Al, what do you think about this idea?
>>
>> The hard part is not the sysctl. The hard part is starting the usermode
>> helper, in an environment that it can deal with. The mount namespace
>> really provides you with no help there.
>
> Do you mean the core dump helper? But I think I don't want to touch it
> in my development. I think I can use non-pipe way to get what I want,
> Let me try to explain what I want here.
>
> (1). introduce a --core-path option in docker run command to specify the
> path in host to store core file in one container.
> E.g: docker run --core-path=/core/test --name=test IMAGE
>
> (2). When the container starting, docker attach a volume to it, similar
> with "-v /core/test:/var/lib/docker/coredump". That means, the path of
> /var/lib/docker/coredump in container is a link to /core/test in host.
>
> (3). Set the /proc/sys/kernel/core_pattern in container as
> "/var/lib/docker/coredump". But that should not affect the core_pattern
> in host or other containers.
>
> Then I think I can collect the core files from each container and save
> them in the paths where I want.
For your case that sounds like it would work. Unfortunately for this to
be generally applicable and to let the OS in the contianer control it's
fate the core dump pattern needs to be supported.
Otherwise something clever in userspace that can be written now should
be sufficient to fill the gap. There is enough information for the user
mode helper to implement the policy you would like today.
Eric
next prev parent reply other threads:[~2015-12-21 21:52 UTC|newest]
Thread overview: 14+ messages / expand[flat|nested] mbox.gz Atom feed top
2015-12-17 11:23 [Propose] Isolate core_pattern in mnt namespace Dongsheng Yang
[not found] ` <56729B3D.1040502-BthXqXjhjHXQFUHtdCDX3A@public.gmane.org>
2015-12-20 2:14 ` Dongsheng Yang
[not found] ` <56760F05.3020308-BthXqXjhjHXQFUHtdCDX3A@public.gmane.org>
2015-12-20 2:37 ` Al Viro
[not found] ` <20151220023712.GT20997-3bDd1+5oDREiFSDQTTA3OLVCufUGDwFn@public.gmane.org>
2015-12-20 2:47 ` Dongsheng Yang
[not found] ` <567616D6.6060202-BthXqXjhjHXQFUHtdCDX3A@public.gmane.org>
2015-12-20 9:47 ` Eric W. Biederman
[not found] ` <87fuyx1mfn.fsf-JOvCrm2gF+uungPnsOpG7nhyD016LWXt@public.gmane.org>
2015-12-20 23:58 ` Kamezawa Hiroyuki
2015-12-21 6:15 ` Dongsheng Yang
[not found] ` <567798EC.1040304-BthXqXjhjHXQFUHtdCDX3A@public.gmane.org>
2015-12-21 21:52 ` Eric W. Biederman [this message]
2015-12-22 3:12 ` Kamezawa Hiroyuki
[not found] ` <5678BFA3.9090608-+CUm20s59erQFUHtdCDX3A@public.gmane.org>
2015-12-23 3:13 ` Dongsheng Yang
[not found] ` <87twnbzcz8.fsf-JOvCrm2gF+uungPnsOpG7nhyD016LWXt@public.gmane.org>
2015-12-23 3:12 ` Dongsheng Yang
[not found] ` <567A1120.3070204-BthXqXjhjHXQFUHtdCDX3A@public.gmane.org>
2015-12-23 16:36 ` Eric W. Biederman
[not found] ` <8760zpxgte.fsf-JOvCrm2gF+uungPnsOpG7nhyD016LWXt@public.gmane.org>
2016-01-05 6:28 ` Dongsheng Yang
[not found] ` <568B629E.5010806-BthXqXjhjHXQFUHtdCDX3A@public.gmane.org>
2016-01-05 7:58 ` Eric W. Biederman
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=87twnbzcz8.fsf@x220.int.ebiederm.org \
--to=ebiederm-as9lmozglivwk0htik3j/w@public.gmane.org \
--cc=cgroups-u79uwXL29TY76Z2rM5mHXA@public.gmane.org \
--cc=containers-cunTk1MwBs9QetFLy7KEm3xJsTq8ys+cHZ5vskTnxNA@public.gmane.org \
--cc=linux-kernel-u79uwXL29TY76Z2rM5mHXA@public.gmane.org \
--cc=viro-3bDd1+5oDREiFSDQTTA3OLVCufUGDwFn@public.gmane.org \
--cc=yangds.fnst-BthXqXjhjHXQFUHtdCDX3A@public.gmane.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).