NetBSD-Bugs archive

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

kern/58964: uvm: missing wakeup on uvmexp.free



>Number:         58964
>Category:       kern
>Synopsis:       uvm: missing wakeup on uvmexp.free
>Confidential:   no
>Severity:       serious
>Priority:       medium
>Responsible:    kern-bug-people
>State:          open
>Class:          sw-bug
>Submitter-Id:   net
>Arrival-Date:   Mon Jan 06 15:25:06 +0000 2025
>Originator:     Taylor R Campbell
>Release:        10.1
>Organization:
The NetBageSleepDaemon Foundation
>Environment:
>Description:
I found my bulk build machine hanging today, with lots of processes waiting on flt_pmfail2, flt_pmfail1, flt_noram5, plpg, tstile, and various zfs condvars.

I entered ddb.  Sampling of output:

db{0}> ps
...
24652 24652 3   0         0   ffff80ace8f2c480                 sh tstile
10978 10978 3   1       180   ffff80abc3a61a00                 sh wait
14020 14020 3   0       180   ffff80aba5153540                 sh wait
8120   8120 3   1         0   ffff80abb5c2b0c0                 sh flt_pmfail2
3599   3599 3   0         0   ffff80ad78b6f540                 sh flt_pmfail1
13915 13915 3   0       180   ffff80abb4992980                 sh pipe_rd
7909   7909 3  10         0   ffff80abb7e9e580          pkg_admin flt_noram5
19573 19573 3  19         0   ffff80b168ecc8c0                 sh flt_noram5
...
0     13053 3  22       200   ffff80b1a9ca3340    zio_write_issue zio_data_buf_983
0     10086 3  23       200   ffff80ac379152c0    zio_write_issue plpg
0     24427 3   8       200   ffff80af3710e040    zio_write_issue zio_data_buf_983
...
0      1630 3  11       200   ffff80b0945d0a80    zio_write_issue zio_data_buf_983
0     16826 3  19       200   ffff80b15d39d740    zio_write_issue plpg
0     17874 3   2       200   ffff80ab83eb81c0    zio_write_issue zio_data_buf_983                                                                
...
0       891 3   2       240   ffff80abb8d30bc0            ioflush tstile
0       890 3  23       200   ffff80abb8d30780           pgdaemon &tx->tx_quiesce_
...
db{0}> show all tstiles
  PID   LID          COMMAND      WAITING-FOR     WAIT-CHANNEL
23365 23365             sync                0 ffff80a95d5dbf80
24652 24652               sh                0 ffff80a95d5dbf80
    0   891           system                0 ffff80aed792bd40

I then woke everything waiting on uvmexp.free and the system began to make progress again:

db{0}> call wakeup(uvmexp+0x10)
7
db{0}> continue

Nothing stuck on flt_pmfail2, flt_pmfail1, flt_noram5, plpg, or tstile, according to `ps -Alww | grep ...'.
>How-To-Repeat:
no idea
>Fix:
Yes, please!



Home | Main Index | Thread Index | Old Index