Re: [PATCH 6.5 000/550] 6.5.12-rc1 review

From: Sasha Levin
Date: Thu Nov 16 2023 - 09:03:11 EST


On Thu, Nov 16, 2023 at 06:45:52PM +0530, Naresh Kamboju wrote:
+ kunit team

On Thu, 16 Nov 2023 at 05:30, Daniel Díaz <daniel.diaz@xxxxxxxxxx> wrote:

Hello!

On Wed, 15 Nov 2023 at 15:38, Daniel Díaz <daniel.diaz@xxxxxxxxxx> wrote:
> On Wed, 15 Nov 2023 at 13:20, Greg Kroah-Hartman
> <gregkh@xxxxxxxxxxxxxxxxxxx> wrote:
> > This is the start of the stable review cycle for the 6.5.12 release.
> > There are 550 patches in this series, all will be posted as a response
> > to this one. If anyone has any issues with these being applied, please
> > let me know.
> >
> > Responses should be made by Fri, 17 Nov 2023 19:14:03 +0000.
> > Anything received after that time might be too late.
> >
> > The whole patch series can be found in one patch at:
> > https://www.kernel.org/pub/linux/kernel/v6.x/stable-review/patch-6.5.12-rc1.gz
> > or in the git tree and branch at:
> > git://git.kernel.org/pub/scm/linux/kernel/git/stable/linux-stable-rc.git linux-6.5.y
> > and the diffstat can be found below.
> >
> > thanks,
> >
> > greg k-h
>
> We're seeing build regressions on Arm, Arm64, i386, x86, with KUnit
> defconfigs (and multi_v5_defconfig on Arm32):
> -----8<-----
> In file included from /builds/linux/lib/kunit/executor.c:225:
> /builds/linux/lib/kunit/executor_test.c: In function 'free_suite_set':
> /builds/linux/lib/kunit/executor_test.c:130:30: error: invalid use
> of undefined type 'struct kunit_suite_set'
> 130 | kunit_free_suite_set(*(struct kunit_suite_set *)suite_set);
> | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
> /builds/linux/lib/kunit/executor_test.c: In function 'free_suite_set_at_end':
> /builds/linux/lib/kunit/executor_test.c:141:49: error: invalid use
> of undefined type 'struct kunit_suite_set'
> 141 | if (!((struct kunit_suite_set *)to_free)->start)
> | ^~
> /builds/linux/lib/kunit/executor_test.c:144:31: error: invalid
> application of 'sizeof' to incomplete type 'struct kunit_suite_set'
> 144 | free = kzalloc(sizeof(struct kunit_suite_set), GFP_KERNEL);
> | ^~~~~~
> /builds/linux/lib/kunit/executor_test.c:145:17: error: invalid use
> of undefined type 'struct kunit_suite_set'
> 145 | *free = *(struct kunit_suite_set *)to_free;
> | ^
> /builds/linux/lib/kunit/executor_test.c:145:15: error: invalid use
> of undefined type 'struct kunit_suite_set'
> 145 | *free = *(struct kunit_suite_set *)to_free;
> | ^
> make[5]: *** [/builds/linux/scripts/Makefile.build:243:
> lib/kunit/executor.o] Error 1
> ----->8-----
>
> This is with defconfig, CONFIG_KASAN=y, CONFIG_KUNIT=y, and
> CONFIG_KUNIT_ALL_TESTS=y. To reproduce,
>
> tuxmake \
> --runtime podman \
> --target-arch arm64 \
> --toolchain gcc-13 \
> --kconfig defconfig \
> --kconfig-add CONFIG_KASAN=y \
> --kconfig-add CONFIG_KUNIT=y \
> --kconfig-add CONFIG_KUNIT_ALL_TESTS=y
>
> Reported-by: Linux Kernel Functional Testing <lkft@xxxxxxxxxx>
>
> Bisection is on-going.

Thanks Daniel for bisecting this.

Bisection points to 3aed6e0618a9 ("kunit: test: Fix the possible
memory leak in executor_test"), upstream commit
8040345fdae4cb256c5d981f91ae0f22bea8adcc. Reverting this commit brings
happiness back to the build.

This problem is not observed on other branches.

stable-rc linux-6.6.y - kunit build pass
stable-rc linux-6.5.y - kunit build failed

Dropping the offending patch from 6.5, thanks!

--
Thanks,
Sasha