qemu-devel.nongnu.org archive mirror
 help / color / mirror / Atom feed
From: Jamie Lokier <jamie@shareable.org>
To: qemu-devel@nongnu.org
Cc: kvm-devel@lists.sourceforge.net, glommer@gmail.com,
	chrisw@sous-sol.org, Glauber Costa <gcosta@redhat.com>
Subject: Re: [Qemu-devel] [PATCH] use a thread id variable
Date: Sun, 9 Mar 2008 11:58:26 +0000	[thread overview]
Message-ID: <20080309115826.GA8077@shareable.org> (raw)
In-Reply-To: <47D3AD53.6030809@codefidence.com>

Gilad Ben-Yossef wrote:
> Glauber Costa wrote:
> >This patch introduces a "thread_id" variable to CPUState.
> >It's duty will be to hold the process, or more generally, thread
> >id of the current executing cpu
> >
> >     env->nb_watchpoints = 0;
> >+#ifdef __WIN32
> >+    env->thread_id = GetCurrentProcessId();
> >+#else
> >+    env->thread_id = getpid();
> >+#endif
> >     *penv = env;
> 
> hmm... maybe I'm missing something, but in Linux at least I think you 
> would prefer this to be gettid() rather then getpid as each CPU has it's 
> own thread, not a different process.

On most platforms, getpid() returns the same value for all threads, so
it's not useful as a thread id.

On Linux, it depends which version of threads.  The old package,
LinuxThreads, has different getpid() for each thread.  The current one,
NPTL, has them all the same.

What you're supposed to do with pthreads in general is use pthread_self().

Btw, unfortunately pthread_self() is not safe to call from signal
handlers.

-- Jamie

  reply	other threads:[~2008-03-09 11:58 UTC|newest]

Thread overview: 14+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2008-03-05 20:01 [Qemu-devel] [PATCH 0/3] Expose thread id through info cpus Glauber Costa
2008-03-05 20:01 ` [Qemu-devel] [PATCH] use a thread id variable Glauber Costa
2008-03-05 20:01   ` [Qemu-devel] [PATCH] augment info cpus Glauber Costa
2008-03-05 20:01     ` [Qemu-devel] [PATCH] KVM: use actual thread id for vcpus Glauber Costa
2008-03-09  9:26   ` [Qemu-devel] [PATCH] use a thread id variable Gilad Ben-Yossef
2008-03-09 11:58     ` Jamie Lokier [this message]
2008-03-09 14:52       ` Gilad Ben-Yossef
2008-03-09 16:12         ` M. Warner Losh
2008-03-17 17:55         ` Glauber Costa
2008-03-09 16:09       ` M. Warner Losh
2008-03-09 20:01         ` Jamie Lokier
2008-03-09 16:23     ` [kvm-devel] " Daniel P. Berrange
2008-03-05 20:07 ` [Qemu-devel] Re: [PATCH 0/3] Expose thread id through info cpus Glauber Costa
2008-03-06  6:55 ` Avi Kivity

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20080309115826.GA8077@shareable.org \
    --to=jamie@shareable.org \
    --cc=chrisw@sous-sol.org \
    --cc=gcosta@redhat.com \
    --cc=glommer@gmail.com \
    --cc=kvm-devel@lists.sourceforge.net \
    --cc=qemu-devel@nongnu.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).