kernel_optimize_test/drivers
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
..
accessibility
acpi PCI updates for v3.9: 2013-04-05 19:29:36 -07:00
amba
ata [libata] Fix HDIO_DRIVE_* ioctl() Linux 3.9 regression 2013-04-03 19:48:49 -04:00
atm
auxdisplay
base regmap: Back out work buffer fix 2013-04-09 18:03:25 +01:00
bcma
block rbd: re-submit read request for flattened clone 2013-05-13 15:06:45 -05:00
bluetooth Merge branch 'master' of git://git.kernel.org/pub/scm/linux/kernel/git/bluetooth/bluetooth 2013-03-18 15:17:11 -04:00
bus
cdrom
char vm: convert HPET mmap to vm_iomap_memory() helper 2013-04-19 09:46:39 -07:00
clk clk: tegra: Allow PLLE training to succeed 2013-04-01 11:44:38 -07:00
clocksource
connector
cpufreq cpufreq / intel_pstate: Set timer timeout correctly 2013-04-08 22:09:23 +02:00
cpuidle
crypto crypto: ux500 - add missing comma 2013-04-05 21:02:17 +08:00
dca
devfreq
dio
dma dmaengine: at_hdmac: fix race condition in atc_advance_work() 2013-04-18 08:54:22 -07:00
edac
eisa EISA/PCI: Init EISA early, before PNP 2013-04-01 12:02:05 -06:00
extcon
firewire
firmware efivars: only check for duplicates on the registered list 2013-04-26 08:02:03 -07:00
gpio Revert "gpio: pxa: set initcall level to module init" 2013-04-24 21:42:24 +02:00
gpu drm/fb-helper: Fix locking in drm_fb_helper_hotplug_event 2013-04-12 14:21:12 +10:00
hid HID: magicmouse: fix race between input_register() and probe() 2013-04-04 09:49:56 +02:00
hsi
hv
hwmon hwmon: (lm75.h) Update header inclusion 2013-03-18 21:19:49 +01:00
hwspinlock hwspinlock: fix __hwspin_lock_request error path 2013-04-05 17:45:11 +03:00
i2c ACPI / I2C: Use parent's ACPI_HANDLE() in acpi_i2c_register_devices() 2013-04-02 15:30:41 +02:00
ide
idle
iio
infiniband firmware,IB/qib: revert firmware file move 2013-04-05 12:19:39 -07:00
input Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/dtor/input 2013-04-19 09:15:13 -07:00
iommu IOMMU fixes for Linux v3.9-rc4 2013-03-27 09:25:11 -07:00
ipack
irqchip irqchip: gic: fix irq_trigger return 2013-03-26 20:52:25 +01:00
isdn
leds
lguest
macintosh
mailbox
md Revert "block: add missing block_bio_complete() tracepoint" 2013-04-18 09:00:26 -07:00
media Merge branch 'v4l_for_linus' of git://git.kernel.org/pub/scm/linux/kernel/git/mchehab/linux-media 2013-04-26 08:17:07 -07:00
memory
memstick
message
mfd
misc misc/vmw_vmci: Add dependency on CONFIG_NET 2013-04-03 11:53:39 -07:00
mmc
mtd mtdchar: remove no-longer-used vma helpers 2013-04-19 10:05:39 -07:00
net net: ax88796: avoid 64 bit arithmetic 2013-04-19 17:57:48 -04:00
nfc NFC: microread: Fix build failure due to a new MEI bus API 2013-04-01 00:52:42 +02:00
ntb
nubus
of
oprofile
parisc
parport
pci PCI/PM: Disable runtime PM of PCIe ports 2013-04-03 15:54:59 -06:00
pcmcia
pinctrl Here are a few pinctrl fixes for the v3.9 rc series: 2013-03-24 10:11:29 -07:00
platform Merge branch 'for_linus' of git://cavan.codon.org.uk/platform-drivers-x86 2013-04-18 15:14:34 -07:00
pnp
power
pps
ps3
ptp
pwm
rapidio
regulator
remoteproc remoteproc: fix FW_CONFIG typo 2013-04-07 15:11:27 +03:00
rpmsg
rtc Revert "drivers/rtc/rtc-at91rm9200.c: use a variable for storing IMR" 2013-04-05 09:36:53 -07:00
s390 qeth: fix qeth_wait_for_threads() deadlock for OSN devices 2013-04-08 17:16:57 -04:00
sbus bbc_i2c: fix section mismatch warning 2013-03-31 19:29:12 -04:00
scsi [SCSI] lpfc: fix potential NULL pointer dereference in lpfc_sli4_rq_put() 2013-04-11 14:17:15 -07:00
sfi
sh
sn
spi spi: Fixes for v3.9 2013-04-05 10:04:41 -07:00
ssb ssb: implement spurious tone avoidance 2013-04-10 10:31:26 -04:00
staging staging: comedi: s626: fix continuous acquisition 2013-03-25 11:35:38 -07:00
target target: Fix incorrect fallthrough of ALUA Standby/Offline/Transition CDBs 2013-04-11 01:48:49 -07:00
tc
thermal
tty TTY: fix atime/mtime regression 2013-04-26 07:59:23 -07:00
uio
usb USB / PM: Don't try to hide PM QoS flags from usb_port_device_release() 2013-04-02 01:25:09 +02:00
uwb
vfio vfio-pci: Fix possible integer overflow 2013-03-26 11:33:16 -06:00
vhost Merge git://git.kernel.org/pub/scm/linux/kernel/git/nab/target-pending 2013-04-12 15:26:42 -07:00
video vm: convert fb_mmap to vm_iomap_memory() helper 2013-04-19 09:57:35 -07:00
virt
virtio
vlynq
vme
w1
watchdog watchdog: Revert the AT91RM9200_WATCHDOG dependency 2013-04-14 09:09:10 +02:00
xen Bug-fixes: 2013-04-10 15:57:33 -07:00
zorro
Kconfig
Makefile