view Documentation/networking/smctr.txt @ 897:329ea0ccb344

balloon: try harder to balloon up under memory pressure.

Currently if the balloon driver is unable to increase the guest's
reservation it assumes the failure was due to reaching its full
allocation, gives up on the ballooning operation and records the limit
it reached as the "hard limit". The driver will not try again until
the target is set again (even to the same value).

However it is possible that ballooning has in fact failed due to
memory pressure in the host and therefore it is desirable to keep
attempting to reach the target in case memory becomes available. The
most likely scenario is that some guests are ballooning down while
others are ballooning up and therefore there is temporary memory
pressure while things stabilise. You would not expect a well behaved
toolstack to ask a domain to balloon to more than its allocation nor
would you expect it to deliberately over-commit memory by setting
balloon targets which exceed the total host memory.

This patch drops the concept of a hard limit and causes the balloon
driver to retry increasing the reservation on a timer in the same
manner as when decreasing the reservation.

Also if we partially succeed in increasing the reservation
(i.e. receive less pages than we asked for) then we may as well keep
those pages rather than returning them to Xen.

Signed-off-by: Ian Campbell <ian.campbell@citrix.com>
author Keir Fraser <keir.fraser@citrix.com>
date Fri Jun 05 14:01:20 2009 +0100 (2009-06-05)
parents 831230e53067
line source
1 Text File for the SMC TokenCard TokenRing Linux driver (smctr.c).
2 By Jay Schulist <jschlst@samba.org>
4 The Linux SMC Token Ring driver works with the SMC TokenCard Elite (8115T)
5 ISA and SMC TokenCard Elite/A (8115T/A) MCA adapters.
7 Latest information on this driver can be obtained on the Linux-SNA WWW site.
8 Please point your browser to: http://www.linux-sna.org
10 This driver is rather simple to use. Select Y to Token Ring adapter support
11 in the kernel configuration. A choice for SMC Token Ring adapters will
12 appear. This drives supports all SMC ISA/MCA adapters. Choose this
13 option. I personally recommend compiling the driver as a module (M), but if you
14 you would like to compile it staticly answer Y instead.
16 This driver supports multiple adapters without the need to load multiple copies
17 of the driver. You should be able to load up to 7 adapters without any kernel
18 modifications, if you are in need of more please contact the maintainer of this
19 driver.
21 Load the driver either by lilo/loadlin or as a module. When a module using the
22 following command will suffice for most:
24 # modprobe smctr
25 smctr.c: v1.00 12/6/99 by jschlst@samba.org
26 tr0: SMC TokenCard 8115T at Io 0x300, Irq 10, Rom 0xd8000, Ram 0xcc000.
28 Now just setup the device via ifconfig and set and routes you may have. After
29 this you are ready to start sending some tokens.
31 Errata:
32 1). For anyone wondering where to pick up the SMC adapters please browse
33 to http://www.smc.com
35 2). If you are the first/only Token Ring Client on a Token Ring LAN, please
36 specify the ringspeed with the ringspeed=[4/16] module option. If no
37 ringspeed is specified the driver will attempt to autodetect the ring
38 speed and/or if the adapter is the first/only station on the ring take
39 the appropriate actions.
41 NOTE: Default ring speed is 16MB UTP.
43 3). PnP support for this adapter sucks. I recommend hard setting the
44 IO/MEM/IRQ by the jumpers on the adapter. If this is not possible
45 load the module with the following io=[ioaddr] mem=[mem_addr]
46 irq=[irq_num].
48 The following IRQ, IO, and MEM settings are supported.
50 IO ports:
51 0x200, 0x220, 0x240, 0x260, 0x280, 0x2A0, 0x2C0, 0x2E0, 0x300,
52 0x320, 0x340, 0x360, 0x380.
54 IRQs:
55 2, 3, 4, 5, 7, 8, 9, 10, 11, 12, 13, 14, 15
57 Memory addresses:
58 0xA0000, 0xA4000, 0xA8000, 0xAC000, 0xB0000, 0xB4000,
59 0xB8000, 0xBC000, 0xC0000, 0xC4000, 0xC8000, 0xCC000,
60 0xD0000, 0xD4000, 0xD8000, 0xDC000, 0xE0000, 0xE4000,
61 0xE8000, 0xEC000, 0xF0000, 0xF4000, 0xF8000, 0xFC000
63 This driver is under the GNU General Public License. Its Firmware image is
64 included as an initialized C-array and is licensed by SMC to the Linux
65 users of this driver. However no warranty about its fitness is expressed or
66 implied by SMC.