Message ID | CA+XhMqxD6gQDBaj8tX0CMEj3si7qYKsM8u1km47e_-U7MC37Pg@mail.gmail.com (mailing list archive) |
---|---|
State | New, archived |
Headers | show |
Series | util: qemu_get_thread_id for OpenBSD | expand |
On 14/07/2020 23.26, David CARLIER wrote: > From 9c7f54c67d40fae0174ba795fbaad829cd59c264 Mon Sep 17 00:00:00 2001 > From: David Carlier <devnexen@gmail.com> > Date: Tue, 14 Jul 2020 23:23:55 +0100 > Subject: [PATCH] util: qemu_get_thread_id implementation for OpenBSD. > > ussage of getthrid syscall. > > Signed-off-by: David Carlier <devnexen@gmail.com> > --- > util/oslib-posix.c | 2 ++ > 1 file changed, 2 insertions(+) > > diff --git a/util/oslib-posix.c b/util/oslib-posix.c > index 72907d4d7f..b4f7de83c8 100644 > --- a/util/oslib-posix.c > +++ b/util/oslib-posix.c > @@ -100,6 +100,8 @@ int qemu_get_thread_id(void) > return (int)tid; > #elif defined(__NetBSD__) > return _lwp_self(); > +#elif defined(__OpenBSD__) > + return getthrid(); > #else > return getpid(); > #endif > Brad, since you're listed as OpenBSD maintainer, could you please review above patch? Thanks, Thomas
On 7/15/2020 12:54 AM, Thomas Huth wrote: > On 14/07/2020 23.26, David CARLIER wrote: >> From 9c7f54c67d40fae0174ba795fbaad829cd59c264 Mon Sep 17 00:00:00 2001 >> From: David Carlier <devnexen@gmail.com> >> Date: Tue, 14 Jul 2020 23:23:55 +0100 >> Subject: [PATCH] util: qemu_get_thread_id implementation for OpenBSD. >> >> ussage of getthrid syscall. >> >> Signed-off-by: David Carlier <devnexen@gmail.com> >> --- >> util/oslib-posix.c | 2 ++ >> 1 file changed, 2 insertions(+) >> >> diff --git a/util/oslib-posix.c b/util/oslib-posix.c >> index 72907d4d7f..b4f7de83c8 100644 >> --- a/util/oslib-posix.c >> +++ b/util/oslib-posix.c >> @@ -100,6 +100,8 @@ int qemu_get_thread_id(void) >> return (int)tid; >> #elif defined(__NetBSD__) >> return _lwp_self(); >> +#elif defined(__OpenBSD__) >> + return getthrid(); >> #else >> return getpid(); >> #endif >> > Brad, > > since you're listed as OpenBSD maintainer, could you please review above > patch? Thank you David and Thomas. Reviewed-by: Brad Smith <brad@comstyle.com>
On Wed, 15 Jul 2020 at 08:41, Brad Smith <brad@comstyle.com> wrote: > > On 7/15/2020 12:54 AM, Thomas Huth wrote: > > On 14/07/2020 23.26, David CARLIER wrote: > >> From 9c7f54c67d40fae0174ba795fbaad829cd59c264 Mon Sep 17 00:00:00 2001 > >> From: David Carlier <devnexen@gmail.com> > >> Date: Tue, 14 Jul 2020 23:23:55 +0100 > >> Subject: [PATCH] util: qemu_get_thread_id implementation for OpenBSD. > >> > >> ussage of getthrid syscall. > >> > >> Signed-off-by: David Carlier <devnexen@gmail.com> > >> --- > >> util/oslib-posix.c | 2 ++ > >> 1 file changed, 2 insertions(+) > >> > >> diff --git a/util/oslib-posix.c b/util/oslib-posix.c > >> index 72907d4d7f..b4f7de83c8 100644 > >> --- a/util/oslib-posix.c > >> +++ b/util/oslib-posix.c > >> @@ -100,6 +100,8 @@ int qemu_get_thread_id(void) > >> return (int)tid; > >> #elif defined(__NetBSD__) > >> return _lwp_self(); > >> +#elif defined(__OpenBSD__) > >> + return getthrid(); > >> #else > >> return getpid(); > >> #endif > >> > > Brad, > > > > since you're listed as OpenBSD maintainer, could you please review above > > patch? > > Thank you David and Thomas. > > Reviewed-by: Brad Smith <brad@comstyle.com> Thanks for the review. Since this is a one-liner I'll take it into the tree via target-arm.next just for convenience. Side note: the only things we use this value for are: (1) it appears in the output of the QMP monitor's query-cpus and query-iothreads commands, so that a management layer app can use whatever the host OS provides for setting host CPU affinity to tie a particular guest vCPU thread to a host CPU. (2) the log tracing backend uses it in the output just as a way to allow tracing from different threads to be distinguished We should really write a doc comment explaining that. Maybe I'll put a patch together. thanks -- PMM
diff --git a/util/oslib-posix.c b/util/oslib-posix.c index 72907d4d7f..b4f7de83c8 100644 --- a/util/oslib-posix.c +++ b/util/oslib-posix.c @@ -100,6 +100,8 @@ int qemu_get_thread_id(void) return (int)tid; #elif defined(__NetBSD__) return _lwp_self(); +#elif defined(__OpenBSD__) + return getthrid(); #else return getpid(); #endif