From: Li Xi Date: Tue, 27 Nov 2018 07:20:31 +0000 (-0500) Subject: LU-11697 osc: wrong page offset for T10PI checksum X-Git-Tag: 2.12.0-RC1~4 X-Git-Url: https://git.whamcloud.com/gitweb?a=commitdiff_plain;h=refs%2Fchanges%2F27%2F33727%2F5;p=fs%2Flustre-release.git LU-11697 osc: wrong page offset for T10PI checksum The page offset might could be non-zero value. Thus, when calculating T10PI checksum, the offset should be correct value. Change-Id: Ib32584eb47ea55ec3804e531ac02ffd252411886 Signed-off-by: Li Xi Reviewed-on: https://review.whamcloud.com/33727 Reviewed-by: Alex Zhuravlev Reviewed-by: Andreas Dilger Reviewed-by: Li Dongyang Tested-by: Jenkins Tested-by: Maloo Reviewed-by: Oleg Drokin --- diff --git a/lustre/osc/osc_request.c b/lustre/osc/osc_request.c index 0b8e290..6b56631 100644 --- a/lustre/osc/osc_request.c +++ b/lustre/osc/osc_request.c @@ -1155,7 +1155,8 @@ static int osc_checksum_bulk_t10pi(const char *obd_name, int nob, * The left guard number should be able to hold checksums of a * whole page */ - rc = obd_page_dif_generate_buffer(obd_name, pga[i]->pg, 0, + rc = obd_page_dif_generate_buffer(obd_name, pga[i]->pg, + pga[i]->off & ~PAGE_MASK, count, guard_start + used_number, guard_number - used_number,