infrun.c:user_visible_resume_ptid: Don't check singlestep_breakpoints_inserted_p
authorPedro Alves <palves@redhat.com>
Mon, 22 Sep 2014 10:12:30 +0000 (11:12 +0100)
committerPedro Alves <palves@redhat.com>
Thu, 25 Sep 2014 15:56:00 +0000 (16:56 +0100)
commit03d469572472d5c59d8a35030bb1b8072c217dc7
treed19dbac24676f42221856770492eb21cd959f389
parente558d7c1095545832a90e76f72e6db6c98fdee0f
infrun.c:user_visible_resume_ptid: Don't check singlestep_breakpoints_inserted_p

What matters for this function, is whether the user requested a
"step", for "set scheduler-locking step", not whether GDB is doing an
internal step for some reason.

 /* Return a ptid representing the set of threads that we will proceed,
    in the perspective of the user/frontend.  */
 extern ptid_t user_visible_resume_ptid (int step);

Therefore, the check for singlestep_breakpoints_inserted_p is actually
incorrect, and we end up applying schedlock more often on sss targets
than on non-sss targets.

Found by inspection while working on a patch that eliminates the
singlestep_breakpoints_inserted_p global.

Tested on x86_64 Fedora 20 on top of my 'software single-step on x86'
series.

gdb/
2014-09-25  Pedro Alves  <palves@redhat.com>

* infrun.c (user_visible_resume_ptid): Don't check
singlestep_breakpoints_inserted_p.
gdb/ChangeLog
gdb/infrun.c