Kinglong Mee
5424427100
NFSv4: fix a reference leak caused WARNING messages
...
commit 366a1569bff3fe14abfdf9285e31e05e091745f5 upstream.
Because nfs4_opendata_access() has close the state when access is denied,
so the state isn't leak.
Rather than revert the commit a974deee47, I'd like clean the strange state close.
[ 1615.094218] ------------[ cut here ]------------
[ 1615.094607] WARNING: CPU: 0 PID: 23702 at lib/list_debug.c:31 __list_add_valid+0x8e/0xa0
[ 1615.094913] list_add double add: new=ffff9d7901d9f608, prev=ffff9d7901d9f608, next=ffff9d7901ee8dd0.
[ 1615.095458] Modules linked in: nfsv4(E) nfs(E) nfsd(E) tun bridge stp llc fuse ip_set nfnetlink vmw_vsock_vmci_transport vsock f2fs snd_seq_midi snd_seq_midi_event fscrypto coretemp ppdev crct10dif_pclmul crc32_pclmul ghash_clmulni_intel intel_rapl_perf vmw_balloon snd_ens1371 joydev gameport snd_ac97_codec ac97_bus snd_seq snd_pcm snd_rawmidi snd_timer snd_seq_device snd soundcore nfit parport_pc parport acpi_cpufreq tpm_tis tpm_tis_core tpm i2c_piix4 vmw_vmci shpchp auth_rpcgss nfs_acl lockd(E) grace sunrpc(E) xfs libcrc32c vmwgfx drm_kms_helper ttm drm crc32c_intel mptspi e1000 serio_raw scsi_transport_spi mptscsih mptbase ata_generic pata_acpi fjes [last unloaded: nfs]
[ 1615.097663] CPU: 0 PID: 23702 Comm: fstest Tainted: G W E 4.11.0-rc1+ #517
[ 1615.098015] Hardware name: VMware, Inc. VMware Virtual Platform/440BX Desktop Reference Platform, BIOS 6.00 07/02/2015
[ 1615.098807] Call Trace:
[ 1615.099183] dump_stack+0x63/0x86
[ 1615.099578] __warn+0xcb/0xf0
[ 1615.099967] warn_slowpath_fmt+0x5f/0x80
[ 1615.100370] __list_add_valid+0x8e/0xa0
[ 1615.100760] nfs4_put_state_owner+0x75/0xc0 [nfsv4]
[ 1615.101136] __nfs4_close+0x109/0x140 [nfsv4]
[ 1615.101524] nfs4_close_state+0x15/0x20 [nfsv4]
[ 1615.101949] nfs4_close_context+0x21/0x30 [nfsv4]
[ 1615.102691] __put_nfs_open_context+0xb8/0x110 [nfs]
[ 1615.103155] put_nfs_open_context+0x10/0x20 [nfs]
[ 1615.103586] nfs4_file_open+0x13b/0x260 [nfsv4]
[ 1615.103978] do_dentry_open+0x20a/0x2f0
[ 1615.104369] ? nfs4_copy_file_range+0x30/0x30 [nfsv4]
[ 1615.104739] vfs_open+0x4c/0x70
[ 1615.105106] ? may_open+0x5a/0x100
[ 1615.105469] path_openat+0x623/0x1420
[ 1615.105823] do_filp_open+0x91/0x100
[ 1615.106174] ? __alloc_fd+0x3f/0x170
[ 1615.106568] do_sys_open+0x130/0x220
[ 1615.106920] ? __put_cred+0x3d/0x50
[ 1615.107256] SyS_open+0x1e/0x20
[ 1615.107588] entry_SYSCALL_64_fastpath+0x1a/0xa9
[ 1615.107922] RIP: 0033:0x7fab599069b0
[ 1615.108247] RSP: 002b:00007ffcf0600d78 EFLAGS: 00000246 ORIG_RAX: 0000000000000002
[ 1615.108575] RAX: ffffffffffffffda RBX: 00007fab59bcfae0 RCX: 00007fab599069b0
[ 1615.108896] RDX: 0000000000000200 RSI: 0000000000000200 RDI: 00007ffcf060255e
[ 1615.109211] RBP: 0000000000040010 R08: 0000000000000000 R09: 0000000000000016
[ 1615.109515] R10: 00000000000006a1 R11: 0000000000000246 R12: 0000000000041000
[ 1615.109806] R13: 0000000000040010 R14: 0000000000001000 R15: 0000000000002710
[ 1615.110152] ---[ end trace 96ed63b1306bf2f3 ]---
Fixes: a974deee47 ("NFSv4: Fix memory and state leak in...")
Signed-off-by: Kinglong Mee <kinglongmee@gmail.com>
Signed-off-by: Anna Schumaker <Anna.Schumaker@Netapp.com>
Cc: Trond Myklebust <trond.myklebust@primarydata.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2017-07-05 14:37:15 +02:00
..
2017-05-14 13:32:54 +02:00
2015-06-30 19:44:57 -07:00
2016-06-07 18:14:32 -07:00
2017-06-29 12:48:50 +02:00
2015-07-04 19:36:06 -07:00
2017-06-14 13:16:24 +02:00
2015-11-16 20:38:43 -05:00
2017-06-14 13:16:24 +02:00
2017-06-29 12:48:51 +02:00
2015-09-10 13:29:01 -07:00
2017-06-26 07:13:08 +02:00
2016-05-04 14:48:41 -07:00
2016-08-16 09:30:49 +02:00
2016-10-22 12:26:56 +02:00
2016-09-15 08:27:47 +02:00
2016-03-03 15:07:09 -08:00
2015-12-12 10:15:34 -08:00
2016-10-31 04:13:58 -06:00
2017-06-14 13:16:24 +02:00
2017-05-25 14:30:11 +02:00
2017-03-15 09:57:15 +08:00
2015-08-07 13:59:24 +02:00
2017-06-17 06:39:37 +02:00
2017-03-12 06:37:28 +01:00
2017-04-30 05:49:28 +02:00
2015-09-10 13:29:01 -07:00
2016-10-31 04:13:58 -06:00
2016-09-30 10:18:39 +02:00
2016-06-01 12:15:54 -07:00
2017-06-26 07:13:11 +02:00
2016-10-28 03:01:34 -04:00
2017-03-12 06:37:26 +01:00
2016-10-31 04:13:58 -06:00
2017-06-14 13:16:24 +02:00
2016-09-24 10:07:36 +02:00
2015-11-11 20:11:28 -08:00
2015-11-06 17:50:42 -08:00
2015-07-04 19:36:06 -07:00
2016-03-16 08:42:59 -07:00
2017-07-05 14:37:15 +02:00
2015-08-13 10:22:06 -04:00
2017-06-14 13:16:24 +02:00
2017-06-14 13:16:24 +02:00
2016-09-30 10:18:37 +02:00
2015-11-06 17:50:42 -08:00
2017-06-14 13:16:24 +02:00
2016-11-10 16:36:34 +01:00
2017-06-26 07:13:11 +02:00
2016-10-28 03:01:27 -04:00
2016-04-12 09:08:56 -07:00
2015-10-16 11:42:28 -07:00
2017-06-14 13:16:24 +02:00
2017-06-17 06:39:38 +02:00
2015-11-13 20:34:33 -05:00
2017-04-12 12:38:33 +02:00
2015-11-23 21:11:08 -05:00
2015-11-04 22:13:45 -05:00
2017-01-26 08:23:48 +01:00
2017-06-14 13:16:24 +02:00
2017-06-14 13:16:24 +02:00
2017-06-14 13:16:27 +02:00
2016-10-07 15:23:47 +02:00
2016-10-22 12:26:56 +02:00
2015-11-10 12:07:22 -08:00
2015-11-11 09:45:24 -08:00
2017-05-20 14:27:01 +02:00
2017-06-14 13:16:24 +02:00
2015-08-05 13:49:35 -07:00
2015-10-23 23:26:43 +02:00
2016-11-18 10:48:34 +01:00
2015-11-16 23:54:45 -08:00
2017-01-19 20:17:21 +01:00
2017-06-14 13:16:24 +02:00
2015-08-17 18:39:46 -04:00
2017-06-29 12:48:50 +02:00
2016-04-12 09:08:58 -07:00
2015-08-07 04:39:40 +03:00
2015-11-05 23:05:32 -08:00
2016-04-12 09:09:04 -07:00
2016-08-10 11:49:30 +02:00
2015-08-17 23:38:10 -04:00
2015-11-16 23:54:45 -08:00
2015-08-12 15:28:45 -05:00
2016-08-10 11:49:27 +02:00
2015-10-15 10:33:21 -04:00
2017-04-30 05:49:28 +02:00
2017-06-14 13:16:24 +02:00
2016-09-15 08:27:49 +02:00
2017-04-30 05:49:28 +02:00
2015-09-11 15:21:34 -07:00
2016-05-18 17:06:48 -07:00
2016-06-07 18:14:35 -07:00
2017-04-30 05:49:28 +02:00
2017-04-30 05:49:28 +02:00
2017-01-26 08:23:47 +01:00
2016-04-12 09:08:55 -07:00
2016-09-07 08:32:43 +02:00
2015-08-07 04:39:40 +03:00
2017-02-23 17:43:09 +01:00
2017-06-14 13:16:24 +02:00
2016-10-28 03:01:32 -04:00
2015-11-06 17:50:42 -08:00
2017-05-08 07:46:01 +02:00
2016-03-16 08:43:01 -07:00
2016-10-22 12:26:56 +02:00
2017-05-20 14:27:01 +02:00