r366623: lock order reversal in ZFS

2020-10-11 Thread Hartmann, O.
On a recent CURRENT bos acting as poudriere host, we face after a crash
under heavy load and extensive swap usage now this lock order reversal
warning on the console:

lock order reversal:
 1st 0xf8007bdd9e00 zfs (zfs, lockmgr) @
/usr/src/sys/kern/vfs_mount.c:1018 2nd 0xf8034abfc070 devfs (devfs,
lockmgr) @ /usr/src/sys/kern/vfs_mount.c:1029 lock order zfs -> devfs
attempted at: #0 0x80f3380d at witness_checkorder+0xebd
#1 0x80e8ba4b at lockmgr_xlock+0xab
#2 0x80fc3e04 at _vn_lock+0x54
#3 0x80fa0e34 at vfs_domount+0xde4
#4 0x80f9f598 at vfs_donmount+0x898
#5 0x80f9ecb9 at sys_nmount+0x69
#6 0x81461255 at amd64_syscall+0x135
#7 0x814335ee at fast_syscall_common+0xf8

System: FreeBSD 13.0-CURRENT #71 r366623: Sun Oct 11 08:59:17 CEST 2020


pgp5mJtYDzyfv.pgp
Description: OpenPGP digital signature


Re: zpool export: umount failed, device inexplicably busy

2020-10-11 Thread Graham Perrin


On 06/10/2020 21:29, Graham Perrin wrote:

lsof finds no open file.

How else might I tell why the device is busy?

Mobile hard disk drive, USB.


The same problem this morning,



root@momh167-gjp4-8570p:~ # zpool export Transcend
cannot unmount '/Volumes/t500': umount failed
root@momh167-gjp4-8570p:~ # lsof /Volumes/t500/
lsof: WARNING: device cache mismatch: /dev/usb/0.5.2
lsof: WARNING: /root/.lsof_momh167-gjp4-8570p was updated.
root@momh167-gjp4-8570p:~ # lsof /Volumes/t500/
root@momh167-gjp4-8570p:~ # usbconfig -d 0.5 dump_all_desc
ugen0.5:  at usbus0, cfg=0 md=HOST spd=SUPER (5.0Gbps) 
pwr=SAVE (0mA)


  bLength = 0x0012
  bDescriptorType = 0x0001
  bcdUSB = 0x0300
  bDeviceClass = 0x0009  
  bDeviceSubClass = 0x
  bDeviceProtocol = 0x0003
  bMaxPacketSize0 = 0x0009
  idVendor = 0x0424
  idProduct = 0x5434
  bcdDevice = 0x3082
  iManufacturer = 0x0002  
  iProduct = 0x0003  
  iSerialNumber = 0x0001  <1239567>
  bNumConfigurations = 0x0001

 Configuration index 0

    bLength = 0x0009
    bDescriptorType = 0x0002
    wTotalLength = 0x001f
    bNumInterfaces = 0x0001
    bConfigurationValue = 0x0001
    iConfiguration = 0x  
    bmAttributes = 0x00e0
    bMaxPower = 0x

    Interface 0
  bLength = 0x0009
  bDescriptorType = 0x0004
  bInterfaceNumber = 0x
  bAlternateSetting = 0x
  bNumEndpoints = 0x0001
  bInterfaceClass = 0x0009  
  bInterfaceSubClass = 0x
  bInterfaceProtocol = 0x
  iInterface = 0x  

 Endpoint 0
    bLength = 0x0007
    bDescriptorType = 0x0005
    bEndpointAddress = 0x0081  
    bmAttributes = 0x0013  
    wMaxPacketSize = 0x0002
    bInterval = 0x0008
    bRefresh = 0x
    bSynchAddress = 0x

  Additional Descriptor

  bLength = 0x06
  bDescriptorType = 0x30
  bDescriptorSubType = 0x00
   RAW dump:
   0x00 | 0x06, 0x30, 0x00, 0x00, 0x02, 0x00




root@momh167-gjp4-8570p:~ # zpool export Transcend
cannot unmount '/Volumes/t500': umount failed
root@momh167-gjp4-8570p:~ # umount /Volumes/t500
umount: unmount of /Volumes/t500 failed: Device busy
root@momh167-gjp4-8570p:~ # lsof /Volumes/t500/
root@momh167-gjp4-8570p:~ #



When this last occurred, I could export the pool after signing out from 
KDE.


___
freebsd-current@freebsd.org mailing list
https://lists.freebsd.org/mailman/listinfo/freebsd-current
To unsubscribe, send any mail to "freebsd-current-unsubscr...@freebsd.org"