Skip site navigation (1)Skip section navigation (2)
Date:      Fri, 07 Jul 2023 08:50:37 -0500
From:      Mike Karels <mike@karels.net>
To:        John F Carr <jfc@mit.edu>
Cc:        Current FreeBSD <freebsd-current@freebsd.org>, Mark Millard <marklmi@yahoo.com>, freebsd-arm <freebsd-arm@freebsd.org>
Subject:   Re: For snapshot builds: armv7 chroot on aarch64 has kyua test -k /usr/tests/Kyuafile sys/kern/kern_copyin hung up [in getpid?], unkillable, prevents reboot
Message-ID:  <106875C8-76F9-4307-A495-D41EAE8F1C8B@karels.net>
In-Reply-To: <240A32EC-E255-4B04-83B3-0D57308B701B@mit.edu>
References:  <7A41DED4-876F-4270-A980-549A4832B39A.ref@yahoo.com> <7A41DED4-876F-4270-A980-549A4832B39A@yahoo.com> <C0D78776-E8DF-4141-B636-658116E94DBC@mit.edu> <3404EA26-BFDD-4B87-830B-62CB6E91C0BD@karels.net> <240A32EC-E255-4B04-83B3-0D57308B701B@mit.edu>

next in thread | previous in thread | raw e-mail | index | archive | help
On 7 Jul 2023, at 6:06, John F Carr wrote:

> On Jul 6, 2023, at 20:42, Mike Karels <mike@karels.net> wrote:
>>
>>
>> Thanks for isolating this.  Let me know when you have the bug number.
>> I just tested a fix (the compat code drops the reference on the curren=
t
>> address space an extra time, probably freeing it).
>>
>> Mike

The fix is in https://cgit.freebsd.org/src/commit/?id=3Dbe30fd3ab2e8418a6=
96e69f54a91a7e2db5962de.

> The bug was introduced in January, 2022.   It allows 32 bit binaries to=
 crash a 64 bit system when COMPAT_FREEBSD32 is on.  Test coverage of the=
 buggy function (sysctl_kern_proc_vm_layout) was added at the same time.
>
> There should be routine runs of 32 bit test suites on 64 bit systems.  =
Although i386 and armv7 are tier 2 systems, the tier 1 COMPAT_FREEBSD32 k=
ernel code needs to be exercised.  This bug was only discovered by manual=
ly running tests in the right environment, 17 months after automated test=
ing could have discovered it.

That is not so simple currently, as the shared libraries for the
test environment are not part of 32-bit compatibility package.
The required bits could be extracted from the corresponding 32-bit
build, but that isn't easy to automate.  Fortunately, I think that
very few of the tests exercise any 32-bit-specific code paths.

		Mike



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?106875C8-76F9-4307-A495-D41EAE8F1C8B>