Re: [RFC][PATCH 0/3] signal: Move si_trapno into the _si_fault union

From: Marco Elver
Date: Sat May 01 2021 - 12:24:55 EST


On Sat, 1 May 2021 at 17:17, Eric W. Biederman <ebiederm@xxxxxxxxxxxx> wrote:
>
> Marco Elver <elver@xxxxxxxxxx> writes:
>
> > On Sat, 1 May 2021 at 01:48, Eric W. Biederman <ebiederm@xxxxxxxxxxxx> wrote:
> >>
> >> Well with 7 patches instead of 3 that was a little more than I thought
> >> I was going to send.
> >>
> >> However that does demonstrate what I am thinking, and I think most of
> >> the changes are reasonable at this point.
> >>
> >> I am very curious how synchronous this all is, because if this code
> >> is truly synchronous updating signalfd to handle this class of signal
> >> doesn't really make sense.
> >>
> >> If the code is not synchronous using force_sig is questionable.
> >>
> >> Eric W. Biederman (7):
> >> siginfo: Move si_trapno inside the union inside _si_fault
> >> signal: Implement SIL_FAULT_TRAPNO
> >> signal: Use dedicated helpers to send signals with si_trapno set
> >> signal: Remove __ARCH_SI_TRAPNO
> >> signal: Rename SIL_PERF_EVENT SIL_FAULT_PERF_EVENT for consistency
> >> signal: Factor force_sig_perf out of perf_sigtrap
> >> signal: Deliver all of the perf_data in si_perf
> >
> > Thank you for doing this so quickly -- it looks much cleaner. I'll
> > have a more detailed look next week and also run some tests myself.
> >
> > At a first glance, you've broken our tests in
> > tools/testing/selftests/perf_events/ -- needs a
> > s/si_perf/si_perf.data/, s/si_errno/si_perf.type/
>
> Yeah. I figured I did, but I couldn't figure out where the tests were
> and I didn't have a lot of time. I just wanted to get this out so we
> can do as much as reasonable before the ABI starts being actively used
> by userspace and we can't change it.

No worries, and agreed. I've run tools/testing/selftests/perf_events
tests on x86-64 (native + 32-bit compat), and compile-tested x86-32,
arm64, arm (with my static asserts), m68k, and sparc64. Some trivial
breakages, note comments in other patches.

With the trivial fixes this looks good to me. I'll happily retest v2
when you send it.

Thanks,
-- Marco