This is a note to let you know that I've just added the patch titled

    sunvdc: limit each sg segment to a page

to the 3.14-stable tree which can be found at:
    
http://www.kernel.org/git/?p=linux/kernel/git/stable/stable-queue.git;a=summary

The filename of the patch is:
     sunvdc-limit-each-sg-segment-to-a-page.patch
and it can be found in the queue-3.14 subdirectory.

If you, or anyone else, feels it should not be added to the stable tree,
please let <[email protected]> know about it.


>From foo@baz Tue Nov 18 09:08:38 PST 2014
From: Dwight Engen <[email protected]>
Date: Fri, 19 Sep 2014 09:42:53 -0400
Subject: sunvdc: limit each sg segment to a page

From: Dwight Engen <[email protected]>

[ Upstream commit 5eed69ffd248c9f68f56c710caf07db134aef28b ]

ldc_map_sg() could fail its check that the number of pages referred to
by the sg scatterlist was <= the number of cookies.

This fixes the issue by doing a similar thing to the xen-blkfront driver,
ensuring that the scatterlist will only ever contain a segment count <=
port->ring_cookies, and each segment will be page aligned, and <= page
size. This ensures that the scatterlist is always mappable.

Orabug: 19347817
OraBZ: 15945

Signed-off-by: Dwight Engen <[email protected]>
Signed-off-by: David S. Miller <[email protected]>
Signed-off-by: Greg Kroah-Hartman <[email protected]>
---
 drivers/block/sunvdc.c |    4 ++++
 1 file changed, 4 insertions(+)

--- a/drivers/block/sunvdc.c
+++ b/drivers/block/sunvdc.c
@@ -747,6 +747,10 @@ static int probe_disk(struct vdc_port *p
 
        port->disk = g;
 
+       /* Each segment in a request is up to an aligned page in size. */
+       blk_queue_segment_boundary(q, PAGE_SIZE - 1);
+       blk_queue_max_segment_size(q, PAGE_SIZE);
+
        blk_queue_max_segments(q, port->ring_cookies);
        blk_queue_max_hw_sectors(q, port->max_xfer_size);
        g->major = vdc_major;


Patches currently in stable-queue which might be from [email protected] 
are

queue-3.14/vio-fix-reuse-of-vio_dring-slot.patch
queue-3.14/sunvdc-compute-vdisk-geometry-from-capacity.patch
queue-3.14/sunvdc-add-cdrom-and-v1.1-protocol-support.patch
queue-3.14/sunvdc-don-t-call-vd_op_get_vtoc.patch
queue-3.14/sunvdc-limit-each-sg-segment-to-a-page.patch
--
To unsubscribe from this list: send the line "unsubscribe stable" in
the body of a message to [email protected]
More majordomo info at  http://vger.kernel.org/majordomo-info.html

Reply via email to