linux/drivers/block
Josh Durgin 03507db631 rbd: fix buffer size for writes to images with snapshots
rbd_osd_req_create() needs to know the snapshot context size to create
a buffer large enough to send it with the message front. It gets this
from the img_request, which was not set for the obj_request yet. This
resulted in trying to write past the end of the front payload, hitting
this BUG:

libceph: BUG_ON(p > msg->front.iov_base + msg->front.iov_len);

Fix this by associating the obj_request with its img_request
immediately after it's created, before the osd request is created.

Fixes: http://tracker.ceph.com/issues/5760
Suggested-by: Alex Elder <alex.elder@linaro.org>
Signed-off-by: Josh Durgin <josh.durgin@inktank.com>
Reviewed-by: Alex Elder <alex.elder@linaro.org>
2013-09-03 22:08:46 -07:00
..
aoe aoe: adjust ref of head for compound page tails 2013-08-13 17:57:48 -07:00
drbd drbd: Allow online change of al-stripes and al-stripe-size 2013-06-28 16:04:36 +02:00
mtip32xx drivers: avoid parsing names as kthread_run() format strings 2013-07-03 16:07:41 -07:00
paride block_device_operations->release() should return void 2013-05-07 02:16:21 -04:00
rsxx rsxx: Adding in debugfs entries. 2013-06-19 13:52:10 +02:00
xen-blkback Merge branch 'for-3.11/drivers' of git://git.kernel.dk/linux-block 2013-07-22 19:02:52 -07:00
amiflop.c block_device_operations->release() should return void 2013-05-07 02:16:21 -04:00
ataflop.c block_device_operations->release() should return void 2013-05-07 02:16:21 -04:00
brd.c drivers/block/brd.c: fix brd_lookup_page() race 2013-05-24 16:22:52 -07:00
cciss_cmd.h
cciss_scsi.c cciss: switch to ->show_info() 2013-04-09 14:13:19 -04:00
cciss_scsi.h
cciss.c cciss: fix broken mutex usage in ioctl 2013-06-12 16:29:45 -07:00
cciss.h
cpqarray.c block_device_operations->release() should return void 2013-05-07 02:16:21 -04:00
cpqarray.h
cryptoloop.c move linux/loop.h to drivers/block 2013-06-29 12:46:45 +04:00
DAC960.c procfs: new helper - PDE_DATA(inode) 2013-04-09 14:13:32 -04:00
DAC960.h
floppy.c Merge branch 'for-3.10/core' of git://git.kernel.dk/linux-block 2013-05-08 10:13:35 -07:00
hd.c Remove all #inclusions of asm/system.h 2012-03-28 18:30:03 +01:00
ida_cmd.h
ida_ioctl.h
Kconfig rsxx: Changing the adapter name to the official name. 2013-06-19 13:52:09 +02:00
loop.c move linux/loop.h to drivers/block 2013-06-29 12:46:45 +04:00
loop.h move linux/loop.h to drivers/block 2013-06-29 12:46:45 +04:00
Makefile NVMe: Add nvme-scsi.c 2013-03-28 14:50:49 -04:00
mg_disk.c Merge branch 'for-3.10/drivers' of git://git.kernel.dk/linux-block 2013-05-08 11:51:05 -07:00
nbd.c nbd: correct disconnect behavior 2013-07-03 16:08:05 -07:00
nvme-core.c NVMe: Add MSI support 2013-05-31 11:45:52 -04:00
nvme-scsi.c NVMe: Fix a signedness bug in nvme_trans_modesel_get_mp 2013-05-17 09:10:38 -04:00
osdblk.c block: Add bio_clone_bioset(), bio_clone_kmalloc() 2012-09-09 10:35:39 +02:00
pktcdvd.c pktcdvd: silence static checker warning 2013-05-29 15:36:22 +02:00
ps3disk.c Drivers: block: remove __dev* attributes. 2013-01-03 15:57:15 -08:00
ps3vram.c procfs: new helper - PDE_DATA(inode) 2013-04-09 14:13:32 -04:00
rbd_types.h rbd: get rid of RBD_MAX_SEG_NAME_LEN 2012-12-17 08:37:29 -06:00
rbd.c rbd: fix buffer size for writes to images with snapshots 2013-09-03 22:08:46 -07:00
smart1,2.h
sunvdc.c sunvdc: Fix off-by-one in generic_request(). 2013-02-14 11:49:01 -08:00
swim3.c block_device_operations->release() should return void 2013-05-07 02:16:21 -04:00
swim_asm.S
swim.c swim: Release memory region after incorrect return/goto 2013-06-24 19:44:19 +02:00
sx8.c block, sx8: fix pointer math issue getting fw version 2012-03-03 19:44:39 +01:00
umem.c Drivers: block: remove __dev* attributes. 2013-01-03 15:57:15 -08:00
umem.h
virtio_blk.c virtio_blk: Add missing 'static' qualifiers 2013-05-20 12:09:23 +09:30
xen-blkfront.c Merge branch 'stable/for-jens-3.10' of git://git.kernel.org/pub/scm/linux/kernel/git/konrad/xen into for-3.11/drivers 2013-06-28 16:01:14 +02:00
xsysace.c xilinx systemace: Fix sparse warnings 2013-07-10 07:47:12 +02:00
z2ram.c block_device_operations->release() should return void 2013-05-07 02:16:21 -04:00