Opened 7 years ago

Closed 5 years ago

#9917 closed defect (duplicate)

Linux Firefox ESR 17.0.9 appers to spin-wait rather than block-wait on SOCKS

Reported by: starlight Owned by: tbb-team
Priority: Medium Milestone:
Component: Applications/Tor Browser Version:
Severity: Normal Keywords: tbb-firefox-patch
Cc: g.koppen@… Actual Points:
Parent ID: Points:
Reviewer: Sponsor:


Per the summary, Linux Firefox 17.0.9 as
include in TBB x86_64 2.3.25-13 appears to
poll-wait rather than block-wait on
SOCKS requests. Observed this when
attempting to access an unresponsive
site, in this case core.onion.

The spin caused the VM to largely lock-up,
badly enough that the kernel reported
120 second non-responsive "hung-tasks"
on several threads including 'tor'.
However this particular aspect may be
largely a result of running in a single
VCPU KVM instance.

See Firefox using all CPU in 'top' when
this happens. Behaves a little better
when 'renice -n10' is used to lower FF's

Seems to me the behavior should be
to block-wait and that other Firefox
windows should remain responsive while
one window is blocked waiting for a reply
that will never arrive.

Have set 'tor' threads to run realtime
priority, RR class at -27 per 'top', which
might affect the behavior here, though it
really shouldn't matter.

Child Tickets

Change History (6)

comment:1 Changed 7 years ago by starlight

Ran 'top -H', suspicion confirmed:

The spinner is 'Socket Thread'.

Causes havoc in a single VCPU VM
unless set to low 'nice' value.

Probably nobody noticed this because
most systems are multi-core.

comment:2 Changed 7 years ago by gk

Cc: g.koppen@… added

comment:3 Changed 7 years ago by cypherpunks

it's the same bug as #9659

comment:4 Changed 6 years ago by erinn

Keywords: tbb-firefox-patch added

comment:5 Changed 6 years ago by erinn

Component: Firefox Patch IssuesTor Browser
Owner: changed from mikeperry to tbb-team

comment:6 Changed 5 years ago by cypherpunks

Resolution: duplicate
Severity: Normal
Status: newclosed

Duplicate of #9659

Note: See TracTickets for help on using tickets.