[LU-6865] crash in mdd_xattr_set Created: 17/Jul/15  Updated: 14/Jun/18  Resolved: 06/Oct/15

Status: Closed
Project: Lustre
Component/s: None
Affects Version/s: Lustre 2.7.0, Lustre 2.8.0
Fix Version/s: Lustre 2.8.0

Type: Bug Priority: Critical
Reporter: Li Dongyang (Inactive) Assignee: Alex Zhuravlev
Resolution: Fixed Votes: 0
Labels: patch

Issue Links:
Duplicate
Related
Severity: 3
Rank (Obsolete): 9223372036854775807

 Description   

setfattr -n system.posix_acl_default -v 'NCI' <file> will crash the mds.

<1>BUG: unable to handle kernel paging request at ffffffffffffffea
<1>IP: [<ffffffffa0f14ff9>] mdd_xattr_set+0x2b9/0xdd0 [mdd]
<4>PGD 1a87067 PUD 1a88067 PMD 0
<4>Oops: 0002 1 SMP
<4>last sysfs file: /sys/module/fid/initstate
<4>CPU 3
<4>Modules linked in: osp(U) mdd(U) lod(U) mdt(U) lfsck(U) mgs(U) mgc(U) osd_ldiskfs(U) ldiskfs(U) lquota(U) lustre(U) lov(U) mdc(U) fid(U) lmv(U) fld(U) ksocklnd(U) ptlrpc(U) obdclass(U) lnet(U) sha512_generic crc32c_intel libcfs(U) ip6t_REJECT nf_conntrack_ipv6 nf_defrag_ipv6 xt_state nf_conntrack ip6table_filter ip6_tables ipv6 virtio_balloon virtio_console snd_hda_intel snd_hda_codec snd_hwdep snd_seq snd_seq_device snd_pcm snd_timer snd soundcore snd_page_alloc 8139too 8139cp mii sg i2c_piix4 i2c_core ext4 jbd2 mbcache virtio_blk sd_mod crc_t10dif virtio_pci virtio_ring virtio pata_acpi ata_generic ata_piix dm_mirror dm_region_hash dm_log dm_mod [last unloaded: scsi_wait_scan]
<4>
<4>Pid: 1354, comm: mdt00_001 Not tainted 2.6.32-504.23.4.el6_lustre.x86_64 #1 QEMU Standard PC (i440FX + PIIX, 1996)
<4>RIP: 0010:[<ffffffffa0f14ff9>] [<ffffffffa0f14ff9>] mdd_xattr_set+0x2b9/0xdd0 [mdd]
<4>RSP: 0018:ffff88003bfd5b30 EFLAGS: 00010282
<4>RAX: ffffffffffffffea RBX: ffff88002f34d0f0 RCX: 0000000000000000
<4>RDX: 0000000000000000 RSI: 0000000000000003 RDI: ffff88003a6c19f8
<4>RBP: ffff88003bfd5bc0 R08: 0000000000000000 R09: 00000000c344d0a0
<4>R10: 00000000000013a2 R11: 0000000000000000 R12: ffff880031b72a00
<4>R13: ffff88003ba9c9c0 R14: 0000000000000000 R15: ffff8800370f5070
<4>FS: 0000000000000000(0000) GS:ffff880002380000(0000) knlGS:0000000000000000
<4>CS: 0010 DS: 0018 ES: 0018 CR0: 000000008005003b
<4>CR2: ffffffffffffffea CR3: 000000003758d000 CR4: 00000000000406e0
<4>DR0: 0000000000000000 DR1: 0000000000000000 DR2: 0000000000000000
<4>DR3: 0000000000000000 DR6: 00000000ffff0ff0 DR7: 0000000000000400
<4>Process mdt00_001 (pid: 1354, threadinfo ffff88003bfd4000, task ffff88003ba80ab0)
<4>Stack:
<4> ffff88002f0b7908 0000000300000001 ffff88003bfd5b60 ffffffffa06621bc
<4><d> ffff88002f34c560 ffff88003dda0c80 ffff88003bfd5b90 ffffffffa0dbf64c
<4><d> ffff88003bfd5b90 000000003ba8c800 ffff88003ba8cc28 ffff88003a6c19d8
<4>Call Trace:
<4> [<ffffffffa06621bc>] ? lustre_msg_get_versions+0x8c/0x100 [ptlrpc]
<4> [<ffffffffa0dbf64c>] ? mdt_version_save+0x8c/0x1a0 [mdt]
<4> [<ffffffffa0dc936e>] mdt_reint_setxattr+0x98e/0x1810 [mdt]
<4> [<ffffffffa0452a2c>] ? upcall_cache_get_entry+0x29c/0x880 [obdclass]
<4> [<ffffffffa0dbe86d>] mdt_reint_rec+0x5d/0x200 [mdt]
<4> [<ffffffffa0daa78b>] mdt_reint_internal+0x62b/0xb80 [mdt]
<4> [<ffffffffa0dab17b>] mdt_reint+0x6b/0x120 [mdt]
<4> [<ffffffffa06cbea2>] tgt_request_handle+0xa42/0x1230 [ptlrpc]
<4> [<ffffffffa06740b1>] ptlrpc_main+0xe41/0x1920 [ptlrpc]
<4> [<ffffffff8152a2be>] ? thread_return+0x4e/0x7d0
<4> [<ffffffffa0673270>] ? ptlrpc_main+0x0/0x1920 [ptlrpc]
<4> [<ffffffff8109e78e>] kthread+0x9e/0xc0
<4> [<ffffffff8100c28a>] child_rip+0xa/0x20
<4> [<ffffffff8109e6f0>] ? kthread+0x0/0xc0
<4> [<ffffffff8100c280>] ? child_rip+0x0/0x20
<4>Code: 00 e8 fc f1 3c ff 41 89 c6 e9 a4 fe ff ff 0f 1f 40 00 48 8b 45 c0 48 8b 70 08 48 8b 38 e8 e0 af 2d e0 48 85 c0 0f 84 e4 00 00 00 <f0> ff 08 0f 94 c2 84 d2 0f 85 c9 00 00 00 48 8b 75 c8 b9 18 00
<1>RIP [<ffffffffa0f14ff9>] mdd_xattr_set+0x2b9/0xdd0 [mdd]
<4> RSP <ffff88003bfd5b30>
<4>CR2: ffffffffffffffea

A invalid pointer got passed into posix_acl_release



 Comments   
Comment by Gerrit Updater [ 17/Jul/15 ]

Li Dongyang (dongyang.li@anu.edu.au) uploaded a new patch: http://review.whamcloud.com/15633
Subject: LU-6865 mdd: check return value of posix_acl_from_xattr
Project: fs/lustre-release
Branch: master
Current Patch Set: 1
Commit: a0e895e1a74c27b804c64d2fd27a3d6afbd8eb81

Comment by Peter Jones [ 17/Jul/15 ]

Alex

Could you please take care of this patch?

Thanks

Peter

Comment by Gerrit Updater [ 06/Oct/15 ]

Oleg Drokin (oleg.drokin@intel.com) merged in patch http://review.whamcloud.com/15633/
Subject: LU-6865 mdd: check return value of posix_acl_from_xattr
Project: fs/lustre-release
Branch: master
Current Patch Set:
Commit: 070e8fefe25434394a30ae4407b825a12cce8308

Generated at Sat Feb 10 07:27:44 UTC 2024 using Jira 9.4.14#940014-sha1:734e6822bbf0d45eff9af51f82432957f73aa32c.