qemu-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Qemu-devel] Re: [PATCH] qemu: work around for "posix-aio-compat"


From: Paolo Bonzini
Subject: [Qemu-devel] Re: [PATCH] qemu: work around for "posix-aio-compat"
Date: Wed, 21 Oct 2009 20:38:14 +0200
User-agent: Mozilla/5.0 (X11; U; Linux x86_64; en-US; rv:1.9.1.4pre) Gecko/20091014 Fedora/3.0-2.8.b4.fc11 Lightning/1.0pre Thunderbird/3.0b4


At every word of the sigset (using gdb commands to disable/enable the
watchpoints around the sigfillset, you avoid spurious triggers).

Not sure how do you mean. When would I enable the watchpoint?

   301  static void *aio_thread(void *unused)
   302  {
   303      pid_t pid;
   304      static sigset_t set;
   305
   306      /* block all signals */
...
   312      if (sigfillset(&set)) die("sigfillset");
....
   315      pid = getpid();
   316
   317      while (1) {


b 312                    // sets bp 1
p ((long *)&set          // prints $1
watch $1[0]              // sets bp 2..9
watch $1[1]
watch $1[2]
watch $1[3]
watch $1[4]
watch $1[5]
watch $1[6]
watch $1[7]              // only 1/4 of the sigset!
                         // stop earlier if it starts
                         // assigning non-hardware watchpoints
                         // try again with 8..15 if not enough
                         // up to $1[31]
commands 1               // don't break on next sigfillset
dis 2
dis 3
dis 4
dis 5
dis 6
dis 7
dis 8
dis 9
c                        // and continue
end
b 315                    // sets bp 10
commands 10              // re-enable after sigfillset
ena 2
ena 3
ena 4
ena 5
ena 6
ena 7
ena 8
ena 9
c                        // run body of aio_thread
end
c                        // run into aio_thread

Paolo




reply via email to

[Prev in Thread] Current Thread [Next in Thread]