[Devel] [PATCH v2 RH7 2/2] ve/coredump: virtualize kernel.core_pattern sysctl

Andrey Ryabinin aryabinin at virtuozzo.com
Tue Feb 2 06:52:40 PST 2016


On 02/02/2016 05:26 PM, Pavel Tikhomirov wrote:
> 1) put core_pattern on ve_struct and add virtualized proc_handler
> using macro sysctl_virtual()
> 
> 2) use in-container khelper kthread for collecting cores
> 
> We need support of pipe'ing coredump in CT. If process crashes
> in CT and kernel.core_pattern begins with "|" we get error:
> 
> CT:
>   CT-101-bash-4.2# sysctl kernel.core_pattern
>    kernel.core_pattern = |/root/core_test %p UID=%u GID=%g sig=%s
>   CT-101-bash-4.2# sleep 100 &
>    [1] 445
>   CT-101-bash-4.2# kill -11 445
>   CT-101-bash-4.2#
>    [1]+  Segmentation fault      sleep 100
>   CT-101-bash-4.2# ll /root
>    total 8
>    rwxr-xr-x 1 root root 7424 Jan 27 17:28 core_test
> Host:
>   [root at s143 ~]# less /var/log/messages
>    Jan 28 10:40:42 s143 kernel: [87698.969582] Core dump to
>    |/root/core_test 445 UID=0 GID=0 sig=11 pipe failed
> 
> Also docker is going to use pipe'ing in coredumps functionality:
> https://github.com/docker/docker/issues/19289
> 
> https://jira.sw.ru/browse/PSBM-43596
> 
> v2: split sysctl_virtual in separate patch
> Signed-off-by: Pavel Tikhomirov <ptikhomirov at virtuozzo.com>

Reviewed-by: Andrey Ryabinin <aryabinin at virtuozzo.com>


More information about the Devel mailing list