alistair23-linux/drivers
Philipp Reisner e4f925e12e drbd: Do not upgrade state to Outdated if already Inconsistent [Bugz 277]
There was a race condition:
  In a situation with a SyncSource+Primary and a SyncTarget+Secondary node,
  and a resync dependency to some other device. After both nodes decided
  to do the resync, the other device finishes its resync process.
  At that time SyncSource already sent the P_SYNC_UUID packet, and
  already updated its peer disk state to Inconsistent.
  The SyncTarget node waits for the P_SYNC_UUID and sends a state packet
  to report the resync dependency change. That packet still carries
  a disk state of Outdated.

Impact:
  If application writes come in, during that time on the Primary node,
  those do not get replicated, and the out-of-sync counter gets increased.
  => The completion of resync is not detected on the primary node.
  => stalled.
  Those blocks get resync'ed with the next resync, since the are get
  marked as out-of-sync in the bitmap.

In order to fix this, we filter out that wrong state change in the
sanitize_state() function.

Signed-off-by: Philipp Reisner <philipp.reisner@linbit.com>
Signed-off-by: Lars Ellenberg <lars.ellenberg@linbit.com>
2010-05-18 01:01:05 +02:00
..
accessibility
acpi Merge branch 'bugzilla-15749' into release 2010-04-16 16:08:07 -04:00
amba
ata libata: ensure NCQ error result taskfile is fully initialized 2010-04-22 21:59:13 -04:00
atm
auxdisplay
base Revert "memory-hotplug: add 0x prefix to HEX block_size_bytes" 2010-04-09 10:05:33 -07:00
block drbd: Do not upgrade state to Outdated if already Inconsistent [Bugz 277] 2010-05-18 01:01:05 +02:00
bluetooth
cdrom
char Merge branch 'urgent' of git://git.kernel.org/pub/scm/linux/kernel/git/brodo/pcmcia-2.6 2010-04-20 09:21:19 -07:00
clocksource
connector
cpufreq Merge branch 'fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/davej/cpufreq 2010-04-24 11:35:21 -07:00
cpuidle
crypto
dca
dio
dma
edac
eisa
firewire Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/ieee1394/linux1394-2.6 2010-04-22 12:54:54 -07:00
firmware Merge branch 'x86-fixes-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/x86/linux-2.6-tip 2010-04-07 11:02:23 -07:00
gpio gpio: fix pca953x set_type 'scheduling while atomic' bug 2010-04-27 16:26:03 -07:00
gpu Merge branch 'drm-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/airlied/drm-2.6 2010-04-27 08:22:50 -07:00
hid Merge branch 'master' into export-slabh 2010-04-05 11:37:28 +09:00
hwmon lis3: add support for HP ProBook 432x/442x/452x/522x 2010-04-24 11:31:24 -07:00
i2c i2c-stu300: off by one issue 2010-04-20 01:17:13 +01:00
ide pata_pcmcia/ide-cs: add IDs for transcend and kingston cards 2010-04-22 21:51:12 -04:00
idle
ieee1394
ieee802154
infiniband Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/roland/infiniband 2010-04-09 11:53:06 -07:00
input Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/dtor/input 2010-04-15 11:49:55 -07:00
isdn Fix ISDN/Gigaset build failure 2010-04-19 11:53:17 -07:00
leds
lguest lguest: stop using KVM hypercall mechanism 2010-04-14 21:43:56 +09:30
macintosh device_attributes: add sysfs_attr_init() for dynamic attributes 2010-04-07 08:38:03 -07:00
mca
md md/raid5: fix previous patch. 2010-04-23 07:08:28 +10:00
media device_attributes: add sysfs_attr_init() for dynamic attributes 2010-04-07 08:38:03 -07:00
memstick
message
mfd
misc VMware Balloon driver 2010-04-24 11:31:26 -07:00
mmc omap hsmmc: fix a bug in card remove scenario 2010-04-07 08:38:03 -07:00
mtd Merge branch 'for-linus' of git://git.kernel.dk/linux-2.6-block 2010-04-28 07:56:05 -07:00
net sfc: Change falcon_probe_board() to fail for unsupported boards 2010-04-28 12:18:27 -07:00
nubus
of Merge branch 'master' into export-slabh 2010-04-05 11:37:28 +09:00
oprofile
parisc
parport
pci PCI: Ensure we re-enable devices on resume 2010-04-22 16:13:47 -07:00
pcmcia pcmcia: fix matching rules for pseudo-multi-function cards 2010-04-26 20:09:07 +02:00
platform eeepc-laptop: add missing sparse_keymap_free 2010-04-23 15:23:21 -04:00
pnp Merge branches 'battery', 'bugzilla-14667', 'bugzilla-15096', 'bugzilla-15480', 'bugzilla-15521', 'bugzilla-15605', 'gpe-reference-counters', 'misc', 'pxm-fix' and 'video-random-key' into release 2010-04-06 17:06:22 -04:00
power
pps
ps3
rapidio
regulator regulator: fix enabling regulator issue on max8925 2010-04-28 15:24:34 +01:00
rtc rtc-mxc: multiple fixes in rtc-mxc probe method 2010-04-07 08:38:05 -07:00
s390 Merge branch 'for-linus' of git://git390.marist.edu/pub/scm/linux-2.6 2010-04-22 08:43:59 -07:00
sbus
scsi scsi: fix operator precedence warning 2010-04-22 11:11:02 -07:00
serial m68knommu: allow 4 coldfire serial ports 2010-04-21 14:56:00 +10:00
sfi
sh
sn
spi
ssb MIPS: Fix SSB PCIcore IO resource management 2010-04-12 17:26:14 +01:00
staging staging: fix dt3155 build 2010-04-22 07:20:00 -07:00
tc
telephony
thermal drivers/thermal/thermal_sys.c: fix 'key f70f4b50 not in .data' in thermal_sys 2010-04-07 08:38:03 -07:00
uio
usb usb: Increase timeout value for device reset 2010-04-22 15:18:29 -07:00
uwb
vhost Merge branch 'master' of /home/davem/src/GIT/linux-2.6/ 2010-04-11 02:44:30 -07:00
video drivers/video/efifb.c: support framebuffer for NVIDIA 9400M in MacBook Pro 5,1 2010-04-24 11:31:24 -07:00
virtio virtio: Fix GFP flags passed from the virtio balloon driver 2010-04-22 07:34:05 -07:00
vlynq
w1 w1: fix omap 1-wire driver compilation 2010-04-24 11:31:25 -07:00
watchdog watchdog: booke_wdt: fix build - unconstify watchdog_info 2010-04-27 07:58:47 +00:00
xen
zorro
Kconfig
Makefile