2022-11-08 10:50:51

by Naresh Kamboju

[permalink] [raw]
Subject: selftests: clone3: clone3_cap_checkpoint_restore fails - Could not set CAP_CHECKPOINT_RESTORE

selftests clone3 cap_checkpoint_restore fails on all devices.

Reported-by: Linux Kernel Functional Testing <[email protected]>

[ 97.198602] audit: type=1701 audit(1651167820.383:12):
auid=4294967295 uid=0 gid=0 ses=4294967295 pid=1732
comm=\"clone3_cap_chec\"
exe=\"/opt/kselftests/default-in-kernel/clone3/clone3_cap_checkpoint_restore\"
sig=6 res=1

# selftests: clone3: clone3_cap_checkpoint_restore
# TAP version 13
# 1..1
# # Starting 1 tests from 1 test cases.
# # RUN global.clone3_cap_checkpoint_restore ...
# # clone3_cap_checkpoint_restore.c:155:clone3_cap_checkpoint_restore:Child
has PID 1733
# # clone3() syscall supported
# cap_set_proc: Operation not permitted
# # clone3_cap_checkpoint_restore.c:164:clone3_cap_checkpoint_restore:Expected
set_capability() (-1) == 0 (0)
# # clone3_cap_checkpoint_restore.c:165:clone3_cap_checkpoint_restore:Could
not set CAP_CHECKPOINT_RESTORE
# # clone3_cap_checkpoint_restore: Test terminated by assertion
# # FAIL global.clone3_cap_checkpoint_restore
# not ok 1 global.clone3_cap_checkpoint_restore
# # FAILED: 0 / 1 tests passed.
# # Totals: pass:0 fail:1 xfail:0 xpass:0 skip:0 error:0
not ok 4 selftests: clone3: clone3_cap_checkpoint_restore # exit=1

Test details links,
https://lkft.validation.linaro.org/scheduler/job/5812724#L2074

Test results comparison link,
https://qa-reports.linaro.org/lkft/linux-next-master/build/next-20221107/testrun/12848543/suite/kselftest-clone3/tests/

https://qa-reports.linaro.org/lkft/linux-next-master/build/next-20221107/testrun/12848543/suite/kselftest-clone3/test/clone3.clone3_cap_checkpoint_restore/history/

https://qa-reports.linaro.org/lkft/linux-next-master/build/next-20221107/testrun/12848543/suite/kselftest-clone3/test/clone3.clone3_cap_checkpoint_restore/details/


metadata:
git_ref: master
git_repo: https://gitlab.com/Linaro/lkft/mirrors/next/linux-next
git_sha: d8e87774068af213ab5b058b1b114dc397b577aa
git_describe: next-20221107
kernel_version: 6.1.0-rc3
kernel-config: https://builds.tuxbuild.com/2HChVOSNxUpvfAfLTnaK7zyTdUi/config
build-url: https://gitlab.com/Linaro/lkft/mirrors/next/linux-next/-/pipelines/687092361
artifact-location: https://builds.tuxbuild.com/2HChVOSNxUpvfAfLTnaK7zyTdUi
toolchain: gcc-11


--
Linaro LKFT
https://lkft.linaro.org


2022-11-08 12:10:04

by Christian Brauner

[permalink] [raw]
Subject: Re: selftests: clone3: clone3_cap_checkpoint_restore fails - Could not set CAP_CHECKPOINT_RESTORE

On Tue, Nov 08, 2022 at 03:59:56PM +0530, Naresh Kamboju wrote:
> selftests clone3 cap_checkpoint_restore fails on all devices.
>
> Reported-by: Linux Kernel Functional Testing <[email protected]>
>
> [ 97.198602] audit: type=1701 audit(1651167820.383:12):
> auid=4294967295 uid=0 gid=0 ses=4294967295 pid=1732
> comm=\"clone3_cap_chec\"
> exe=\"/opt/kselftests/default-in-kernel/clone3/clone3_cap_checkpoint_restore\"
> sig=6 res=1
>
> # selftests: clone3: clone3_cap_checkpoint_restore
> # TAP version 13
> # 1..1
> # # Starting 1 tests from 1 test cases.
> # # RUN global.clone3_cap_checkpoint_restore ...
> # # clone3_cap_checkpoint_restore.c:155:clone3_cap_checkpoint_restore:Child
> has PID 1733
> # # clone3() syscall supported
> # cap_set_proc: Operation not permitted
> # # clone3_cap_checkpoint_restore.c:164:clone3_cap_checkpoint_restore:Expected
> set_capability() (-1) == 0 (0)
> # # clone3_cap_checkpoint_restore.c:165:clone3_cap_checkpoint_restore:Could
> not set CAP_CHECKPOINT_RESTORE
> # # clone3_cap_checkpoint_restore: Test terminated by assertion
> # # FAIL global.clone3_cap_checkpoint_restore
> # not ok 1 global.clone3_cap_checkpoint_restore
> # # FAILED: 0 / 1 tests passed.
> # # Totals: pass:0 fail:1 xfail:0 xpass:0 skip:0 error:0
> not ok 4 selftests: clone3: clone3_cap_checkpoint_restore # exit=1
>
> Test details links,
> https://lkft.validation.linaro.org/scheduler/job/5812724#L2074
>
> Test results comparison link,
> https://qa-reports.linaro.org/lkft/linux-next-master/build/next-20221107/testrun/12848543/suite/kselftest-clone3/tests/
>
> https://qa-reports.linaro.org/lkft/linux-next-master/build/next-20221107/testrun/12848543/suite/kselftest-clone3/test/clone3.clone3_cap_checkpoint_restore/history/
>
> https://qa-reports.linaro.org/lkft/linux-next-master/build/next-20221107/testrun/12848543/suite/kselftest-clone3/test/clone3.clone3_cap_checkpoint_restore/details/

Similar question to the other report. Is this something that has
happened before or are we starting to see this failures just now?

2022-11-08 13:02:47

by Naresh Kamboju

[permalink] [raw]
Subject: Re: selftests: clone3: clone3_cap_checkpoint_restore fails - Could not set CAP_CHECKPOINT_RESTORE

On Tue, 8 Nov 2022 at 16:58, Christian Brauner <[email protected]> wrote:
>
> On Tue, Nov 08, 2022 at 03:59:56PM +0530, Naresh Kamboju wrote:
> > selftests clone3 cap_checkpoint_restore fails on all devices.
> >
> > Reported-by: Linux Kernel Functional Testing <[email protected]>
> >
> > [ 97.198602] audit: type=1701 audit(1651167820.383:12):
> > auid=4294967295 uid=0 gid=0 ses=4294967295 pid=1732
> > comm=\"clone3_cap_chec\"
> > exe=\"/opt/kselftests/default-in-kernel/clone3/clone3_cap_checkpoint_restore\"
> > sig=6 res=1
> >
> > # selftests: clone3: clone3_cap_checkpoint_restore
> > # TAP version 13
> > # 1..1
> > # # Starting 1 tests from 1 test cases.
> > # # RUN global.clone3_cap_checkpoint_restore ...
> > # # clone3_cap_checkpoint_restore.c:155:clone3_cap_checkpoint_restore:Child
> > has PID 1733
> > # # clone3() syscall supported
> > # cap_set_proc: Operation not permitted
> > # # clone3_cap_checkpoint_restore.c:164:clone3_cap_checkpoint_restore:Expected
> > set_capability() (-1) == 0 (0)
> > # # clone3_cap_checkpoint_restore.c:165:clone3_cap_checkpoint_restore:Could
> > not set CAP_CHECKPOINT_RESTORE
> > # # clone3_cap_checkpoint_restore: Test terminated by assertion
> > # # FAIL global.clone3_cap_checkpoint_restore
> > # not ok 1 global.clone3_cap_checkpoint_restore
> > # # FAILED: 0 / 1 tests passed.
> > # # Totals: pass:0 fail:1 xfail:0 xpass:0 skip:0 error:0
> > not ok 4 selftests: clone3: clone3_cap_checkpoint_restore # exit=1
> >
> > Test details links,
> > https://lkft.validation.linaro.org/scheduler/job/5812724#L2074
> >
> > Test results comparison link,
> > https://qa-reports.linaro.org/lkft/linux-next-master/build/next-20221107/testrun/12848543/suite/kselftest-clone3/tests/
> >
> > https://qa-reports.linaro.org/lkft/linux-next-master/build/next-20221107/testrun/12848543/suite/kselftest-clone3/test/clone3.clone3_cap_checkpoint_restore/history/
> >
> > https://qa-reports.linaro.org/lkft/linux-next-master/build/next-20221107/testrun/12848543/suite/kselftest-clone3/test/clone3.clone3_cap_checkpoint_restore/details/
>
> Similar question to the other report. Is this something that has
> happened before or are we starting to see this failures just now?

These failures have been happening for a long time.

FYI,
LKFT email is configured to send out email to Linux next mailing list with
daily kselftest results / regressions / pass / fail / xfails / skips.

Please refer this link for our reports,
https://lore.kernel.org/linux-next/?q=lkft+kselftest+for+

We are improving our process to report failures and regressions on
mailing lists.

- Naresh

2024-05-24 11:09:00

by Khannanov Lenar

[permalink] [raw]
Subject: Re: selftests: clone3: clone3_cap_checkpoint_restore fails - Could not set CAP_CHECKPOINT_RESTORE


I presume that test fails because of the difference between definition of struct _cap_struct (struct libcap in test). Commit aca076443591 (Make cap_t operations thread safe.) introduces mutex field at the beginning of the structure. Test uses own definition to set CAP_CHECKPOINT_RESTORE. As data member of these two versions of structures is at the different offsets, CAP_CHECKPOINT_RESTORE is lost and that's why cap_set_proc returns EPERM.


С уважением,
Ленар Ханнанов
Программист
Отдел разработки
АО "ИнфоТеКС" в г. Санкт-Петербург
190000, г. Санкт-Петербург, ул. Артиллерийская, д. 1, литер А, БЦ «Европа Хаус»
T: +7 495 737-61-92 ( доб. 7196)
Ф: +7 495 737-72-78


[email protected]
http://www.infotecs.ru