]> git.proxmox.com Git - mirror_ubuntu-bionic-kernel.git/commitdiff
block: fix the count of PGPGOUT for WRITE_SAME
authorJiufei Xue <jiufei.xue@linux.alibaba.com>
Tue, 27 Feb 2018 12:10:03 +0000 (20:10 +0800)
committerSeth Forshee <seth.forshee@canonical.com>
Thu, 15 Mar 2018 13:27:41 +0000 (08:27 -0500)
BugLink: http://bugs.launchpad.net/bugs/1755179
commit 7c5a0dcf557c6511a61e092ba887de28882fe857 upstream.

The vm counters is counted in sectors, so we should do the conversation
in submit_bio.

Fixes: 74d46992e0d9 ("block: replace bi_bdev with a gendisk pointer and partitions index")
Cc: stable@vger.kernel.org
Reviewed-by: Omar Sandoval <osandov@fb.com>
Reviewed-by: Christoph Hellwig <hch@lst.de>
Signed-off-by: Jiufei Xue <jiufei.xue@linux.alibaba.com>
Signed-off-by: Jens Axboe <axboe@kernel.dk>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Signed-off-by: Thadeu Lima de Souza Cascardo <cascardo@canonical.com>
block/blk-core.c

index 82b92adf34771b94eb63c2f0d1d680985e1bd871..b725d9e340c2768c123c84cedf5573dcc9c89a47 100644 (file)
@@ -2401,7 +2401,7 @@ blk_qc_t submit_bio(struct bio *bio)
                unsigned int count;
 
                if (unlikely(bio_op(bio) == REQ_OP_WRITE_SAME))
-                       count = queue_logical_block_size(bio->bi_disk->queue);
+                       count = queue_logical_block_size(bio->bi_disk->queue) >> 9;
                else
                        count = bio_sectors(bio);