Peng Tao
046be74da8
NFS41: fix list splice type
...
We want to move commiting pages to pages list instead.
Otherwise it causes pnfs small writes crash like:
[34560.037692] BUG: unable to handle kernel NULL pointer dereference at 0000000000000068
[34560.038557] IP: [<ffffffffa05423d6>] nfs_init_commit+0x26/0x130 [nfs]
[34560.039400] PGD 69f5a067 PUD 69f59067 PMD 0
[34560.040207] Oops: 0000 [#1 ] SMP
[34560.041014] Modules linked in: nfsv3(OE) nfs_layout_flexfiles(OE) nfsv4(OE) nfs(OE) fscache(E) rpcsec_gss_krb5(E) xt_addrtype(E) xt_conntrack(E) ipt_MASQUERADE(E) nf_nat_masquerade_ipv4(E) iptable_nat(E) nf_conntrack_ipv4(E) nf_defrag_ipv4(E) nf_nat_ipv4(E) iptable_filter(E) ip_tables(E) x_tables(E) nf_nat(E) nf_conntrack(E) bridge(E) stp(E) llc(E) dm_thin_pool(E) dm_persistent_data(E) dm_bio_prison(E) dm_bufio(E) ppdev(E) vmw_balloon(E) coretemp(E) crc32_pclmul(E) ghash_clmulni_intel(E) aesni_intel(E) aes_x86_64(E) glue_helper(E) lrw(E) gf128mul(E) ablk_helper(E) cryptd(E) psmouse(E) serio_raw(E) vmw_vmci(E) i2c_piix4(E) shpchp(E) parport_pc(E) parport(E) mac_hid(E) nfsd(E) auth_rpcgss(E) nfs_acl(E) lockd(E) grace(E) sunrpc(E) xfs(E) libcrc32c(E) hid_generic(E) usbhid(E) hid(E) e1000(E) mptspi(E)
[34560.045106] mptscsih(E) mptbase(E) vmwgfx(E) drm_kms_helper(E) ttm(E) drm(E) autofs4(E) [last unloaded: fscache]
[34560.045897] CPU: 0 PID: 130543 Comm: bash Tainted: G OE 4.2.0-rc5-dp-00057-gf993a93 #11
[34560.046699] Hardware name: VMware, Inc. VMware Virtual Platform/440BX Desktop Reference Platform, BIOS 6.00 05/20/2014
[34560.047525] task: ffff880031b0a980 ti: ffff880045fec000 task.ti: ffff880045fec000
[34560.048264] RIP: 0010:[<ffffffffa05423d6>] [<ffffffffa05423d6>] nfs_init_commit+0x26/0x130 [nfs]
[34560.049000] RSP: 0018:ffff880045fefc18 EFLAGS: 00010246
[34560.049717] RAX: 0000000000000000 RBX: ffff8800208fbc80 RCX: ffff880045fefd50
[34560.050396] RDX: ffff880031c19ec0 RSI: ffff880045fefc88 RDI: ffff8800208fbc80
[34560.051041] RBP: ffff880045fefc28 R08: ffff8800208fbe68 R09: ffff880045fefc88
[34560.051666] R10: 0000000000000000 R11: 0000000000000000 R12: ffff880045fefc78
[34560.052247] R13: ffff880045fefc88 R14: ffff880045fefa90 R15: ffff880045fefd50
[34560.052825] FS: 00007fa02d58c740(0000) GS:ffff88006d600000(0000) knlGS:0000000000000000
[34560.053410] CS: 0010 DS: 0000 ES: 0000 CR0: 0000000080050033
[34560.053992] CR2: 0000000000000068 CR3: 000000003b37a000 CR4: 00000000001406f0
[34560.054615] Stack:
[34560.055200] ffff8800208fbc80 ffff8800208fbc80 ffff880045fefcc8 ffffffffa05c1a5b
[34560.055800] ffff880045fefcc8 ffff880045fefd50 0000000045fefcb8 ffff880045fefd40
[34560.056418] ffff8800420608e0 ffffffffa04f3910 0000000100000001 ffff880045fefd50
[34560.057013] Call Trace:
[34560.057672] [<ffffffffa05c1a5b>] pnfs_generic_commit_pagelist+0x1cb/0x300 [nfsv4]
[34560.058277] [<ffffffffa04f3910>] ? ff_layout_commit_pagelist+0x20/0x20 [nfs_layout_flexfiles]
[34560.058907] [<ffffffffa04f3905>] ff_layout_commit_pagelist+0x15/0x20 [nfs_layout_flexfiles]
[34560.059557] [<ffffffffa0543fc1>] nfs_generic_commit_list+0xb1/0xf0 [nfs]
[34560.060214] [<ffffffffa0543e47>] ? nfs_scan_commit+0x37/0xa0 [nfs]
[34560.060825] [<ffffffffa0544081>] nfs_commit_inode+0x81/0x150 [nfs]
[34560.061432] [<ffffffffa05443ae>] nfs_wb_all+0x1ae/0x400 [nfs]
[34560.062035] [<ffffffffa05380ad>] nfs_getattr+0x33d/0x510 [nfs]
[34560.062630] [<ffffffff8122499c>] vfs_getattr_nosec+0x2c/0x40
[34560.063223] [<ffffffff81224a66>] vfs_getattr+0x26/0x30
[34560.063818] [<ffffffff81224b35>] vfs_fstatat+0x65/0xa0
[34560.064413] [<ffffffff81224f3f>] SYSC_newstat+0x1f/0x40
[34560.065016] [<ffffffff8102b176>] ? do_audit_syscall_entry+0x66/0x70
[34560.065626] [<ffffffff8102c773>] ? syscall_trace_enter_phase1+0x113/0x170
[34560.066245] [<ffffffff81003017>] ? trace_hardirqs_on_thunk+0x17/0x19
[34560.066868] [<ffffffff812251ae>] SyS_newstat+0xe/0x10
[34560.067533] [<ffffffff817a5df2>] entry_SYSCALL_64_fastpath+0x16/0x7a
[34560.068173] Code: 0f 1f 44 00 00 0f 1f 44 00 00 55 4c 8d 87 e8 01 00 00 48 89 e5 53 48 89 fb 48 83 ec 08 4c 8b 0e 49 8b 41 18 4c 39 ce 48 8b 40 40 <4c> 8b 50 68 74 24 48 8b 87 e8 01 00 00 48 8b 7e 08 4d 89 41 08
[34560.069609] RIP [<ffffffffa05423d6>] nfs_init_commit+0x26/0x130 [nfs]
[34560.070295] RSP <ffff880045fefc18>
[34560.071008] CR2: 0000000000000068
[34560.073207] ---[ end trace f85f873260977406 ]---
[fixes 27571297a7e(pNFS: Tighten up locking around DS commit buckets)]
Signed-off-by: Peng Tao <tao.peng@primarydata.com>
Signed-off-by: Trond Myklebust <trond.myklebust@primarydata.com>
2015-08-20 13:43:53 -05:00
..
2015-07-12 11:22:05 -04:00
2015-06-30 19:44:57 -07:00
2015-07-04 19:36:06 -07:00
2015-05-11 10:50:17 -04:00
2015-06-23 18:02:01 -04:00
2015-07-04 19:36:06 -07:00
2015-04-26 17:22:07 -07:00
2015-07-31 17:05:37 -07:00
2015-06-23 18:01:30 -04:00
2015-07-04 19:36:06 -07:00
2015-06-29 14:50:22 -05:00
2015-06-23 18:01:59 -04:00
2015-07-17 16:39:53 -07:00
2015-07-04 19:36:06 -07:00
2015-06-30 19:44:58 -07:00
2015-05-11 10:50:17 -04:00
2015-07-09 11:42:21 -07:00
2015-05-06 10:57:37 -07:00
2015-06-25 17:00:42 -07:00
2015-06-23 18:02:00 -04:00
2015-02-22 11:38:41 -05:00
2015-07-04 19:36:06 -07:00
2015-06-24 20:07:10 -07:00
2015-07-09 11:42:21 -07:00
2015-07-25 08:54:26 -07:00
2015-06-02 08:33:34 -06:00
2015-06-23 18:02:00 -04:00
2015-04-02 14:28:53 +01:00
2015-07-04 19:36:06 -07:00
2015-06-27 09:47:46 -07:00
2015-07-04 19:36:06 -07:00
2015-07-04 19:36:06 -07:00
2015-06-22 12:51:21 -07:00
2015-07-09 13:35:31 -07:00
2015-06-24 17:49:41 -07:00
2015-04-15 15:06:57 -04:00
2015-06-27 09:41:50 -07:00
2015-07-04 19:36:06 -07:00
2015-07-16 16:28:28 -07:00
2015-07-03 15:20:57 -07:00
2015-04-21 16:16:02 -04:00
2015-05-10 22:18:28 -04:00
2015-07-04 19:36:06 -07:00
2015-06-14 11:31:39 -04:00
2015-08-20 13:43:53 -05:00
2015-08-17 13:22:49 -05:00
2015-07-09 11:42:21 -07:00
2015-07-21 16:06:53 -07:00
2015-07-04 19:36:06 -07:00
2015-07-09 11:42:21 -07:00
2015-05-28 18:25:19 -07:00
2015-07-12 11:22:05 -04:00
2015-07-18 10:49:57 -07:00
2015-07-03 15:20:57 -07:00
2015-06-23 18:02:00 -04:00
2015-04-26 17:22:07 -07:00
2015-04-15 15:06:57 -04:00
2015-06-26 09:52:05 -07:00
2015-04-11 22:29:40 -04:00
2015-06-23 18:01:59 -04:00
2015-07-03 15:20:57 -07:00
2015-06-23 18:02:00 -04:00
2015-07-04 19:36:06 -07:00
2015-06-25 14:11:34 -07:00
2015-07-09 16:38:57 +02:00
2015-07-04 19:36:06 -07:00
2015-07-29 11:48:02 +10:00
2015-04-16 23:27:56 -04:00
2015-02-20 04:03:58 -05:00
2015-07-04 19:36:06 -07:00
2015-04-26 17:22:07 -07:00
2015-07-04 19:36:06 -07:00
2015-06-02 09:22:34 -06:00
2015-07-09 11:42:21 -07:00
2015-07-04 19:36:06 -07:00
2015-07-29 11:48:00 +10:00
2015-07-12 11:27:04 -04:00
2015-04-24 15:45:28 -04:00
2015-02-17 14:34:52 -08:00
2015-05-12 22:03:44 +02:00
2015-06-02 10:29:07 -07:00
2015-06-23 18:02:00 -04:00
2015-07-01 02:31:08 -04:00
2015-04-09 11:39:55 -05:00
2015-07-23 13:36:44 -06:00
2015-07-04 19:36:06 -07:00
2015-06-19 03:19:32 -04:00
2015-04-10 15:08:35 -07:00
2015-04-14 16:49:05 -07:00
2015-07-04 19:36:06 -07:00
2015-07-13 06:29:11 -04:00
2015-05-31 13:23:08 +02:00
2015-06-30 19:44:56 -07:00
2015-06-02 08:40:20 -06:00
2015-08-01 20:18:38 -04:00
2015-07-23 11:31:15 -05:00
2015-04-15 15:06:58 -04:00
2015-06-23 18:01:09 -04:00
2015-04-15 15:06:58 -04:00
2015-04-02 20:34:20 -05:00
2015-07-22 20:33:27 -05:00
2015-06-23 18:01:07 -04:00
2015-06-30 19:44:56 -07:00
2015-04-11 22:29:46 -04:00
2015-05-19 08:32:00 +02:00
2015-07-04 19:36:06 -07:00
2015-06-24 20:47:21 -07:00
2015-04-15 15:06:59 -04:00
2015-07-01 01:50:06 -04:00
2015-05-21 13:28:47 -04:00