linux/drivers
Joe Thornber 07321b43e0 dm bufio: update last_accessed when relinking a buffer
commit eb76faf53b upstream.

The 'last_accessed' member of the dm_buffer structure was only set when
the the buffer was created.  This led to each buffer being discarded
after dm_bufio_max_age time even if it was used recently.  In practice
this resulted in all thinp metadata being evicted soon after being read
-- this is particularly problematic for metadata intensive workloads
like multithreaded small random IO.

'last_accessed' is now updated each time the buffer is moved to the head
of the LRU list, so the buffer is now properly discarded if it was not
used in dm_bufio_max_age time.

Signed-off-by: Joe Thornber <ejt@redhat.com>
Signed-off-by: Mikulas Patocka <mpatocka@redhat.com>
Signed-off-by: Mike Snitzer <snitzer@redhat.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2014-11-14 08:59:51 -08:00
..
accessibility
acpi ACPI / scan: Correct error return value of create_modalias() 2014-10-05 14:52:16 -07:00
amba
ata libata-sff: Fix controllers with no ctl port 2014-11-14 08:59:45 -08:00
atm
auxdisplay
base firmware_class: make sure fw requests contain a name 2014-10-30 09:38:20 -07:00
bcma Merge branch 'upstream' of git://git.linux-mips.org/pub/scm/ralf/upstream-linus 2014-01-30 17:20:32 -08:00
block xen-blkback: fix leak on grant map error path 2014-11-14 08:59:51 -08:00
bluetooth Bluetooth: Fix issue with USB suspend in btusb driver 2014-10-30 09:38:23 -07:00
bus bus: mvebu-mbus: allow several windows with the same target/attribute 2014-06-07 10:28:22 -07:00
cdrom Merge branch 'for-3.14/drivers' of git://git.kernel.dk/linux-block 2014-01-30 11:40:10 -08:00
char random: add and use memzero_explicit() for clearing data 2014-11-14 08:59:49 -08:00
clk clk: qcom: mdp_lut_clk is a child of mdp_src 2014-10-05 14:52:24 -07:00
clocksource clocksource: Exynos_mct: Register clock event after request_irq() 2014-06-07 10:28:08 -07:00
connector net: Use netlink_ns_capable to verify the permisions of netlink messages 2014-06-26 15:15:38 -04:00
cpufreq cpufreq: integrator: fix integrator_cpufreq_remove return type 2014-10-09 12:21:26 -07:00
cpuidle powerpc/powernv/cpuidle: Back-end cpuidle driver for powernv platform. 2014-01-29 17:02:24 +11:00
crypto crypto: caam - fix addressing of struct member 2014-10-15 08:36:43 +02:00
dca
devfreq Merge branches 'pm-cpufreq' and 'pm-devfreq' 2014-01-29 11:48:23 +01:00
dio
dma dmaengine: dw: don't perform DMA when dmaengine_submit is called 2014-10-05 14:52:24 -07:00
edac i7300_edac: Fix device reference count 2014-02-25 09:43:13 +01:00
eisa Revert "EISA: Initialize device before its resources" 2014-01-17 14:57:29 -07:00
extcon extcon: max14577: Properly handle regmap_irq_get_virq error 2014-06-30 20:11:52 -07:00
firewire firewire: revert to 4 GB RDMA, fix protocols using Memory Space 2014-06-11 11:54:10 -07:00
firmware firmware: Do not use WARN_ON(!spin_is_locked()) 2014-09-17 09:19:08 -07:00
fmc drivers/fmc/fmc-write-eeprom.c: fix decimal permissions 2014-02-25 15:25:43 -08:00
gpio gpio: mcp23s08: Bug fix of SPI device tree registration. 2014-06-11 11:54:14 -07:00
gpu drm/cirrus: bind also to qemu-xen-traditional 2014-11-14 08:59:51 -08:00
hid HID: logitech-dj: prevent false errors to be shown 2014-10-05 14:52:12 -07:00
hsi
hv Drivers: hv: vmbus: Fix a bug in vmbus_open() 2014-10-30 09:38:21 -07:00
hwmon hwmon: (ds1621) Update zbits after conversion rate change 2014-10-05 14:52:19 -07:00
hwspinlock
i2c i2c: ismt: use correct length when copy buffer 2014-10-05 14:52:11 -07:00
ide drivers: ide: Include appropriate header file in ide-pio-blacklist.c 2014-01-28 23:35:09 -08:00
idle ACPI and power management updates for 3.14-rc1 2014-01-24 15:51:02 -08:00
iio iio:inkern: fix overwritten -EPROBE_DEFER in of_iio_channel_get_by_name 2014-10-05 14:52:18 -07:00
infiniband IB/core: When marshaling uverbs path, clear unused fields 2014-10-05 14:52:22 -07:00
input Input: i8042 - add nomux quirk for Avatar AVIU-145A6 2014-10-05 14:52:19 -07:00
iommu iommu/arm-smmu: fix programming of SMMU_CBn_TCR for stage 1 2014-10-05 14:52:15 -07:00
ipack
irqchip irqchip: gic: Fix core ID calculation when topology is read from DT 2014-07-28 08:06:02 -07:00
isdn isdnloop: several buffer overflows 2014-04-14 06:50:04 -07:00
leds leds: leds-pwm: properly clean up after probe failure 2014-06-07 10:28:18 -07:00
lguest
macintosh Merge branch 'next' of git://git.kernel.org/pub/scm/linux/kernel/git/benh/powerpc 2014-01-27 21:11:26 -08:00
mailbox drivers/mailbox/omap: make mbox->irq signed for error handling 2014-01-23 16:36:53 -08:00
md dm bufio: update last_accessed when relinking a buffer 2014-11-14 08:59:51 -08:00
media media: vb2: fix VBI/poll regression 2014-10-09 12:21:27 -07:00
memory memory: mvebu-devbus: fix the conversion of the bus width 2014-06-07 10:28:22 -07:00
memstick drivers/memstick/host/rtsx_pci_ms.c: fix ms card data transfer bug 2014-01-23 16:37:04 -08:00
message mptfusion: enable no_write_same for vmware scsi disks 2014-10-30 09:38:20 -07:00
mfd mfd: rtsx_pcr: Fix MSI enable error handling 2014-11-14 08:59:50 -08:00
misc mei: bus: fix possible boundaries violation 2014-10-30 09:38:21 -07:00
mmc mmc: rtsx_pci_sdmmc: fix incorrect last byte in R2 response 2014-11-14 08:59:46 -08:00
mtd UBI: add missing kmem_cache_free() in process_pool_aeb error path 2014-11-14 08:59:49 -08:00
net fix misuses of f_count() in ppp and netlink 2014-11-14 08:59:48 -08:00
nfc NFC: microread: Potential overflows in microread_target_discovered() 2014-10-05 14:52:18 -07:00
ntb
nubus
of of/irq: Fix lookup to use 'interrupts-extended' property first 2014-10-05 14:52:10 -07:00
oprofile
parisc
parport parport: fix menu breakage 2014-07-31 12:52:56 -07:00
pci PCI: Generate uppercase hex for modalias interface class 2014-10-30 09:38:23 -07:00
pcmcia PCI changes for the v3.14 merge window: 2014-01-22 16:39:28 -08:00
phy usb: phy: twl4030-usb: Fix regressions to runtime PM on omaps 2014-10-05 14:52:14 -07:00
pinctrl pinctrl: as3722: fix handling of GPIO invert bit 2014-05-13 13:32:54 +02:00
platform thinkpad_acpi: Fix inconsistent mute LED after resume 2014-05-13 13:32:56 +02:00
pnp ACPI / PNP: Fix acpi_pnp_match() 2014-08-07 14:52:37 -07:00
power power: charger-manager: Fix NULL pointer exception with missing cm-fuel-gauge 2014-11-14 08:59:50 -08:00
powercap
pps
ps3
ptp ptp_pch: Add dependency on HAS_IOMEM 2014-01-15 14:51:22 -08:00
pwm pwm: lp3943: Fix potential memory leak during request 2014-02-26 15:45:12 +01:00
rapidio rapidio/tsi721_dma: fix failure to obtain transaction descriptor 2014-08-07 14:52:37 -07:00
regulator regulator: arizona-ldo1: remove bypass functionality 2014-09-17 09:19:09 -07:00
remoteproc
reset
rpmsg
rtc drivers/rtc/rtc-puv3.c: use dev_dbg() instead of dev_debug() for typo issue 2014-07-17 16:21:06 -07:00
s390 s390/chsc: fix SEI usage on old FW levels 2014-05-13 13:32:49 +02:00
sbus bbc-i2c: Fix BBC I2C envctrl on SunBlade 2000 2014-08-14 09:38:26 +08:00
scsi qla2xxx: Fix shost use-after-free on device removal 2014-10-30 09:38:20 -07:00
sfi
sh
sn
spi spi: dw-mid: terminate ongoing transfers at exit 2014-10-30 09:38:24 -07:00
ssb Merge branch 'upstream' of git://git.linux-mips.org/pub/scm/ralf/upstream-linus 2014-01-30 17:20:32 -08:00
staging staging/lustre: disable virtual block device for 64K pages 2014-10-05 14:52:24 -07:00
target iscsi-target: Fix memory corruption in iscsit_logout_post_handler_diffcid 2014-10-05 14:52:18 -07:00
tc
thermal thermal: hwmon: Make the check for critical temp valid consistent 2014-07-17 16:21:03 -07:00
tty tty: omap-serial: fix division by zero 2014-10-30 09:38:22 -07:00
uio
usb usb: pch_udc: usb gadget device support for Intel Quark X1000 2014-10-30 09:38:19 -07:00
uwb uwb: init beacon cache entry before registering uwb device 2014-10-05 14:52:14 -07:00
vfio mm: close PageTail race 2014-03-04 07:55:47 -08:00
vhost vhost: validate vhost_get_vq_desc return value 2014-03-28 16:10:35 -04:00
video drivers/video/fbdev/fb-puv3.c: Add header files for function unifb_mmap 2014-07-09 11:18:29 -07:00
virt
virtio virtio_pci: fix virtio spec compliance on restore 2014-11-14 08:59:50 -08:00
vlynq drivers/vlynq/vlynq.c: fix another resource size off by 1 error 2014-01-23 16:36:55 -08:00
vme VME: Correct read/write alignment algorithm 2014-02-07 08:16:14 -08:00
w1 w1: fix w1_send_slave dropping a slave id 2014-05-06 07:59:26 -07:00
watchdog watchdog: kempld-wdt: Use the correct value when configuring the prescaler with the watchdog 2014-07-06 18:57:27 -07:00
xen xen/manage: Always freeze/thaw processes when suspend/resuming 2014-10-05 14:52:17 -07:00
zorro
Kconfig
Makefile