Re: [PATCH v4 0/3] Make core_pattern support namespace
From: Cao Shufeng/曹树烽
Date: Tue Nov 08 2016 - 23:06:15 EST
ping
å 2016-10-25äç 15:28 +0800ïCao Shufengåéï
> This patchset includes following function points:
> 1: Let usermodehelper function possible to set pid namespace
> done by: [PATCH v4 1/3] Make call_usermodehelper_exec possible
> to set pid namespace.
> 2: Let pipe_type core_pattern write dump into container's rootfs
> done by: [PATCH v4 2/3] Limit dump_pipe program's permission to
> init for container.
> 2: Make separate core_pattern setting for each container
> done by: [PATCH v4 3/3] Make core_pattern support namespace
> 3: Compatibility with current system
> also included in: [PATCH v4 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@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@xxxxxxxxx>
>
> 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@xxxxxxxxx>
>
> 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@xxxxxxxxxxxx>
> Suggested-by: KOSAKI Motohiro <kosaki.motohiro@xxxxxxxxxxxxxx>
> Signed-off-by: Zhao Lei <zhaolei@xxxxxxxxxxxxxx>
> Signed-off-by: Cao Shufeng <caosf.fnst@xxxxxxxxxxxxxx>
>
> Cao Shufeng (2):
> Make call_usermodehelper_exec possible to set namespaces
> Limit dump_pipe program's permission to init for container
>
> Zhao Lei (1):
> Make core_pattern support namespace
>
> fs/coredump.c | 150 +++++++++++++++++++++++++++++++++++++++---
> include/linux/binfmts.h | 2 +
> include/linux/kmod.h | 4 ++
> include/linux/pid_namespace.h | 3 +
> init/do_mounts_initrd.c | 3 +-
> kernel/kmod.c | 43 +++++++++---
> 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, 241 insertions(+), 25 deletions(-)
>
--
Best Regards,
Cao Shufeng
--------------------------------------------------
Cao Shufeng
Development Dept.I
Nanjing Fujitsu Nanda Software Tech. Co., Ltd.(FNST)
No.6 Wenzhu Road, Nanjing, 210012, China
TEL: +86+25-86630566-8552
FUJITSU INTERNAL: 7998-8552
EMail: caosf.fnst@xxxxxxxxxxxxxx