Example backtraces:
Mar  4 05:41:40 host kernel: [291932.968664] INFO: task tar:44877 blocked for 
more than 120 seconds.
Mar  4 05:41:40 host kernel: [291932.968826]       Tainted: P           OE     
5.4.0-100-generic #113~18.04.1-Ubuntu
Mar  4 05:41:40 host kernel: [291932.969019] "echo 0 > 
/proc/sys/kernel/hung_task_timeout_secs" disables this message.
Mar  4 05:41:40 host kernel: [291932.969222] tar             D    0 44877  
44865 0x00004000
Mar  4 05:41:40 host kernel: [291932.969226] Call Trace:
Mar  4 05:41:40 host kernel: [291932.969239]  __schedule+0x292/0x720
Mar  4 05:41:40 host kernel: [291932.969315]  ? 
xfs_buf_find.isra.34+0x205/0x640 [xfs]
Mar  4 05:41:40 host kernel: [291932.969321]  schedule+0x33/0xa0
Mar  4 05:41:40 host kernel: [291932.969325]  schedule_timeout+0x1d3/0x320
Mar  4 05:41:40 host kernel: [291932.969381]  ? xfs_btree_update+0x7f/0xe0 [xfs]
Mar  4 05:41:40 host kernel: [291932.969444]  ? 
xfs_buf_find.isra.34+0x205/0x640 [xfs]
Mar  4 05:41:40 host kernel: [291932.969448]  __down+0x91/0xe0
Mar  4 05:41:40 host kernel: [291932.969454]  ? 
page_counter_try_charge+0x10/0xd0
Mar  4 05:41:40 host kernel: [291932.969460]  down+0x41/0x50
Mar  4 05:41:40 host kernel: [291932.969463]  ? down+0x41/0x50
Mar  4 05:41:40 host kernel: [291932.969521]  xfs_buf_lock+0x3c/0xf0 [xfs]
Mar  4 05:41:40 host kernel: [291932.969575]  xfs_buf_find.isra.34+0x205/0x640 
[xfs]
Mar  4 05:41:40 host kernel: [291932.969629]  xfs_buf_get_map+0x43/0x2b0 [xfs]
Mar  4 05:41:40 host kernel: [291932.969684]  xfs_buf_read_map+0x2c/0x1c0 [xfs]
Mar  4 05:41:40 host kernel: [291932.969757]  xfs_trans_read_buf_map+0xd5/0x360 
[xfs]
Mar  4 05:41:40 host kernel: [291932.969805]  xfs_read_agf+0x92/0x120 [xfs]
Mar  4 05:41:40 host kernel: [291932.969851]  xfs_alloc_read_agf+0x47/0x1c0 
[xfs]
Mar  4 05:41:40 host kernel: [291932.969896]  
xfs_alloc_fix_freelist+0x2d2/0x500 [xfs]
Mar  4 05:41:40 host kernel: [291932.969899]  ? down+0x2e/0x50
Mar  4 05:41:40 host kernel: [291932.969955]  ? 
xfs_buf_find.isra.34+0x205/0x640 [xfs]
Mar  4 05:41:40 host kernel: [291932.969960]  ? radix_tree_lookup+0xd/0x10
Mar  4 05:41:40 host kernel: [291932.970016]  ? xfs_perag_get+0x2c/0xc0 [xfs]
Mar  4 05:41:40 host kernel: [291932.970061]  xfs_alloc_vextent+0x334/0x590 
[xfs]
Mar  4 05:41:40 host kernel: [291932.970115]  xfs_ialloc_ag_alloc+0x17e/0x710 
[xfs]
Mar  4 05:41:40 host kernel: [291932.970183]  ? 
xfs_trans_read_buf_map+0x183/0x360 [xfs]
Mar  4 05:41:40 host kernel: [291932.970238]  xfs_dialloc+0x139/0x280 [xfs]
Mar  4 05:41:40 host kernel: [291932.970302]  xfs_ialloc+0x7c/0x520 [xfs]
Mar  4 05:41:40 host kernel: [291932.970364]  xfs_dir_ialloc+0x62/0x1e0 [xfs]
Mar  4 05:41:40 host kernel: [291932.970422]  xfs_create+0x3d9/0x570 [xfs]
Mar  4 05:41:40 host kernel: [291932.970479]  xfs_generic_create+0x20e/0x2f0 
[xfs]
Mar  4 05:41:40 host kernel: [291932.970534]  xfs_vn_mknod+0x14/0x20 [xfs]
Mar  4 05:41:40 host kernel: [291932.970588]  xfs_vn_create+0x13/0x20 [xfs]
Mar  4 05:41:40 host kernel: [291932.970593]  path_openat+0x12cb/0x16a0
Mar  4 05:41:40 host kernel: [291932.970659]  ? xfs_trans_get_bud+0x4/0x70 [xfs]
Mar  4 05:41:40 host kernel: [291932.970717]  ? xfs_perag_get+0x2c/0xc0 [xfs]
Mar  4 05:41:40 host kernel: [291932.970721]  do_filp_open+0x9b/0x110
Mar  4 05:41:40 host kernel: [291932.970728]  ? list_lru_add+0x6c/0x1b0
Mar  4 05:41:40 host kernel: [291932.970731]  ? __check_object_size+0xdb/0x1b0
Mar  4 05:41:40 host kernel: [291932.970736]  ? __alloc_fd+0x46/0x170
Mar  4 05:41:40 host kernel: [291932.970741]  do_sys_open+0x1ba/0x2e0
Mar  4 05:41:40 host kernel: [291932.970744]  ? do_sys_open+0x1ba/0x2e0
Mar  4 05:41:40 host kernel: [291932.970747]  ? _cond_resched+0x19/0x40
Mar  4 05:41:40 host kernel: [291932.970751]  ? task_work_run+0x46/0xc0
Mar  4 05:41:40 host kernel: [291932.970755]  __x64_sys_openat+0x20/0x30
Mar  4 05:41:40 host kernel: [291932.970760]  do_syscall_64+0x57/0x190
Mar  4 05:41:40 host kernel: [291932.970765]  
entry_SYSCALL_64_after_hwframe+0x44/0xa9
Mar  4 05:41:40 host kernel: [291932.970768] RIP: 0033:0x7f5e77b6ff83
Mar  4 05:41:40 host kernel: [291932.970775] Code: Bad RIP value.
Mar  4 05:41:40 host kernel: [291932.970777] RSP: 002b:00007ffda22272e0 EFLAGS: 
00000246 ORIG_RAX: 0000000000000101
Mar  4 05:41:40 host kernel: [291932.970781] RAX: ffffffffffffffda RBX: 
00000000000809c1 RCX: 00007f5e77b6ff83
Mar  4 05:41:40 host kernel: [291932.970782] RDX: 00000000000809c1 RSI: 
00005595a1b27d10 RDI: 0000000000000003
Mar  4 05:41:40 host kernel: [291932.970784] RBP: 00000000000001a4 R08: 
0000000000000020 R09: 00000000ffffffd0
Mar  4 05:41:40 host kernel: [291932.970786] R10: 00000000000001a4 R11: 
0000000000000246 R12: 0000000000000000
Mar  4 05:41:40 host kernel: [291932.970787] R13: 00005595a1b27d10 R14: 
00005595a091f6f0 R15: 00007ffda2227377
Mar  4 05:41:40 host kernel: [291932.970796] INFO: task perl:50597 blocked for 
more than 120 seconds.
Mar  4 05:41:40 host kernel: [291932.970952]       Tainted: P           OE     
5.4.0-100-generic #113~18.04.1-Ubuntu
Mar  4 05:41:40 host kernel: [291932.971147] "echo 0 > 
/proc/sys/kernel/hung_task_timeout_secs" disables this message.
Mar  4 05:41:40 host kernel: [291932.971354] perl            D    0 50597  
22548 0x00004000
Mar  4 05:41:40 host kernel: [291932.971357] Call Trace:
Mar  4 05:41:40 host kernel: [291932.971362]  __schedule+0x292/0x720
Mar  4 05:41:40 host kernel: [291932.971422]  ? 
xfs_buf_find.isra.34+0x205/0x640 [xfs]
Mar  4 05:41:40 host kernel: [291932.971425]  schedule+0x33/0xa0
Mar  4 05:41:40 host kernel: [291932.971428]  schedule_timeout+0x1d3/0x320
Mar  4 05:41:40 host kernel: [291932.971484]  ? xfs_buf_trylock+0x1f/0xd0 [xfs]
Mar  4 05:41:40 host kernel: [291932.971538]  ? 
xfs_buf_find.isra.34+0x205/0x640 [xfs]
Mar  4 05:41:40 host kernel: [291932.971542]  __down+0x91/0xe0
Mar  4 05:41:40 host kernel: [291932.971546]  down+0x41/0x50
Mar  4 05:41:40 host kernel: [291932.971549]  ? down+0x41/0x50
Mar  4 05:41:40 host kernel: [291932.971601]  xfs_buf_lock+0x3c/0xf0 [xfs]
Mar  4 05:41:40 host kernel: [291932.971652]  xfs_buf_find.isra.34+0x205/0x640 
[xfs]
Mar  4 05:41:40 host kernel: [291932.971705]  xfs_buf_get_map+0x43/0x2b0 [xfs]
Mar  4 05:41:40 host kernel: [291932.971757]  xfs_buf_read_map+0x2c/0x1c0 [xfs]
Mar  4 05:41:40 host kernel: [291932.971760]  ? _cond_resched+0x19/0x40
Mar  4 05:41:40 host kernel: [291932.971828]  xfs_trans_read_buf_map+0xd5/0x360 
[xfs]
Mar  4 05:41:40 host kernel: [291932.971883]  xfs_read_agi+0x93/0x130 [xfs]
Mar  4 05:41:40 host kernel: [291932.971945]  xfs_iunlink_remove+0x66/0x260 
[xfs]
Mar  4 05:41:40 host kernel: [291932.972011]  ? xfs_trans_reserve+0x14f/0x1d0 
[xfs]
Mar  4 05:41:40 host kernel: [291932.972072]  xfs_ifree+0x42/0x160 [xfs]
Mar  4 05:41:40 host kernel: [291932.972130]  xfs_inactive_ifree+0xab/0x1c0 
[xfs]
Mar  4 05:41:40 host kernel: [291932.972185]  xfs_inactive+0xa8/0x140 [xfs]
Mar  4 05:41:40 host kernel: [291932.972247]  xfs_fs_destroy_inode+0xaf/0x1e0 
[xfs]
Mar  4 05:41:40 host kernel: [291932.972251]  destroy_inode+0x41/0x80
Mar  4 05:41:40 host kernel: [291932.972255]  evict+0x139/0x1a0
Mar  4 05:41:40 host kernel: [291932.972258]  iput+0x143/0x210
Mar  4 05:41:40 host kernel: [291932.972262]  do_unlinkat+0x19c/0x320
Mar  4 05:41:40 host kernel: [291932.972266]  __x64_sys_unlink+0x23/0x30
Mar  4 05:41:40 host kernel: [291932.972270]  do_syscall_64+0x57/0x190
Mar  4 05:41:40 host kernel: [291932.972275]  
entry_SYSCALL_64_after_hwframe+0x44/0xa9
Mar  4 05:41:40 host kernel: [291932.972277] RIP: 0033:0x7f6d3a775e17
Mar  4 05:41:40 host kernel: [291932.972281] Code: Bad RIP value.
Mar  4 05:41:40 host kernel: [291932.972283] RSP: 002b:00007ffe5a2888c8 EFLAGS: 
00000206 ORIG_RAX: 0000000000000057
Mar  4 05:41:40 host kernel: [291932.972286] RAX: ffffffffffffffda RBX: 
000055dc7dbde260 RCX: 00007f6d3a775e17
Mar  4 05:41:40 host kernel: [291932.972287] RDX: 00007ffe5a288900 RSI: 
00007ffe5a288900 RDI: 000055dc7e43d640
Mar  4 05:41:40 host kernel: [291932.972289] RBP: 000055dc7e784ed8 R08: 
0000000000000000 R09: 0000000000000006
Mar  4 05:41:40 host kernel: [291932.972291] R10: 000055dc7e623ff8 R11: 
0000000000000206 R12: 0000000000000001
Mar  4 05:41:40 host kernel: [291932.972292] R13: 000055dc7e784ed8 R14: 
00007ffe5a2888f8 R15: 000055dc7e43d640

** Description changed:

  SRU Justification:
  
  [Impact]
  
  * The xfs filesystem suffers from a deadlock issue in kernels < 5.5.
  This hangs IO to/from the affected filesystem.
  
  [Fix]
  
  * 93597ae8dac0149b5c00b787cba6bf7ba213e666 93597ae8dac0 "xfs: Fix
  deadlock between AGI and AGF when target_ip exists in xfs_rename()"
+ 
+ * This is from the upstream 5.5 kernel.
  
  [Test Plan]
  
  * Set up an Ubuntu Bionic/Focal installation using kernel 5.4.
  
  * Create and mount an XFS filesystem on a block device.
  
  * Exercise the filesystem to verify that IO does not hang.
  
  [Where problems could occur]
  
  * This patch could cause locking issues on XFS filesystems, requiring a
  system restart to correct.
  
  [Other Info]
  
  * Bug is difficult to reproduce, a test kernel on affected systems with
  the above patch prevented the issue.
+ 
+ * Backports to earlier (4.15 and earlier) kernels have been omitted as
+ the upstream patch does not apply cleanly and the issue has not been
+ reproduced on them.

** Description changed:

  SRU Justification:
  
  [Impact]
  
  * The xfs filesystem suffers from a deadlock issue in kernels < 5.5.
- This hangs IO to/from the affected filesystem.
+ This hangs IO to/from the affected filesystem. Sample backtraces added
+ as a comment.
  
  [Fix]
  
  * 93597ae8dac0149b5c00b787cba6bf7ba213e666 93597ae8dac0 "xfs: Fix
  deadlock between AGI and AGF when target_ip exists in xfs_rename()"
  
  * This is from the upstream 5.5 kernel.
  
  [Test Plan]
  
  * Set up an Ubuntu Bionic/Focal installation using kernel 5.4.
  
  * Create and mount an XFS filesystem on a block device.
  
  * Exercise the filesystem to verify that IO does not hang.
  
  [Where problems could occur]
  
  * This patch could cause locking issues on XFS filesystems, requiring a
  system restart to correct.
  
  [Other Info]
  
  * Bug is difficult to reproduce, a test kernel on affected systems with
  the above patch prevented the issue.
  
  * Backports to earlier (4.15 and earlier) kernels have been omitted as
  the upstream patch does not apply cleanly and the issue has not been
  reproduced on them.

-- 
You received this bug notification because you are a member of Ubuntu
Bugs, which is subscribed to Ubuntu.
https://bugs.launchpad.net/bugs/1966803

Title:
  xfs: Fix deadlock between AGI and AGF when target_ip exists in
  xfs_rename()

To manage notifications about this bug go to:
https://bugs.launchpad.net/ubuntu/+source/linux/+bug/1966803/+subscriptions


-- 
ubuntu-bugs mailing list
ubuntu-bugs@lists.ubuntu.com
https://lists.ubuntu.com/mailman/listinfo/ubuntu-bugs

Reply via email to