linux/drivers/misc
Nadav Amit 5d1a86ecf3 vmw_balloon: Add memory shrinker
Add a shrinker to the VMware balloon to prevent out-of-memory events.
We reuse the deflate logic for this matter. Deadlocks should not happen,
as no memory allocation is performed while the locks of the
communication (batch/page) and page-list are taken. In the unlikely
event in which the configuration semaphore is taken for write we bail
out and fail gracefully (causing processes to be killed).

Once the shrinker is called, inflation is postponed for few seconds.
The timeout is updated without any lock, but this should not cause any
races, as it is written and read atomically.

This feature is disabled by default, since it might cause performance
degradation.

Reviewed-by: Xavier Deguillard <xdeguillard@vmware.com>
Signed-off-by: Nadav Amit <namit@vmware.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2019-05-24 20:19:17 +02:00
..
altera-stapl misc: remove redundant 'default n' from Kconfig-s 2019-05-24 18:00:41 +02:00
c2port misc: remove redundant 'default n' from Kconfig-s 2019-05-24 18:00:41 +02:00
cardreader Char/Misc patches for 5.2-rc1 - part 2 2019-05-07 13:39:22 -07:00
cb710 misc: remove redundant 'default n' from Kconfig-s 2019-05-24 18:00:41 +02:00
cxl misc: remove redundant 'default n' from Kconfig-s 2019-05-24 18:00:41 +02:00
echo misc: remove redundant 'default n' from Kconfig-s 2019-05-24 18:00:41 +02:00
eeprom eeprom: at24: implement support for 'num-addresses' property 2019-02-14 09:32:35 +01:00
genwqe misc: remove redundant 'default n' from Kconfig-s 2019-05-24 18:00:41 +02:00
habanalabs habanalabs: Update CPU DMA memory label name 2019-05-02 15:37:19 +03:00
ibmasm ibmasm: don't write out of bounds in read handler 2018-07-07 09:59:35 +02:00
lis3lv02d misc: remove redundant 'default n' from Kconfig-s 2019-05-24 18:00:41 +02:00
lkdtm lkdtm: change snprintf to scnprintf for possible overflow 2019-01-18 16:34:05 +01:00
mei mei: Convert to use DEFINE_SHOW_ATTRIBUTE macro 2019-05-21 16:51:52 +02:00
mic x86/pci: Clean up usage of X86_DEV_DMA_OPS 2019-04-24 13:12:05 +02:00
ocxl misc: remove redundant 'default n' from Kconfig-s 2019-05-24 18:00:41 +02:00
sgi-gru misc/sgi-gru/grufault: fix a style error 2019-01-18 16:34:06 +01:00
sgi-xp misc: sgi-xp: Properly initialize buf in xpc_get_rsvd_page_pa 2019-05-24 19:00:54 +02:00
ti-st misc: ti-st: make array read_ver_cmd static, shrinks object size 2018-12-06 15:53:15 +01:00
vmw_vmci mm/gup: change GUP fast to use flags rather than a write 'bool' 2019-05-14 09:47:46 -07:00
ad525x_dpot-i2c.c drivers: misc: ad525x_dpot: Update MODULE AUTHOR email address 2018-09-14 15:36:20 +02:00
ad525x_dpot-spi.c drivers: misc: ad525x_dpot: Update MODULE AUTHOR email address 2018-09-14 15:36:20 +02:00
ad525x_dpot.c drivers: misc: ad525x_dpot: clean indentation issue, remove tabs 2019-01-18 16:34:05 +01:00
ad525x_dpot.h
apds990x.c misc: apds990x: remove unused array ir_currents 2018-09-12 09:46:46 +02:00
apds9802als.c
atmel_tclib.c misc: atmel_tclib: Do not probe already used TCBs 2019-05-02 21:55:58 +02:00
atmel-ssc.c misc: atmel-ssc: Fix section annotation on atmel_ssc_get_driver_data 2018-11-11 09:13:19 -08:00
bh1770glc.c misc: bh1770glc: remove unused array prox_curr_ma 2018-09-12 09:46:46 +02:00
cs5535-mfgpt.c
ds1682.c
dummy-irq.c
enclosure.c misc: enclosure: Use struct_size() in kzalloc() 2019-01-18 16:34:06 +01:00
fastrpc.c Merge 5.1-rc6 into char-misc-next 2019-04-21 23:14:47 +02:00
fsa9480.c
hmc6352.c misc: hmc6352: fix potential Spectre v1 2018-09-12 09:31:00 +02:00
hpilo.c misc: hpilo: Do not claim unsupported hardware 2019-02-27 16:00:21 +01:00
hpilo.h
ibmvmc.c misc: ibmvsm: Fix potential NULL pointer dereference 2019-01-18 14:14:14 +01:00
ibmvmc.h
ics932s401.c misc/ics932s401: Add a missing check to i2c_smbus_read_word_data 2019-01-18 16:34:06 +01:00
ioc4.c drivers: Remove explicit invocations of mmiowb() 2019-04-08 12:01:02 +01:00
isl29003.c
isl29020.c
Kconfig vmw_balloon: Compaction support 2019-05-24 20:19:17 +02:00
kgdbts.c Drivers: misc: fix out-of-bounds access in function param_set_kgdbts_var 2019-04-25 22:23:06 +02:00
lattice-ecp3-config.c
Makefile soc: add aspeed folder and misc drivers 2019-04-29 09:36:34 -07:00
pch_phub.c PCI: Move Rohm Vendor ID to generic list 2019-02-01 17:24:52 -06:00
pci_endpoint_test.c misc: pci_endpoint_test: Fix test_reg_bar to be updated in pci_endpoint_test 2019-05-01 15:50:13 +01:00
phantom.c
pti.c
pvpanic.c misc: pvpanic: fix warning implicit declaration 2019-01-18 16:42:05 +01:00
qcom-coincell.c
spear13xx_pcie_gadget.c
sram-exec.c
sram.c misc: sram: remove redundant null pointer check before of_node_put 2018-09-25 20:20:59 +02:00
sram.h
tifm_7xx1.c drivers: Remove explicit invocations of mmiowb() 2019-04-08 12:01:02 +01:00
tifm_core.c
tsl2550.c tsl2550: fix lux1_input error in low light 2018-07-07 17:44:52 +02:00
vexpress-syscfg.c misc: vexpress: Off by one in vexpress_syscfg_exec() 2018-12-06 15:42:18 +01:00
vmw_balloon.c vmw_balloon: Add memory shrinker 2019-05-24 20:19:17 +02:00