target: Fix inconsistent address passed to kunmap_atomic() in sbc_dif_copy_prot()
authorAkinobu Mita <akinobu.mita@gmail.com>
Fri, 1 May 2015 06:23:48 +0000 (15:23 +0900)
committerNicholas Bellinger <nab@linux-iscsi.org>
Sun, 31 May 2015 05:42:23 +0000 (22:42 -0700)
commit57636388af32c2c7db3919e8d53f4979b7c7c307
tree0ce8ebfdf5e3d95b2a6a2a9145964a97f31f9440
parent144bc4c2a42a0f42a32c106d53f5bf2724fbf098
target: Fix inconsistent address passed to kunmap_atomic() in sbc_dif_copy_prot()

In sbc_dif_copy_prot(), the addresses passed to kunmap_atomic() are
inconsistent with the addresses which are mapped by kmap_atomic().
That could be problematic if an SG element has its length larger than
PAGE_SIZE as kunmap_atomic() will attempt to unmap different page.

Signed-off-by: Akinobu Mita <akinobu.mita@gmail.com>
Cc: Nicholas Bellinger <nab@linux-iscsi.org>
Cc: Sagi Grimberg <sagig@mellanox.com>
Cc: "Martin K. Petersen" <martin.petersen@oracle.com>
Cc: Christoph Hellwig <hch@lst.de>
Cc: "James E.J. Bottomley" <James.Bottomley@HansenPartnership.com>
Cc: target-devel@vger.kernel.org
Cc: linux-scsi@vger.kernel.org
Signed-off-by: Nicholas Bellinger <nab@linux-iscsi.org>
drivers/target/target_core_sbc.c