This is the mail archive of the gdb-patches@sourceware.org mailing list for the GDB project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: [PATCH v3 2/3] Add an optional "alias" attribute to syscall entries.


> From: John Baldwin <jhb@FreeBSD.org>
> Date: Fri,  9 Nov 2018 12:04:31 -0800
> 
> diff --git a/gdb/NEWS b/gdb/NEWS
> index ff9b192a38..ff225f361e 100644
> --- a/gdb/NEWS
> +++ b/gdb/NEWS
> @@ -38,6 +38,11 @@
>    requires the use of a keyword.  Selecting a frame by level is
>    unchanged.  The MI comment "-stack-select-frame" is unchanged.
>  
> +* System call catchpoints now support system call aliases.  This is
> +  used with the FreeBSD system call list so that system call
> +  catchpoints will also trigger for legacy system call numbers used by
> +  older FreeBSD binaries.

IMO, this is very abstract and too vague to be useful.  Since we won't
have anything more detailed in the manual, would it be possible to
make this description more concrete?  E.g., how about using some of
the text and examples you used in your description of the issue:

> When setting a syscall catchpoint by name, catch syscalls whose name
> or alias matches the requested string.
> 
> When the ABI of a system call is changed in the FreeBSD kernel, this
> is implemented by leaving a compatibility system call using the old
> ABI at the existing "slot" and allocating a new system call for the
> version using the new ABI.  For example, new fields were added to the
> 'struct kevent' used by the kevent() system call in FreeBSD 12.  The
> previous kevent() system call in FreeBSD 12 kernels is now called
> freebsd11_kevent() and is still used by older binaries compiled
> against the older ABI.  The freebsd11_kevent() system call can be
> tagged with an "alias" attribute of "kevent" permitting 'catch syscall
> kevent' to catch both system calls and providing the expected user
> behavior for both old and new binaries.  It also provides the expected
> behavior if GDB is compiled on an older host (such as a FreeBSD 11
> host).

Thanks.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]