Re: Reg: rseq selftests failed on 5.4.199

From: Greg KH
Date: Thu Jun 30 2022 - 07:25:11 EST


On Mon, Jun 27, 2022 at 11:20:40AM -0400, Mathieu Desnoyers wrote:
> On 27-Jun-2022 09:23:58 AM, Greg KH wrote:
> > On Sun, Jun 26, 2022 at 10:01:20PM +0300, RAJESH DASARI wrote:
> > > Hi ,
> > >
> > > We are running rseq selftests on 5.4.199 kernel with glibc 2.34
> > > version and we see that tests are failing to compile with invalid
> > > argument errors. When we took all the commits from
> > > https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/log/tools/testing/selftests/rseq
> > > related to rseq locally , test cases have passed. I see that there are
> > > some adaptations to the latest glibc version done in those commits, is
> > > there any plan to backport them to 5.4.x versions. Could you please
> > > provide your inputs.
> >
> > What commits specifically are you referring to please? A list of them
> > would be great, and if you have tested them and verified that they can
> > be backported cleanly would also be very helpful.
>
> Hi Greg,
>
> Specifically related to rseq selftests, the following string of commits
> would be relevant on top of v5.4.199. Those are not all strictly only
> bugfixes, but they help applying the following commits without
> conflicts. I have validated that this string of commits cherry-picks on
> top of v5.4.199, and that the resulting selftests build fine.
>
> ea366dd79c ("seq/selftests,x86_64: Add rseq_offset_deref_addv()")
> 07ad4f7629 ("selftests/rseq: remove ARRAY_SIZE define from individual tests")
> 5c105d55a9 ("selftests/rseq: introduce own copy of rseq uapi header")
> 930378d056 ("selftests/rseq: Remove useless assignment to cpu variable")
> 94b80a19eb ("selftests/rseq: Remove volatile from __rseq_abi")
> e546cd48cc ("selftests/rseq: Introduce rseq_get_abi() helper")
> 886ddfba93 ("selftests/rseq: Introduce thread pointer getters")
> 233e667e1a ("selftests/rseq: Uplift rseq selftests for compatibility with glibc-2.35")
> 24d1136a29 ("selftests/rseq: Fix ppc32: wrong rseq_cs 32-bit field pointer on big endian")
> de6b52a214 ("selftests/rseq: Fix ppc32 missing instruction selection "u" and "x" for load/store")
> 26dc8a6d8e ("selftests/rseq: Fix ppc32 offsets by using long rather than off_t")
> d7ed99ade3 ("selftests/rseq: Fix warnings about #if checks of undefined tokens")
> 94c5cf2a0e ("selftests/rseq: Remove arm/mips asm goto compiler work-around")
> b53823fb2e ("selftests/rseq: Fix: work-around asm goto compiler bugs")
> 4e15bb766b ("selftests/rseq: x86-64: use %fs segment selector for accessing rseq thread area")
> 127b6429d2 ("selftests/rseq: x86-32: use %gs segment selector for accessing rseq thread area")
> 889c5d60fb ("selftests/rseq: Change type of rseq_offset to ptrdiff_t")

As many of these are newer than 5.10, can you provide a series of
patches that should be applied to 5.4, 5.10, 5.15 and possibly 5.18 to
resolve this issue. We do not want anyone moving from 5.4 to a newer
kernel and having regressions.

thanks,

greg k-h