ia64/linux-2.6.18-xen.hg

annotate Documentation/networking/slicecom.hun @ 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
children
rev   line source
ian@0 1
ian@0 2 SliceCOM adapter felhasznaloi dokumentacioja - 0.51 verziohoz
ian@0 3
ian@0 4 Bartók István <bartoki@itc.hu>
ian@0 5 Utolso modositas: Wed Aug 29 17:26:58 CEST 2001
ian@0 6
ian@0 7 -----------------------------------------------------------------
ian@0 8
ian@0 9 Hasznalata:
ian@0 10
ian@0 11 Forditas:
ian@0 12
ian@0 13 Code maturity level options
ian@0 14 [*] Prompt for development and/or incomplete code/drivers
ian@0 15
ian@0 16 Network device support
ian@0 17 Wan interfaces
ian@0 18 <M> MultiGate (COMX) synchronous
ian@0 19 <M> Support for MUNICH based boards: SliceCOM, PCICOM (NEW)
ian@0 20 <M> Support for HDLC and syncPPP...
ian@0 21
ian@0 22
ian@0 23 A modulok betoltese:
ian@0 24
ian@0 25 modprobe comx
ian@0 26
ian@0 27 modprobe comx-proto-ppp # a Cisco-HDLC es a SyncPPP protokollt is
ian@0 28 # ez a modul adja
ian@0 29
ian@0 30 modprobe comx-hw-munich # a modul betoltodeskor azonnal jelent a
ian@0 31 # syslogba a detektalt kartyakrol
ian@0 32
ian@0 33
ian@0 34 Konfiguralas:
ian@0 35
ian@0 36 # Ezen az interfeszen Cisco-HDLC vonali protokoll fog futni
ian@0 37 # Az interfeszhez rendelt idoszeletek: 1,2 (128 kbit/sec-es vonal)
ian@0 38 # (a G.703 keretben az elso adatot vivo idoszelet az 1-es)
ian@0 39 #
ian@0 40 mkdir /proc/comx/comx0.1/
ian@0 41 echo slicecom >/proc/comx/comx0.1/boardtype
ian@0 42 echo hdlc >/proc/comx/comx0.1/protocol
ian@0 43 echo 1 2 >/proc/comx/comx0.1/timeslots
ian@0 44
ian@0 45
ian@0 46 # Ezen az interfeszen SyncPPP vonali protokoll fog futni
ian@0 47 # Az interfeszhez rendelt idoszelet: 3 (64 kbit/sec-es vonal)
ian@0 48 #
ian@0 49 mkdir /proc/comx/comx0.2/
ian@0 50 echo slicecom >/proc/comx/comx0.2/boardtype
ian@0 51 echo ppp >/proc/comx/comx0.2/protocol
ian@0 52 echo 3 >/proc/comx/comx0.2/timeslots
ian@0 53
ian@0 54 ...
ian@0 55
ian@0 56 ifconfig comx0.1 up
ian@0 57 ifconfig comx0.2 up
ian@0 58
ian@0 59 -----------------------------------------------------------------
ian@0 60
ian@0 61 A COMX driverek default 20 csomagnyi transmit queue-t rendelnek a halozati
ian@0 62 interfeszekhez. WAN halozatokban ennel hosszabbat is szokas hasznalni
ian@0 63 (20 es 100 kozott), hogy a vonal kihasznaltsaga nagy terheles eseten jobb
ian@0 64 legyen (bar ezzel megno a varhato kesleltetes a csomagok sorban allasa miatt):
ian@0 65
ian@0 66 # ifconfig comx0 txqueuelen 50
ian@0 67
ian@0 68 Ezt a beallitasi lehetoseget csak az ujabb disztribuciok ifconfig parancsa
ian@0 69 tamogatja (amik mar a 2.2 kernelekhez keszultek, mint a RedHat 6.1 vagy a
ian@0 70 Debian 2.2).
ian@0 71
ian@0 72 A 2.1-es Debian disztribuciohoz a http://www.debian.org/~rcw/2.2/netbase/
ian@0 73 cimrol toltheto le ujabb netbase csomag, ami mar ilyet tamogato ifconfig
ian@0 74 parancsot tartalmaz. Bovebben a 2.2 kernel hasznalatarol Debian 2.1 alatt:
ian@0 75 http://www.debian.org/releases/stable/running-kernel-2.2
ian@0 76
ian@0 77 -----------------------------------------------------------------
ian@0 78
ian@0 79 A kartya LED-jeinek jelentese:
ian@0 80
ian@0 81 piros - eg, ha Remote Alarm-ot kuld a tuloldal
ian@0 82 zold - eg, ha a vett jelben megtalalja a keretszinkront
ian@0 83
ian@0 84 Reszletesebben:
ian@0 85
ian@0 86 piros: zold: jelentes:
ian@0 87
ian@0 88 - - nincs keretszinkron (nincs jel, vagy rossz a jel)
ian@0 89 - eg "minden rendben"
ian@0 90 eg eg a vetel OK, de a tuloldal Remote Alarm-ot kuld
ian@0 91 eg - ez nincs ertelmezve, egyelore funkcio nelkul
ian@0 92
ian@0 93 -----------------------------------------------------------------
ian@0 94
ian@0 95 Reszletesebb leiras a hardver beallitasi lehetosegeirol:
ian@0 96
ian@0 97 Az altalanos,- es a protokoll-retegek beallitasi lehetosegeirol a 'comx.txt'
ian@0 98 fajlban leirtak SliceCOM kartyanal is ervenyesek, itt csak a hardver-specifikus
ian@0 99 beallitasi lehetosegek vannak osszefoglalva:
ian@0 100
ian@0 101 Konfiguralasi interfesz a /proc/comx/ alatt:
ian@0 102
ian@0 103 Minden timeslot-csoportnak kulon comx* interfeszt kell letrehozni mkdir-rel:
ian@0 104 comx0, comx1, .. stb. Itt beallithato, hogy az adott interfesz hanyadik kartya
ian@0 105 melyik timeslotja(i)bol alljon ossze. A Cisco-fele serial3:1 elnevezesek
ian@0 106 (serial3:1 = a 3. kartyaban az 1-es idoszelet-csoport) Linuxon aliasing-ot
ian@0 107 jelentenenek, ezert mi nem tudunk ilyen elnevezest hasznalni.
ian@0 108
ian@0 109 Tobb kartya eseten a comx0.1, comx0.2, ... vagy slice0.1, slice0.2 nevek
ian@0 110 hasznalhatoak.
ian@0 111
ian@0 112 Tobb SliceCOM kartya is lehet egy gepben, de sajat interrupt kell mindegyiknek,
ian@0 113 nem tud meg megosztott interruptot kezelni.
ian@0 114
ian@0 115 Az egesz kartyat erinto beallitasok:
ian@0 116
ian@0 117 Az ioport es irq beallitas nincs: amit a PCI BIOS kioszt a rendszernek,
ian@0 118 azt hasznalja a driver.
ian@0 119
ian@0 120
ian@0 121 comx0/boardnum - hanyadik SliceCOM kartya a gepben (a 'termeszetes' PCI
ian@0 122 sorrendben ertve: ahogyan a /proc/pci-ban vagy az 'lspci'
ian@0 123 kimeneteben megjelenik, altalaban az alaplapi PCI meghajto
ian@0 124 aramkorokhoz kozelebb eso kartyak a kisebb sorszamuak)
ian@0 125
ian@0 126 Default: 0 (0-tol kezdodik a szamolas)
ian@0 127
ian@0 128
ian@0 129 Bar a kovetkezoket csak egy-egy interfeszen allitjuk at, megis az egesz kartya
ian@0 130 mukodeset egyszerre allitjak. A megkotes hogy csak UP-ban levo interfeszen
ian@0 131 hasznalhatoak, azert van, mert kulonben nem vart eredmenyekre vezetne egy ilyen
ian@0 132 paranccsorozat:
ian@0 133
ian@0 134 echo 0 >boardnum
ian@0 135 echo internal >clock_source
ian@0 136 echo 1 >boardnum
ian@0 137
ian@0 138 - Ez a 0-s board clock_source-at allitana at.
ian@0 139
ian@0 140 Ezek a beallitasok megmaradnak az osszes interfesz torlesekor, de torlodnek
ian@0 141 a driver modul ki/betoltesekor.
ian@0 142
ian@0 143
ian@0 144 comx0/clock_source - A Tx orajelforrasa, a Cisco-val hasonlatosra keszult.
ian@0 145 Hasznalata:
ian@0 146
ian@0 147 papaya:# echo line >/proc/comx/comx0/clock_source
ian@0 148 papaya:# echo internal >/proc/comx/comx0/clock_source
ian@0 149
ian@0 150 line - A Tx orajelet a vett adatfolyambol dekodolja, igyekszik
ian@0 151 igazodni hozza. Ha nem lat orajelet az inputon, akkor
ian@0 152 atall a sajat orajelgeneratorara.
ian@0 153 internal - A Tx orajelet a sajat orajelgeneratora szolgaltatja.
ian@0 154
ian@0 155 Default: line
ian@0 156
ian@0 157 Normal osszeallitas eseten a tavkozlesi szolgaltato eszkoze
ian@0 158 (pl. HDSL modem) adja az orajelet, ezert ez a default.
ian@0 159
ian@0 160
ian@0 161 comx0/framing - A CRC4 ki/be kapcsolasa
ian@0 162
ian@0 163 A CRC4: 16 PCM keretet (A PCM keret az, amibe a 32 darab 64
ian@0 164 kilobites csatorna van bemultiplexalva. Nem osszetevesztendo a HDLC
ian@0 165 kerettel.) 2x8 -as csoportokra osztanak, es azokhoz 4-4 bites CRC-t
ian@0 166 szamolnak. Elsosorban a vonal minosegenek a monitorozasara szolgal.
ian@0 167
ian@0 168 papaya:~# echo crc4 >/proc/comx/comx0/framing
ian@0 169 papaya:~# echo no-crc4 >/proc/comx/comx0/framing
ian@0 170
ian@0 171 Default a 'crc4', a MATAV vonalak altalaban igy futnak. De ha nem
ian@0 172 egyforma is a beallitas a vonal ket vegen, attol a forgalom altalaban
ian@0 173 at tud menni.
ian@0 174
ian@0 175
ian@0 176 comx0/linecode - A vonali kodolas beallitasa
ian@0 177
ian@0 178 papaya:~# echo hdb3 >/proc/comx/comx0/linecode
ian@0 179 papaya:~# echo ami >/proc/comx/comx0/linecode
ian@0 180
ian@0 181 Default a 'hdb3', a MATAV vonalak igy futnak.
ian@0 182
ian@0 183 (az AMI kodolas igen ritka E1-es vonalaknal). Ha ez a beallitas nem
ian@0 184 egyezik a vonal ket vegen, akkor elofordulhat hogy a keretszinkron
ian@0 185 osszejon, de CRC4-hibak es a vonalakon atvitt adatokban is hibak
ian@0 186 keletkeznek (amit a HDLC/SyncPPP szinten CRC-hibaval jelez)
ian@0 187
ian@0 188
ian@0 189 comx0/reg - a kartya aramkoreinek, a MUNICH (reg) es a FALC (lbireg)
ian@0 190 comx0/lbireg regisztereinek kozvetlen elerese. Hasznalata:
ian@0 191
ian@0 192 echo >reg 0x04 0x0 - a 4-es regiszterbe 0-t ir
ian@0 193 echo >reg 0x104 - printk()-val kiirja a 4-es regiszter
ian@0 194 tartalmat a syslogba.
ian@0 195
ian@0 196 WARNING: ezek csak a fejleszteshez keszultek, sok galibat
ian@0 197 lehet veluk okozni!
ian@0 198
ian@0 199
ian@0 200 comx0/loopback - A kartya G.703 jelenek a visszahurkolasara is van lehetoseg:
ian@0 201
ian@0 202 papaya:# echo none >/proc/comx/comx0/loopback
ian@0 203 papaya:# echo local >/proc/comx/comx0/loopback
ian@0 204 papaya:# echo remote >/proc/comx/comx0/loopback
ian@0 205
ian@0 206 none - nincs visszahurkolas, normal mukodes
ian@0 207 local - a kartya a sajat maga altal adott jelet kapja vissza
ian@0 208 remote - a kartya a kivulrol vett jelet adja kifele
ian@0 209
ian@0 210 Default: none
ian@0 211
ian@0 212 -----------------------------------------------------------------
ian@0 213
ian@0 214 Az interfeszhez (Cisco terminologiaban 'channel-group') kapcsolodo beallitasok:
ian@0 215
ian@0 216 comx0/timeslots - mely timeslotok (idoszeletek) tartoznak az adott interfeszhez.
ian@0 217
ian@0 218 papaya:~# cat /proc/comx/comx0/timeslots
ian@0 219 1 3 4 5 6
ian@0 220 papaya:~#
ian@0 221
ian@0 222 Egy timeslot megkeresese (hanyas interfeszbe tartozik nalunk):
ian@0 223
ian@0 224 papaya:~# grep ' 4' /proc/comx/comx*/timeslots
ian@0 225 /proc/comx/comx0/timeslots:1 3 4 5 6
ian@0 226 papaya:~#
ian@0 227
ian@0 228 Beallitasa:
ian@0 229 papaya:~# echo '1 5 2 6 7 8' >/proc/comx/comx0/timeslots
ian@0 230
ian@0 231 A timeslotok sorrendje nem szamit, '1 3 2' ugyanaz mint az '1 2 3'.
ian@0 232
ian@0 233 Beallitashoz az adott interfesznek DOWN-ban kell lennie
ian@0 234 (ifconfig comx0 down), de ugyanannak a kartyanak a tobbi interfesze
ian@0 235 uzemelhet kozben.
ian@0 236
ian@0 237 Beallitaskor leellenorzi, hogy az uj timeslotok nem utkoznek-e egy
ian@0 238 masik interfesz timeslotjaival. Ha utkoznek, akkor nem allitja at.
ian@0 239
ian@0 240 Mindig 10-es szamrendszerben tortenik a timeslotok ertelmezese, nehogy
ian@0 241 a 08, 09 alaku felirast rosszul ertelmezze.
ian@0 242
ian@0 243 -----------------------------------------------------------------
ian@0 244
ian@0 245 Az interfeszek es a kartya allapotanak lekerdezese:
ian@0 246
ian@0 247 - A ' '-szel kezdodo sorok az eredeti kimenetet, a //-rel kezdodo sorok a
ian@0 248 magyarazatot jelzik.
ian@0 249
ian@0 250 papaya:~$ cat /proc/comx/comx1/status
ian@0 251 Interface administrative status is UP, modem status is UP, protocol is UP
ian@0 252 Modem status changes: 0, Transmitter status is IDLE, tbusy: 0
ian@0 253 Interface load (input): 978376 / 947808 / 951024 bits/s (5s/5m/15m)
ian@0 254 (output): 978376 / 947848 / 951024 bits/s (5s/5m/15m)
ian@0 255 Debug flags: none
ian@0 256 RX errors: len: 22, overrun: 1, crc: 0, aborts: 0
ian@0 257 buffer overrun: 0, pbuffer overrun: 0
ian@0 258 TX errors: underrun: 0
ian@0 259 Line keepalive (value: 10) status UP [0]
ian@0 260
ian@0 261 // Itt kezdodik a hardver-specifikus resz:
ian@0 262 Controller status:
ian@0 263 No alarms
ian@0 264
ian@0 265 // Alarm: hibajelzes:
ian@0 266 //
ian@0 267 // No alarms - minden rendben
ian@0 268 //
ian@0 269 // LOS - Loss Of Signal - nem erzekel jelet a bemeneten.
ian@0 270 // AIS - Alarm Indication Signal - csak egymas utani 1-esek jonnek
ian@0 271 // a bemeneten, a tuloldal igy is jelezheti hogy meghibasodott vagy
ian@0 272 // nincs inicializalva.
ian@0 273 // AUXP - Auxiliary Pattern Indication - 01010101.. sorozat jon a bemeneten.
ian@0 274 // LFA - Loss of Frame Alignment - nincs keretszinkron
ian@0 275 // RRA - Receive Remote Alarm - a tuloldal el, de hibat jelez.
ian@0 276 // LMFA - Loss of CRC4 Multiframe Alignment - nincs CRC4-multikeret-szinkron
ian@0 277 // NMF - No Multiframe alignment Found after 400 msec - ilyen alarm a no-crc4
ian@0 278 // es crc4 keretezesek eseten nincs, lasd lentebb
ian@0 279 //
ian@0 280 // Egyeb lehetseges hibajelzesek:
ian@0 281 //
ian@0 282 // Transmit Line Short - a kartya ugy erzi hogy az adasi kimenete rovidre
ian@0 283 // van zarva, ezert kikapcsolta az adast. (nem feltetlenul veszi eszre
ian@0 284 // a kulso rovidzarat)
ian@0 285
ian@0 286 // A veteli oldal csomagjainak lancolt listai, debug celokra:
ian@0 287
ian@0 288 Rx ring:
ian@0 289 rafutott: 0
ian@0 290 lastcheck: 50845731, jiffies: 51314281
ian@0 291 base: 017b1858
ian@0 292 rx_desc_ptr: 0
ian@0 293 rx_desc_ptr: 017b1858
ian@0 294 hw_curr_ptr: 017b1858
ian@0 295 06040000 017b1868 017b1898 c016ff00
ian@0 296 06040000 017b1878 017b1e9c c016ff00
ian@0 297 46040000 017b1888 017b24a0 c016ff00
ian@0 298 06040000 017b1858 017b2aa4 c016ff00
ian@0 299
ian@0 300 // A kartyat hasznalo tobbi interfesz: a 0-s channel-group a comx1 interfesz,
ian@0 301 // es az 1,2,...,16 timeslotok tartoznak hozza:
ian@0 302
ian@0 303 Interfaces using this board: (channel-group, interface, timeslots)
ian@0 304 0 comx1: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16
ian@0 305 1 comx2: 17
ian@0 306 2 comx3: 18
ian@0 307 3 comx4: 19
ian@0 308 4 comx5: 20
ian@0 309 5 comx6: 21
ian@0 310 6 comx7: 22
ian@0 311 7 comx8: 23
ian@0 312 8 comx9: 24
ian@0 313 9 comx10: 25
ian@0 314 10 comx11: 26
ian@0 315 11 comx12: 27
ian@0 316 12 comx13: 28
ian@0 317 13 comx14: 29
ian@0 318 14 comx15: 30
ian@0 319 15 comx16: 31
ian@0 320
ian@0 321 // Hany esemenyt kezelt le a driver egy-egy hardver-interrupt kiszolgalasanal:
ian@0 322
ian@0 323 Interrupt work histogram:
ian@0 324 hist[ 0]: 0 hist[ 1]: 2 hist[ 2]: 18574 hist[ 3]: 79
ian@0 325 hist[ 4]: 14 hist[ 5]: 1 hist[ 6]: 0 hist[ 7]: 1
ian@0 326 hist[ 8]: 0 hist[ 9]: 7
ian@0 327
ian@0 328 // Hany kikuldendo csomag volt mar a Tx-ringben amikor ujabb lett irva bele:
ian@0 329
ian@0 330 Tx ring histogram:
ian@0 331 hist[ 0]: 2329 hist[ 1]: 0 hist[ 2]: 0 hist[ 3]: 0
ian@0 332
ian@0 333 // Az E1-interfesz hiba-szamlaloi, az rfc2495-nek megfeleloen:
ian@0 334 // (kb. a Cisco routerek "show controllers e1" formatumaban: http://www.cisco.com/univercd/cc/td/doc/product/software/ios11/rbook/rinterfc.htm#xtocid25669126)
ian@0 335
ian@0 336 Data in current interval (91 seconds elapsed):
ian@0 337 9516 Line Code Violations, 65 Path Code Violations, 2 E-Bit Errors
ian@0 338 0 Slip Secs, 2 Fr Loss Secs, 2 Line Err Secs, 0 Degraded Mins
ian@0 339 0 Errored Secs, 0 Bursty Err Secs, 0 Severely Err Secs, 11 Unavail Secs
ian@0 340 Data in Interval 1 (15 minutes):
ian@0 341 0 Line Code Violations, 0 Path Code Violations, 0 E-Bit Errors
ian@0 342 0 Slip Secs, 0 Fr Loss Secs, 0 Line Err Secs, 0 Degraded Mins
ian@0 343 0 Errored Secs, 0 Bursty Err Secs, 0 Severely Err Secs, 0 Unavail Secs
ian@0 344 Data in last 4 intervals (1 hour):
ian@0 345 0 Line Code Violations, 0 Path Code Violations, 0 E-Bit Errors
ian@0 346 0 Slip Secs, 0 Fr Loss Secs, 0 Line Err Secs, 0 Degraded Mins
ian@0 347 0 Errored Secs, 0 Bursty Err Secs, 0 Severely Err Secs, 0 Unavail Secs
ian@0 348 Data in last 96 intervals (24 hours):
ian@0 349 0 Line Code Violations, 0 Path Code Violations, 0 E-Bit Errors
ian@0 350 0 Slip Secs, 0 Fr Loss Secs, 0 Line Err Secs, 0 Degraded Mins
ian@0 351 0 Errored Secs, 0 Bursty Err Secs, 0 Severely Err Secs, 0 Unavail Secs
ian@0 352
ian@0 353 -----------------------------------------------------------------
ian@0 354
ian@0 355 Nehany kulonlegesebb beallitasi lehetoseg (idovel beepulhetnek majd a driverbe):
ian@0 356 Ezekkel sok galibat lehet okozni, nagyon ovatosan kell oket hasznalni!
ian@0 357
ian@0 358 modified CRC-4, for improved interworking of CRC-4 and non-CRC-4
ian@0 359 devices: (lasd page 107 es g706 Annex B)
ian@0 360 lbireg[ 0x1b ] |= 0x08
ian@0 361 lbireg[ 0x1c ] |= 0xc0
ian@0 362 - ilyenkor ertelmezett az NMF - 'No Multiframe alignment Found after
ian@0 363 400 msec' alarm.
ian@0 364
ian@0 365 FALC - a vonali meghajto IC
ian@0 366 local loop - a sajat adasomat halljam vissza
ian@0 367 remote loop - a kivulrol jovo adast adom vissza
ian@0 368
ian@0 369 Egy hibakeresesre hasznalhato dolog:
ian@0 370 - 1-es timeslot local loop a FALC-ban: echo >lbireg 0x1d 0x21
ian@0 371 - local loop kikapcsolasa: echo >lbireg 0x1d 0x00