kernel-hacking-2024-linux-s.../drivers/block
Alex Elder 02c74fbad9 rbd: re-submit read request for flattened clone
If a clone image gets flattened while a parent read request is
underway, the original rbd object request needs to be resubmitted.

The reason is that by the time we get the response to the parent
read request, the data read from the parent may be out of date.
In other words, we could see this sequence of events:

    rbd client                      parent image/osd
    ----------                      ----------------
    original object ENOENT;
        issue parent read
                                    respond to parent read
                                    child image flattened
    original image header refresh
             <--- original object written independently here
    parent read response received

Add code to rbd_img_parent_read_callback() to detect when a clone's
parent image has disappeared (as evidenced by its parent overlap
becoming 0), and re-submit the original read request in that case.

Signed-off-by: Alex Elder <elder@inktank.com>
Reviewed-by: Josh Durgin <josh.durgin@inktank.com>
2013-05-13 15:06:45 -05:00
..
aoe aoe: reserve enough headroom on skbs 2013-03-28 14:29:47 -04:00
drbd
mtip32xx mtip32xx: fix two smatch warnings 2013-04-04 09:03:41 +02:00
paride
rsxx rsxx: remove unused variable 2013-03-26 14:48:12 -06:00
xen-blkback xen-blkback: don't store dev_bus_addr 2013-03-19 12:50:00 -04:00
amiflop.c
ataflop.c
brd.c
cciss.c cciss: fix invalid use of sizeof in cciss_find_cfgtables() 2013-03-22 12:22:49 -06:00
cciss.h
cciss_cmd.h
cciss_scsi.c
cciss_scsi.h
cpqarray.c
cpqarray.h
cryptoloop.c
DAC960.c
DAC960.h
floppy.c
hd.c
ida_cmd.h
ida_ioctl.h
Kconfig block: IBM RamSan 70/80 branding changes. 2013-03-11 19:53:55 +01:00
loop.c for-linus-20130409 2013-04-09 12:05:41 -07:00
Makefile
mg_disk.c mg_disk: fix error return code in mg_probe() 2013-03-28 09:43:43 -06:00
nbd.c
nvme.c Merge git://git.infradead.org/users/willy/linux-nvme 2013-03-22 16:43:53 -07:00
osdblk.c
pktcdvd.c
ps3disk.c
ps3vram.c
rbd.c rbd: re-submit read request for flattened clone 2013-05-13 15:06:45 -05:00
rbd_types.h
smart1,2.h
sunvdc.c
swim.c
swim3.c
swim_asm.S
sx8.c
umem.c
umem.h
virtio_blk.c
xen-blkfront.c xen-blkfront: remove frame list from blk_shadow 2013-03-19 12:50:07 -04:00
xsysace.c
z2ram.c