Michael Lyle
616486ab52
bcache: fix writeback target calc on large devices
...
Bcache needs to scale the dirty data in the cache over the multiple
backing disks in order to calculate writeback rates for each.
The previous code did this by multiplying the target number of dirty
sectors by the backing device size, and expected it to fit into a
uint64_t; this blows up on relatively small backing devices.
The new approach figures out the bdev's share in 16384ths of the overall
cached data. This is chosen to cope well when bdevs drastically vary in
size and to ensure that bcache can cross the petabyte boundary for each
backing device.
This has been improved based on Tang Junhui's feedback to ensure that
every device gets a share of dirty data, no matter how small it is
compared to the total backing pool.
The existing mechanism is very limited; this is purely a bug fix to
remove limits on volume size. However, there still needs to be change
to make this "fair" over many volumes where some are idle.
Reported-by: Jack Douglas <jack@douglastechnology.co.uk>
Signed-off-by: Michael Lyle <mlyle@lyle.org>
Reviewed-by: Tang Junhui <tang.junhui@zte.com.cn>
Signed-off-by: Jens Axboe <axboe@kernel.dk>
2018-01-08 13:29:00 -07:00
..
accessibility
acpi
PM / sleep: Avoid excess pm_runtime_enable() calls in device_resume()
2017-12-11 14:32:56 +01:00
amba
A couple of dma-mapping updates:
2017-11-14 16:54:12 -08:00
android
ANDROID: binder: fix transaction leak.
2017-11-28 16:54:45 +01:00
ata
libata: sata_down_spd_limit should return if driver has not recorded sstatus speed
2017-12-04 13:57:03 -08:00
atm
Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net
2017-11-29 13:10:25 -08:00
auxdisplay
auxdisplay: img-ascii-lcd: Only build on archs that have IOMEM
2017-11-27 12:36:45 -08:00
base
PM / sleep: Avoid excess pm_runtime_enable() calls in device_resume()
2017-12-11 14:32:56 +01:00
bcma
Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net-next
2017-11-15 11:56:19 -08:00
block
DAC960: split up ioctl function to reduce stack size
2018-01-06 09:18:00 -07:00
bluetooth
bus
bus: arm-ccn: fix module unloading Error: Removing state 147 which has instances left.
2017-12-04 17:15:20 +00:00
cdrom
Merge branch 'for-4.15/block' of git://git.kernel.dk/linux-block
2017-11-14 15:32:19 -08:00
char
The big changes for IPMI that just went in had a few problems. These
2017-12-11 17:01:59 -08:00
clk
We have two changes to the core framework this time around. The first being a
2017-11-17 20:04:24 -08:00
clocksource
- final batch of "non trivial" timer conversions (multi-tree dependencies,
2017-11-23 16:29:05 +01:00
connector
cpufreq
cpufreq: mediatek: add missing MODULE_DESCRIPTION/AUTHOR/LICENSE
2017-11-22 00:00:14 +01:00
cpuidle
powerpc updates for 4.15
2017-11-16 12:47:46 -08:00
crypto
powerpc updates for 4.15
2017-11-16 12:47:46 -08:00
dax
device-dax: implement ->split() to catch invalid munmap attempts
2017-11-29 18:40:42 -08:00
dca
devfreq
Merge branches 'pm-devfreq' and 'pm-tools'
2017-11-13 01:41:39 +01:00
dio
dma
dmaengine: fsl-edma: disable clks on all error paths
2017-12-15 09:53:04 +05:30
dma-buf
Tracing updates for 4.15:
2017-11-17 14:58:01 -08:00
edac
Modules updates for v4.15
2017-11-15 13:46:33 -08:00
eisa
extcon
USB/PHY patches for 4.15-rc1
2017-11-13 21:14:07 -08:00
firewire
Merge branch 'timers-core-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip
2017-11-13 17:56:58 -08:00
firmware
ARM: SoC fixes for 4.15-rc
2017-12-10 08:26:59 -08:00
fmc
fpga
Char/Misc patches for 4.15-rc1
2017-11-16 09:10:59 -08:00
fsi
gpio
gpio: pca953x: fix vendor prefix for PCA9654
2017-12-02 22:41:43 +01:00
gpu
Merge branch 'akpm' (patches from Andrew)
2017-12-14 16:35:20 -08:00
hid
treewide: setup_timer() -> timer_setup()
2017-11-21 15:57:07 -08:00
hsi
HSI changes for the v4.15 series
2017-11-15 13:35:43 -08:00
hv
Drivers: hv: vmbus: Fix a rescind issue
2017-11-28 16:56:26 +01:00
hwmon
hwmon: (jc42) optionally try to disable the SMBUS timeout
2017-11-30 13:12:44 -08:00
hwspinlock
hwspinlock update for v4.15
2017-11-17 20:16:20 -08:00
hwtracing
tracing: Pass export pointer as argument to ->write()
2017-12-04 07:14:30 -05:00
i2c
i2c: piix4: Fix port number check on release
2017-12-12 23:27:04 +01:00
ide
Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/ide
2017-11-19 08:04:41 -10:00
idle
Merge branch 'pm-cpuidle'
2017-11-13 01:34:14 +01:00
iio
iio: health: max30102: Temperature should be in milli Celsius
2017-12-02 11:15:14 +00:00
infiniband
Second pull request for 4.15-rc
2017-12-16 13:43:08 -08:00
input
treewide: Remove TIMER_FUNC_TYPE and TIMER_DATA_TYPE casts
2017-11-21 16:35:54 -08:00
iommu
IOMMU fixes for Linux v4.15-rc3
2017-12-06 10:53:02 -08:00
ipack
irqchip
Merge branch 'irq-urgent-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip
2017-11-26 14:39:20 -08:00
isdn
treewide: setup_timer() -> timer_setup() (2 field)
2017-11-21 15:57:09 -08:00
leds
LED updates for 4.15rc1
2017-11-14 18:09:31 -08:00
lightnvm
lightnvm: pblk: refactor pblk_ppa_comp function
2018-01-05 08:50:12 -07:00
macintosh
Merge branch 'timers-core-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip
2017-11-13 17:56:58 -08:00
mailbox
Change to POLL api and fixes for FlexRM and OMAP driver
2017-11-15 13:39:18 -08:00
mcb
md
bcache: fix writeback target calc on large devices
2018-01-08 13:29:00 -07:00
media
media fixes for v4.15-rc3
2017-12-08 13:18:47 -08:00
memory
ARM: SoC driver updates for v4.15
2017-11-16 16:05:01 -08:00
memstick
treewide: setup_timer() -> timer_setup()
2017-11-21 15:57:07 -08:00
message
Modules updates for v4.15
2017-11-15 13:46:33 -08:00
mfd
treewide: setup_timer() -> timer_setup()
2017-11-21 15:57:07 -08:00
misc
Merge branch 'WIP.x86-pti.base.prep-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip
2017-12-17 13:54:31 -08:00
mmc
mmc: core: apply NO_CMD23 quirk to some specific cards
2017-12-11 13:43:27 +01:00
mtd
Rename superblock flags (MS_xyz -> SB_xyz)
2017-11-27 13:05:09 -08:00
mux
net
net: qcom/emac: Reduce timeout for mdio read/write
2017-12-15 15:46:19 -05:00
nfc
treewide: setup_timer() -> timer_setup() (2 field)
2017-11-21 15:57:09 -08:00
ntb
treewide: setup_timer() -> timer_setup()
2017-11-21 15:57:07 -08:00
nubus
m68k updates for 4.15
2017-11-13 12:10:24 -08:00
nvdimm
libnvdimm for 4.15
2017-11-17 09:51:57 -08:00
nvme
nvme: fix subsystem multiple controllers support check
2018-01-08 16:57:00 +01:00
nvmem
Char/Misc patches for 4.15-rc1
2017-11-16 09:10:59 -08:00
of
of_mdio / mdiobus: ensure mdio devices have fwnode correctly populated
2017-12-13 15:01:47 -05:00
opp
oprofile
parisc
parport
Char/Misc patches for 4.15-rc1
2017-11-16 09:10:59 -08:00
pci
Power management fix for v4.15-rc4
2017-12-14 18:25:03 -08:00
pcmcia
drivers/pcmcia/sa1111_badge4.c: avoid unused function warning
2017-11-17 16:10:04 -08:00
perf
arm64 updates for 4.15
2017-11-15 10:56:56 -08:00
phy
USB/PHY patches for 4.15-rc1
2017-11-13 21:14:07 -08:00
pinctrl
pinctrl: sunxi: Disable strict mode for H5 driver
2017-11-30 16:50:43 +01:00
platform
platform/x86: dell-wmi: check for kmalloc() errors
2017-12-11 17:26:03 -08:00
pnp
power
power supply and reset changes for the v4.15 series
2017-11-15 13:37:15 -08:00
powercap
pps
treewide: setup_timer() -> timer_setup()
2017-11-21 15:57:07 -08:00
ps3
ptp
xen: features and fixes for v4.15-rc1
2017-11-16 13:06:27 -08:00
pwm
pwm: Changes for v4.15-rc1
2017-11-22 21:09:18 -10:00
rapidio
Merge branch 'akpm' (patches from Andrew)
2017-11-17 16:56:17 -08:00
ras
Merge branch 'timers-core-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip
2017-11-13 17:56:58 -08:00
regulator
- New Drivers
2017-11-16 09:15:57 -08:00
remoteproc
remoteproc updates for v4.15
2017-11-17 20:14:10 -08:00
reset
ARM: SoC driver updates for v4.15
2017-11-16 16:05:01 -08:00
rpmsg
rpmsg updates for v4.15
2017-11-17 20:12:08 -08:00
rtc
Merge branch 'timers-urgent-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip
2017-11-25 08:37:16 -10:00
s390
s390/qeth: update takeover IPs after configuration change
2017-12-15 11:29:43 -05:00
sbus
Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/sparc
2017-11-17 20:21:44 -08:00
scsi
SCSI fixes on 20171215
2017-12-15 12:51:42 -08:00
sfi
sh
A couple of dma-mapping updates:
2017-11-14 16:54:12 -08:00
sn
soc
meson-gx-socinfo: Fix package id parsing
2017-11-30 15:29:44 -08:00
spi
spmi
ssb
staging
Merge tag 'staging-4.15-rc4' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/staging
2017-12-15 12:59:48 -08:00
target
target: Use sgl_alloc_order() and sgl_free()
2018-01-06 09:18:00 -07:00
tc
tee
optee: fix invalid of_node_put() in optee_driver_init()
2017-11-29 10:24:57 +01:00
thermal
Merge branch 'next' of git://git.kernel.org/pub/scm/linux/kernel/git/rzhang/linux
2017-11-17 14:31:27 -08:00
thunderbolt
Char/Misc patches for 4.15-rc1
2017-11-16 09:10:59 -08:00
tty
serdev: ttyport: fix tty locking in close
2017-11-28 16:00:50 +01:00
uio
usb
USB: core: prevent malicious bNumInterfaces overflow
2017-12-13 12:28:43 +01:00
uwb
treewide: setup_timer() -> timer_setup()
2017-11-21 15:57:07 -08:00
vfio
VFIO Updates for Linux v4.15
2017-11-14 16:47:47 -08:00
vhost
vhost: fix skb leak in handle_rx()
2017-12-02 21:31:03 -05:00
video
fbdev changes for v4.15:
2017-11-20 21:50:24 -10:00
virt
virtio
virtio_mmio: fix devm cleanup
2017-12-14 21:01:40 +02:00
vlynq
vme
Char/Misc patches for 4.15-rc1
2017-11-16 09:10:59 -08:00
w1
Char/Misc patches for 4.15-rc1
2017-11-16 09:10:59 -08:00
watchdog
treewide: setup_timer() -> timer_setup()
2017-11-21 15:57:07 -08:00
xen
xen: fixes for 4.15-rc4
2017-12-15 11:32:09 -08:00
zorro
Kconfig
Merge branches 'pm-cpufreq-sched' and 'pm-opp'
2017-11-13 01:40:52 +01:00
Makefile
usb: build drivers/usb/common/ when USB_SUPPORT is set
2017-11-28 15:17:49 +01:00