On Sat, Oct 19, 2013 at 05:54:22PM +0200, Sébastien Marie wrote:
> Hi,
> 
> I fall in a system problem using tmux: the system (OpenBSD -current
> on i386) freeze (but no panic).
> 

The freeze seems to be a dead-lock, and tmux expose it. 

ddb> ps
   PID   PPID   PGRP    UID  S       FLAGS  WAIT          COMMAND
[...]
 13243      1  13243      0  3           0  inode         tmux
[...]

Here, tmux is waiting "inode".

This wait message is set here:
 ufs/ext2fs/ext2fs_vfsops.c
 831: lockinit(&ip->i_lock, PINOD, "inode", 0, 0);
 
 ufs/ffs/ffs_vfsops.c
 1257:        lockinit(&ip->i_lock, PINOD, "inode", 0, 0);

And if I let the system running, several others process fall in
"inode" waiting (as cron, or login_passwd if I try login).


With ddb, if I check locked vnodes, there are two on root partition.

ddb> show all mounts
flags 50000<LOCAL,ROOTFS>
vnodecovered 0x0 syncer 0xd316aa60 data 0xd108a200
vfsconf: ops 0xd098d7a0 name "ffs" num 1 ref 3 flags 0x1000
statvfs cache: bsize 800 iosize 4000
blocks 403383 free 375320 avail 355151
  files 102910 ffiles 100646 favail 100646
  f_fsidx {0x400, 0xc8a5ad54} owner 0 ctime 0x52640b1d
  syncwrites 325 asyncwrites = 340
  syncreads 8881 asyncreads = 0
  fstype "ffs" mnton "/" mntfrom "/dev/sd0a" mntspec "ab8fcda4850f14e9.a"
locked vnodes:
        0xd3165ea8, 0xd316a310
[... others partitions stripped ...]

ddb> show vnode 0xd3165ea8
tag UFS(1) type VCHR(4) mount 0xd108b400 typedata 0xd0ffb100
data 0xd3161298 usecount 2 writecount 0 holdcnt 0 numoutput 0

ddb> show vnode 0xd316a310
tag UFS(1) type VDIR(2) mount 0xd108b400 typedata 0x0
data 0xd31851ec usecount 1 writecount 0 holdcnt 3 numoutput 0


Does someone have any clue, about what to check or how to debug this ?
I think I will try the option VFSLCKDEBUG in kernel, but what else ?
-- 
Sébastien Marie

Reply via email to