]> git.proxmox.com Git - mirror_zfs.git/commit
Fix 'zfs recv' of non large_dnode send streams
authorTom Caputi <tcaputi@datto.com>
Thu, 28 Jun 2018 21:55:11 +0000 (17:55 -0400)
committerTony Hutter <hutter2@llnl.gov>
Fri, 6 Jul 2018 09:46:51 +0000 (02:46 -0700)
commit45f0437912f4688bb15b353c8773b0e37e0b1a89
tree42b31e8603076d025e714b3df78f93495c54b7e2
parentdc3eea871a53cca85dcba1aeca116b7bd2500958
Fix 'zfs recv' of non large_dnode send streams

Currently, there is a bug where older send streams without the
DMU_BACKUP_FEATURE_LARGE_DNODE flag are not handled correctly.
The code in receive_object() fails to handle cases where
drro->drr_dn_slots is set to 0, which is always the case when the
sending code does not support this feature flag. This patch fixes
the issue by ensuring that that a value of 0 is treated as
DNODE_MIN_SLOTS.

Tested-by: DHE <git@dehacked.net>
Reviewed-by: Brian Behlendorf <behlendorf1@llnl.gov>
Signed-off-by: Tom Caputi <tcaputi@datto.com>
Closes #7617
Closes #7662
module/zfs/dmu_object.c
module/zfs/dmu_send.c