[PATCH 0/3] Make core_pattern support namespace

曹树烽 caosf.fnst at cn.fujitsu.com
Thu Nov 2 05:41:52 UTC 2017


ping

在 2017年08月02日 14:37, Cao Shufeng 写道:
> This patchset includes following function points:
> 1: Let usermodehelper function possible to set pid namespace
>     done by: [PATCH_v4.1_1/3] Make call_usermodehelper_exec possible
>     to set namespaces
> 2: Let pipe_type core_pattern write dump into container's rootfs
>     done by: [PATCH_v4.1_2/3] Limit dump_pipe program's permission to
>     init for container
> 3: Make separate core_pattern setting for each container
>     done by: [PATCH_v4.1_3/3] Make core_pattern support namespace
> 4: Compatibility with current system
>     also included in: [PATCH_v4.1_3/3] Make core_pattern support namespace
>     If container hadn't change core_pattern setting, it will keep
>     same setting with host.
>
> Test:
> 1: Pass a test script for each function of this patchset
>     ## TEST IN HOST ##
>     [root at kerneldev dumptest]# ./test_host
>     Set file core_pattern: OK
>     ./test_host: line 41:  2366 Segmentation fault      (core dumped) "$SCRI=
> PT_BASE_DIR"/make_dump
>     Checking dumpfile: OK
>     Set file core_pattern: OK
>     ./test_host: line 41:  2369 Segmentation fault      (core dumped) "$SCRI=
> PT_BASE_DIR"/make_dump
>     Checking dump_pipe triggered: OK
>     Checking rootfs: OK
>     Checking dumpfile: OK
>     Checking namespace: OK
>     Checking process list: OK
>     Checking capabilities: OK
>
>     ## TEST IN GUEST ##
>     # ./test
>     Segmentation fault (core dumped)
>     Checking dump_pipe triggered: OK
>     Checking rootfs: OK
>     Checking dumpfile: OK
>     Checking namespace: OK
>     Checking process list: OK
>     Checking cg pids: OK
>     Checking capabilities: OK
>     [   64.940734] make_dump[2432]: segfault at 0 ip 000000000040049d sp 000=
> 07ffc4af025f0 error 6 in make_dump[400000+a6000]
>     #
> 2: Pass other test(which is not easy to do in script) by hand.
>
> Changelog v3.1-v4:
> 1. remove extra fork pointed out by:
>     Andrei Vagin <avagin at gmail.com>
> 2: Rebase on top of v4.9-rc8.
> 3: Rebase on top of v4.12.
>
> Changelog v3-v3.1:
> 1. Switch "pwd" of pipe program to container's root fs.
> 2. Rebase on top of v4.9-rc1.
>
> Changelog v2->v3:
> 1: Fix problem of setting pid namespace, pointed out by:
>     Andrei Vagin <avagin at gmail.com>
>
> Changelog v1(RFC)->v2:
> 1: Add [PATCH 2/2] which was todo in [RFC v1].
> 2: Pass a test script for each function.
> 3: Rebase on top of v4.7.
>
> Suggested-by: Eric W. Biederman <ebiederm at xmission.com>
> Suggested-by: KOSAKI Motohiro <kosaki.motohiro at jp.fujitsu.com>
> Signed-off-by: Cao Shufeng <caosf.fnst at cn.fujitsu.com>
>
> Cao Shufeng (3):
>    Make call_usermodehelper_exec possible to set namespaces
>    Limit dump_pipe program's permission to init for container
>    Make core_pattern support namespace
>
>   fs/coredump.c                 | 150 +++++++++++++++++++++++++++++++++++++++---
>   include/linux/binfmts.h       |   2 +
>   include/linux/kmod.h          |   5 ++
>   include/linux/pid_namespace.h |   3 +
>   init/do_mounts_initrd.c       |   3 +-
>   kernel/kmod.c                 |  56 +++++++++++++---
>   kernel/pid.c                  |   2 +
>   kernel/pid_namespace.c        |   2 +
>   kernel/sysctl.c               |  50 ++++++++++++--
>   lib/kobject_uevent.c          |   3 +-
>   security/keys/request_key.c   |   4 +-
>   11 files changed, 253 insertions(+), 27 deletions(-)
>





More information about the Containers mailing list