From c1f0520554460237e835a3ad37e7d3baa0dca937 Mon Sep 17 00:00:00 2001 From: Li Xi Date: Tue, 27 Nov 2018 02:20:31 -0500 Subject: [PATCH] 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 --- lustre/osc/osc_request.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) 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, -- 1.8.3.1