On Tue, 23 Apr 2024 16:23:38 +0000 Beau Belgrave <[email protected]> wrote:
> The ABI documentation indicates that field separators do not need a > space between them, only a ';'. When no spacing is used, the register > must work. Any subsequent register, with or without spaces, must match > and not return -EADDRINUSE. > > Add a non-spacing separator case to our self-test register case to ensure > it works going forward. > Looks good to me. Acked-by: Masami Hiramatsu (Google) <[email protected]> Thanks! > Signed-off-by: Beau Belgrave <[email protected]> > --- > tools/testing/selftests/user_events/ftrace_test.c | 8 ++++++++ > 1 file changed, 8 insertions(+) > > diff --git a/tools/testing/selftests/user_events/ftrace_test.c > b/tools/testing/selftests/user_events/ftrace_test.c > index dcd7509fe2e0..0bb46793dcd4 100644 > --- a/tools/testing/selftests/user_events/ftrace_test.c > +++ b/tools/testing/selftests/user_events/ftrace_test.c > @@ -261,6 +261,12 @@ TEST_F(user, register_events) { > ASSERT_EQ(0, ioctl(self->data_fd, DIAG_IOCSREG, ®)); > ASSERT_EQ(0, reg.write_index); > > + /* Register without separator spacing should still match */ > + reg.enable_bit = 29; > + reg.name_args = (__u64)"__test_event u32 field1;u32 field2"; > + ASSERT_EQ(0, ioctl(self->data_fd, DIAG_IOCSREG, ®)); > + ASSERT_EQ(0, reg.write_index); > + > /* Multiple registers to same name but different args should fail */ > reg.enable_bit = 29; > reg.name_args = (__u64)"__test_event u32 field1;"; > @@ -288,6 +294,8 @@ TEST_F(user, register_events) { > ASSERT_EQ(0, ioctl(self->data_fd, DIAG_IOCSUNREG, &unreg)); > unreg.disable_bit = 30; > ASSERT_EQ(0, ioctl(self->data_fd, DIAG_IOCSUNREG, &unreg)); > + unreg.disable_bit = 29; > + ASSERT_EQ(0, ioctl(self->data_fd, DIAG_IOCSUNREG, &unreg)); > > /* Delete should have been auto-done after close and unregister */ > close(self->data_fd); > -- > 2.34.1 > -- Masami Hiramatsu (Google) <[email protected]>

