Chunwei Chen
07d63f0cb9
Fix fail path in zfs_znode_alloc
...
When sa_bulk_lookup() fails, unlock_new_inode() will spit out a WARNING. It
will also recursive deadlock on ZFS_OBJ_HOLD_ENTER in zfs_zinactive().
Since we never call insert_inode_locked in fail path, I_NEW is never set, the
inode is never hashed. So unlock_new_inode() can be safely remove it.
We set z_sa_hdl to NULL in fail path so that iput path will stop at
zfs_inactive() without entering zfs_zinactive(). This way we can avoid the
deadlock and prevent double sa_handle_destroy().
Signed-off-by: Chunwei Chen <david.chen@osnexus.com>
Signed-off-by: Brian Behlendorf <behlendorf1@llnl.gov>
Issue #3899
2015-10-13 15:57:17 -07:00
..
2015-10-13 09:23:35 -07:00
2015-05-11 15:10:24 -07:00
2015-05-11 12:23:16 -07:00
2015-06-11 10:27:25 -07:00
2015-10-13 14:12:02 -07:00
2015-08-19 14:32:50 -07:00
2015-06-11 10:27:25 -07:00
2015-10-13 14:12:02 -07:00
2015-07-06 09:31:30 -07:00
2015-09-04 08:43:28 -07:00
2015-07-06 09:31:42 -07:00
2015-09-04 15:30:24 -04:00
2015-10-13 14:12:02 -07:00
2015-07-06 09:31:42 -07:00
2015-05-04 09:41:10 -07:00
2015-08-28 11:56:32 -07:00
2015-05-11 12:23:16 -07:00
2015-05-04 09:41:10 -07:00
2015-05-11 12:23:16 -07:00
2015-05-04 09:41:10 -07:00
2015-07-28 13:36:47 -07:00
2015-05-04 09:41:10 -07:00
2015-07-14 10:35:21 -07:00
2015-05-04 09:41:10 -07:00
2015-05-04 09:41:10 -07:00
2015-06-22 17:02:13 -07:00
2015-07-17 13:42:51 -07:00
2015-09-01 15:22:07 -07:00
2015-06-11 10:27:25 -07:00
2015-06-25 08:58:16 -07:00
2015-07-06 09:34:13 -07:00
2015-05-11 15:10:57 -07:00
2015-08-19 16:04:33 -07:00
2015-05-11 12:23:16 -07:00
2015-09-02 09:30:18 -07:00
2015-06-11 10:27:25 -07:00
2015-07-28 13:36:47 -07:00
2015-06-11 10:27:25 -07:00
2015-07-28 13:36:47 -07:00
2015-07-14 10:35:21 -07:00
2015-10-13 15:25:33 -07:00
2015-09-01 15:22:07 -07:00
2015-04-30 15:07:47 -07:00
2015-04-30 15:07:47 -07:00
2015-08-30 10:10:16 -07:00
2015-04-30 15:07:47 -07:00
2015-09-01 15:22:07 -07:00
2015-04-28 16:25:20 -07:00
2015-08-19 11:28:41 -07:00
2015-05-04 09:41:09 -07:00
2015-05-11 12:23:16 -07:00
2015-03-05 14:11:10 -08:00
2015-09-25 12:45:38 -07:00
2015-09-04 16:08:14 -07:00
2015-09-04 16:08:14 -07:00
2015-05-11 12:23:16 -07:00
2015-06-22 17:02:13 -07:00
2015-04-28 16:25:34 -07:00
2015-09-04 13:23:53 -07:00
2015-09-04 13:23:06 -07:00
2015-10-13 15:57:17 -07:00
2015-07-28 13:36:47 -07:00
2015-07-10 12:11:45 -07:00
2015-06-11 10:27:25 -07:00
2015-06-11 10:27:25 -07:00
2015-08-31 13:54:39 -07:00
2015-08-31 13:54:39 -07:00
2015-08-24 10:17:06 -07:00
2015-08-31 13:54:39 -07:00
2015-09-25 12:45:42 -07:00
2015-04-17 09:35:24 -07:00
2015-04-30 14:43:40 -07:00
2015-09-30 10:43:19 -07:00