unsafe-poller: remove overly-conservative false positives

Trying to be more helpful about the thread running an `unsafe-poller`
callback gets in the way of making the process sleep when multiple
threads are blocked on unsafe pollers.

Closes #2833
This commit is contained in:
Matthew Flatt 2019-09-25 09:15:53 -06:00
parent 0873b21d6d
commit 01de71981b

View File

@ -1565,11 +1565,6 @@ static int evt_struct_is_ready(Scheme_Object *o, Scheme_Schedule_Info *sinfo)
{
Scheme_Object *v;
if (sinfo->false_positive_ok) {
sinfo->potentially_false_positive = 1;
return 1;
}
v = scheme_struct_type_property_ref(evt_property, o);
if (!v) {
@ -3857,12 +3852,6 @@ static int chaperone_evt_is_ready(Scheme_Object *obj, Scheme_Schedule_Info *sinf
Scheme_Chaperone *px;
int redirected = 0;
if (sinfo->false_positive_ok) {
/* Safer, though maybe unnecessarily conservative: */
sinfo->potentially_false_positive = 1;
return 1;
}
while (SCHEME_CHAPERONEP(o)) {
px = (Scheme_Chaperone *)o;
if (SAME_TYPE(SCHEME_TYPE(px->redirects), scheme_nack_guard_evt_type)) {