]> granicus.if.org Git - zfs/commit
Raw receive functions must not decrypt data
authorTom Caputi <tcaputi@datto.com>
Wed, 6 Jun 2018 17:16:41 +0000 (13:16 -0400)
committerBrian Behlendorf <behlendorf1@llnl.gov>
Wed, 6 Jun 2018 17:16:41 +0000 (10:16 -0700)
commite7504d7a188b666a61a8c2d8c1ffaa9713f6cdfa
treeac99e6fad89bef6a6768a233c1fb99b827c01552
parent6969afcefdfb49fb9c0fcf56240e6eb133a2c4a8
Raw receive functions must not decrypt data

This patch fixes a small bug found where receive_spill() sometimes
attempted to decrypt spill blocks when doing a raw receive. In
addition, this patch fixes another small issue in arc_buf_fill()'s
error handling where a decryption failure (which could be caused by
the first bug) would attempt to set the arc header's IO_ERROR flag
without holding the header's lock.

Reviewed-by: Matthew Thode <prometheanfire@gentoo.org>
Reviewed-by: Brian Behlendorf <behlendorf1@llnl.gov>
Reviewed by: Matthew Ahrens <mahrens@delphix.com>
Signed-off-by: Tom Caputi <tcaputi@datto.com>
Closes #7564
Closes #7584
Closes #7592
include/sys/dmu.h
module/zfs/arc.c
module/zfs/dmu.c
module/zfs/dmu_send.c
module/zfs/sa.c