tech-kern archive

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

Re: netbsd-5 deadlocks when memory is low



Takeshi Nakayama <tn%catvmics.ne.jp@localhost> wrote:

> "sysctl -w vm.swapout=0" helps you?

It yields an interesting result: I now have a partial deadlock, with is
limited to the PUFFS filesystem. It is now possible to login and work in
the shell, something that was not possible with vm.swapout=1

However, even after memory is freed, the PUFFS filesystem does not
resume operation. The PUFFS userland server is perfused, which sends its
requests to glusterfsd. perfused is locked in memory thanks to a
mlockall(2) call, but glusterfsd can be paged out (it is probably too
big to get the mlockall(2) treatment). ddb shows me that:

242      4 3   0          4  c9d92060       glusterfsd anonget2
       >   3 7   0          4  cacaf080        glusterfsd
            2 3   0        84  cb0a0820       glusterfsd sigwait
            1 3   0          4  cacaf300        glusterfsd anonget2
229      1 3   0        84  cacaf580        perfused kqueue

ddb's show uvpexp tells us we have a lot of free memory, and paging=114
does not change, which suggests this is only PUFFS-backed pages.

Current UVM status:
  pagesize=4096 (0x1000), pagemask=0xfff, pageshift=12
  63176 VM pages: 30432 active, 15057 inactive, 10183 wired, 2004 free
  pages  34784 anon, 15634 file, 3874 exec
  freemin=256, free-target=341, wired-max=21058
  faults=1878379, traps=1970502, intrs=2721627, ctxswitch=3540426
  softint=3556429, syscalls=-1829155228, swapins=0, swapouts=0
  fault counts:
    noram=0, noanon=0, pgwait=8, pgrele=0
    ok relocks(total)=9608(9608), anget(retrys)=480235(7068),
    amapcopy=299322
    neighbor anon/obj pg=315480/3581619, gets(lock/unlock)=879980/2540
    cases: anon=331217, anoncow=114469, obj=727628, prcopy=152352,
    przero=545991

  daemon and swap counts:
    woke=33, revs=32, scans=45588, obscans=1244, anscans=32707
    busy=0, freed=33837, reactivate=5243, deactivate=60890
    pageouts=4110, pending=28677, nswget=7064
    nswapdev=2, swpgavail=98303
    swpages=98303, swpginuse=27376, swpgonly=20320, paging=114

-- 
Emmanuel Dreyfus
http://hcpnet.free.fr/pubz
manu%netbsd.org@localhost


Home | Main Index | Thread Index | Old Index