Hi,

When rebooting the NFS client while the NFS file system is actively
used, the kernel crashes.  The socket at 0xd73c2d9c is filled with
dead beef, so it is a use after free.  It is an i386 kernel built
today.

bluhm

root@ot2:.../~# find /mount >/dev/null & sleep 5; reboot -q
[1] 9698
syncing disks... uvm_fault(0xd72afc7c, 0x1ff11000, 0, 1) -> e
kernel: page fault trap, code=0
Stopped at      sblock+0x12:    movl    0x4(%eax),%eax
ddb{0}> trace
sblock(d73c2d9c,d73c2df0,1) at sblock+0x12
soreceive(d73c2d9c,0,f548d818,f548d884,0,f548d804,0) at soreceive+0x271
nfs_receive(d7471f7c,f548d87c,f548d884) at nfs_receive+0xb1
nfs_reply(d7471f7c) at nfs_reply+0x62
nfs_request(d6d1f3c4,10,f548d970) at nfs_request+0x24d
nfs_readdirrpc(d6d1f3c4,f548d9f8,d7499120,f548d9ec) at nfs_readdirrpc+0x1dc
nfs_readdir(f548dab0) at nfs_readdir+0x227
VOP_READDIR(d6d1f3c4,f548daf8,d7499120,f548daec) at VOP_READDIR+0x42
sys_getdents(d71372dc,f548db68,f548db60) at sys_getdents+0x118
syscall() at syscall+0x204
--- syscall (number 0) ---
end of kernel
0x78ef0480:
ddb{0}> ps
   PID     TID   PPID    UID  S       FLAGS  WAIT          COMMAND
 47525   49437  73751      0  2         0x3                reboot
* 9698  299089  73751      0  7    0x100003                find
 73751  193388      1      0  3    0x10008b  pause         ksh
 26295  320696      1      0  3    0x100083  ttyin         getty
 62718  326479      1      0  3    0x100083  ttyin         getty
  6755  452271      1      0  3    0x100083  ttyin         getty
 62489  430851      1      0  3    0x100083  ttyin         getty
 13303  429205      1      0  3    0x100083  ttyin         getty
 97097  367369      1      0  3    0x100098  poll          cron
 38250  509671      1     99  3    0x100090  poll          sndiod
   367  406650      1    110  3    0x100090  poll          sndiod
 21810  404127      1      0  3    0x100090  kqread        inetd
 98071  120936  58301     95  3    0x100092  kqread        smtpd
 69756   87980  58301    103  3    0x100092  kqread        smtpd
 36661  383137  58301     95  3    0x100092  kqread        smtpd
 73070  332826  58301     95  3    0x100092  kqread        smtpd
 39972   98572  58301     95  3    0x100092  kqread        smtpd
 79819  455669  58301     95  3    0x100092  kqread        smtpd
 58301  220916      1      0  3    0x100080  kqread        smtpd
 45347  311418      1      0  3        0x80  select        sshd
 69335  244689      0      0  3     0x14200  acct          acct
 78078  383503      0      0  3     0x14280  nfsidl        nfsio
 67499  120783      0      0  3     0x14280  nfsidl        nfsio
  6389   67663      0      0  3     0x14280  nfsidl        nfsio
 96664  329282      0      0  3     0x14280  nfsidl        nfsio
 89233   98160      1      0  3    0x100080  poll          ntpd
 16545  425860  94501     83  3    0x100092  poll          ntpd
 94501  456716      1     83  3    0x100092  poll          ntpd
 89114  244638  64496     74  3    0x100092  bpf           pflogd
 64496  138057      1      0  3        0x80  netio         pflogd
 33873    3141   2011     73  2    0x100090                syslogd
  2011  167758      1      0  3    0x100082  netio         syslogd
 14968  488435      1     77  3    0x100090  poll          dhclient
 20238  513767      1      0  3        0x80  poll          dhclient
 99266   92995  75879    115  3    0x100092  kqread        slaacd
 12302   94011  75879    115  3    0x100092  kqread        slaacd
 75879  477107      1      0  3        0x80  kqread        slaacd
 94668  139960      0      0  3     0x14200  pgzero        zerothread
 88879  391716      0      0  3     0x14200  aiodoned      aiodoned
 37996  199474      0      0  3     0x14200  syncer        update
 52467  413889      0      0  3     0x14200  cleaner       cleaner
 52168  367270      0      0  3     0x14200  reaper        reaper
 90849  369485      0      0  3     0x14200  pgdaemon      pagedaemon
 68700   48024      0      0  3     0x14200  bored         crynlk
 37778  144411      0      0  3     0x14200  bored         crypto
 31589  214320      0      0  3     0x14200  usbtsk        usbtask
 10880  448964      0      0  3     0x14200  usbatsk       usbatsk
 66170  108418      0      0  3     0x14200  bored         sensors
 86508  510965      0      0  3  0x40014200  acpi0         acpi0
 41740  521514      0      0  7  0x40014200                idle1
 42154  396729      0      0  2     0x14200                softnet
 65803  465644      0      0  3     0x14200  bored         systqmp
 33651   52515      0      0  3     0x14200  bored         systq
 44323  189892      0      0  2  0x40014200                softclock
 25032  280029      0      0  3  0x40014200                idle0
  4614  206064      0      0  3     0x14200  kmalloc       kmthread
     1   57612      0      0  3        0x82  wait          init
     0       0     -1      0  3     0x10200  scheduler     swapper
ddb{0}> x/x 0xd73c2d9c,10
0xd73c2d9c:     1ff118e7
0xd73c2da0:     7814c6e
0xd73c2da4:     efff1133
0xd73c2da8:     efff1133
0xd73c2dac:     efff1133
0xd73c2db0:     efff1133
0xd73c2db4:     efff1133
0xd73c2db8:     efff1133
0xd73c2dbc:     efff1133
0xd73c2dc0:     efff1133
0xd73c2dc4:     efff1133
0xd73c2dc8:     efff1133
0xd73c2dcc:     efff1133
0xd73c2dd0:     efff1133
0xd73c2dd4:     efff1133
0xd73c2dd8:     efff1133
ddb{0}> x/s version
version:        OpenBSD 6.3-beta (GENERIC.MP) #2: Thu Mar  8 21:02:29 CET 2018\
012    [email protected]:/usr/src/sys/arch/i386/compile/GENERIC.MP\012

Reply via email to