summaryrefslogtreecommitdiffstats
path: root/drivers/block/pktcdvd.c
diff options
context:
space:
mode:
authorRoger Pau Monne <roger.pau@citrix.com>2013-05-02 10:58:50 +0200
committerKonrad Rzeszutek Wilk <konrad.wilk@oracle.com>2013-05-08 08:46:51 -0400
commitb7649158a0d241f8d53d13ff7441858539e16656 (patch)
treeacee055fae1b48f1c986dec29481d2b999dd3127 /drivers/block/pktcdvd.c
parentbb642e8315fd573795e8b6fa9b9629064d73add1 (diff)
downloadtalos-op-linux-b7649158a0d241f8d53d13ff7441858539e16656.tar.gz
talos-op-linux-b7649158a0d241f8d53d13ff7441858539e16656.zip
xen-blkfront: use a different scatterlist for each request
In blkif_queue_request blkfront iterates over the scatterlist in order to set the segments of the request, and in blkif_completion blkfront iterates over the raw request, which makes it hard to know the exact position of the source and destination memory positions. This can be solved by allocating a scatterlist for each request, that will be keep until the request is finished, allowing us to copy the data back to the original memory without having to iterate over the raw request. Oracle-Bug: 16660413 - LARGE ASYNCHRONOUS READS APPEAR BROKEN ON 2.6.39-400 CC: stable@vger.kernel.org Signed-off-by: Roger Pau Monné <roger.pau@citrix.com> Reported-and-Tested-by: Anne Milicia <anne.milicia@oracle.com> Signed-off-by: Konrad Rzeszutek Wilk <konrad.wilk@oracle.com>
Diffstat (limited to 'drivers/block/pktcdvd.c')
0 files changed, 0 insertions, 0 deletions
OpenPOWER on IntegriCloud