mirror_zfs/module
loli10K d359e99c38 diff_cb() does not handle large dnodes
Trying to 'zfs diff' a snapshot with large dnodes will incorrectly try
to access its interior slots when dnodesize > sizeof(dnode_phys_t).
This is normally not an issue because the interior slots are
zero-filled, which report_dnode() handles calling
report_free_dnode_range(). However this is not the case for encrypted
large dnodes or filesystem using many SA based xattrs where the extra
data past the legacy dnode size boundary is interpreted as a
dnode_phys_t.

Reviewed-by: Brian Behlendorf <behlendorf1@llnl.gov>
Reviewed-by: Tom Caputi <tcaputi@datto.com>
Reviewed-by: Ryan Moeller <ryan@ixsystems.com>
Signed-off-by: loli10K <ezomori.nozomu@gmail.com>
Closes #7678 
Closes #8931 
Closes #9343
2019-09-24 12:01:37 -07:00
..
avl Fix typos in module/ 2019-08-30 14:32:18 -07:00
icp OpenZFS restructuring - move platform specific headers 2019-09-05 09:34:54 -07:00
lua Fix typos in module/ 2019-08-30 14:32:18 -07:00
nvpair Fix typos in module/ 2019-08-30 14:32:18 -07:00
os Scrubbing root pools may deadlock on kernels without elevator_change() (#9321) 2019-09-13 18:09:59 -07:00
spl OpenZFS restructuring - move platform specific sources 2019-09-06 11:26:26 -07:00
unicode Update build system and packaging 2018-05-29 16:00:33 -07:00
zcommon Make module tunables cross platform 2019-09-05 14:49:49 -07:00
zfs diff_cb() does not handle large dnodes 2019-09-24 12:01:37 -07:00
.gitignore Prepare SPL repo to merge with ZFS repo 2018-05-29 14:51:39 -07:00
Makefile.in OpenZFS restructuring - move platform specific sources 2019-09-06 11:26:26 -07:00