On Mon, Dec 26, 2016 at 10:29:33PM +0300, Subbsd wrote: > Hi, > > On recent FreeBSD version (tested on two host: one from > svn://svn.freebsd.org/base/head ( r310507 now) and second from > https://github.com/FreeBSDDesktop/freebsd-base-graphics.git / > drm-next-4.7 ) and latest firefox ( firefox-50.1.0_4,1 ) I often get > into a situation where firefox is hands. Which graphics driver do you use with pristine head ? > > It looks like unresponsive window: https://snag.gy/gKPhnb.jpg > > with follow information from procstat: > > --- > % procstat -t 18827 > PID TID COMM TDNAME CPU PRI STATE WCHAN > 18827 101546 firefox Compositor -1 152 sleep vmpfw > 18827 101546 firefox Compositor mi_switch > sleepq_wait _sleep vm_page_busy_sleep vm_page_sleep_if_busy > vm_fault_hold vm_fault trap_pfault trap calltrap This thread is problematic. It waits for a page ceasing the busy state, in the page fault handler. The question to answer first is, who is the owner of the busy state and why the page is not released. Using the command ps -H -o pid,lwp,mwchan,nwchan <pid of firefox> find the thread which is hung, and the numerical address of the wait channel where the thread is blocked, from the NWCHAN column of ps output. Start kgdb on the live system as kgdb <path to>/kernel.full /dev/mem and do (kgdb) p/x *(struct vm_page *)<NWCHAN> If the output above shows non-zero object, also please do (kgdb) p/x *(struct vm_object *)<address of the object>Received on Tue Dec 27 2016 - 08:33:51 UTC
This archive was generated by hypermail 2.4.0 : Wed May 19 2021 - 11:41:09 UTC