direct-io.hg

changeset 1004:8e10a7fe0e35

bitkeeper revision 1.649.1.1 (3fe30d51wHoC4YRHGfqLuwa5BdH7-g)

Upgrade to Linux 2.4.23
author iap10@labyrinth.cl.cam.ac.uk
date Fri Dec 19 14:38:09 2003 +0000 (2003-12-19)
parents b27a29e3c9ce
children 8056e86b0cf7
files BitKeeper/etc/ignore xenolinux-2.4.22-sparse/Documentation/Configure.help xenolinux-2.4.22-sparse/Makefile xenolinux-2.4.22-sparse/arch/xeno/config.in xenolinux-2.4.22-sparse/arch/xeno/defconfig xenolinux-2.4.22-sparse/arch/xeno/kernel/irq.c xenolinux-2.4.22-sparse/arch/xeno/kernel/setup.c xenolinux-2.4.22-sparse/arch/xeno/mm/ioremap.c xenolinux-2.4.22-sparse/drivers/block/ll_rw_blk.c xenolinux-2.4.22-sparse/drivers/char/mem.c xenolinux-2.4.22-sparse/drivers/char/tty_io.c xenolinux-2.4.22-sparse/fs/exec.c xenolinux-2.4.22-sparse/init/do_mounts.c xenolinux-2.4.22-sparse/kernel/panic.c xenolinux-2.4.22-sparse/kernel/printk.c xenolinux-2.4.22-sparse/mm/memory.c xenolinux-2.4.22-sparse/mm/mprotect.c
line diff
     1.1 --- a/BitKeeper/etc/ignore	Tue Dec 16 15:55:22 2003 +0000
     1.2 +++ b/BitKeeper/etc/ignore	Fri Dec 19 14:38:09 2003 +0000
     1.3 @@ -523,3 +523,14 @@ tools/xc/lib/xc_private.o
     1.4  tools/xc/lib/xc_vbd.o
     1.5  tools/xc/lib/xc_vif.o
     1.6  xen/xen.s
     1.7 +xen/drivers/message/fusion/driver.o
     1.8 +xen/drivers/message/fusion/mptbase.o
     1.9 +xen/drivers/message/fusion/mptscsih.o
    1.10 +xen/drivers/net/e1000/kcompat.o
    1.11 +xen/drivers/scsi/sym53c8xx_2/sym53c8xx.o
    1.12 +xen/drivers/scsi/sym53c8xx_2/sym_fw.o
    1.13 +xen/drivers/scsi/sym53c8xx_2/sym_glue.o
    1.14 +xen/drivers/scsi/sym53c8xx_2/sym_hipd.o
    1.15 +xen/drivers/scsi/sym53c8xx_2/sym_malloc.o
    1.16 +xen/drivers/scsi/sym53c8xx_2/sym_misc.o
    1.17 +xen/drivers/scsi/sym53c8xx_2/sym_nvram.o
     2.1 --- a/xenolinux-2.4.22-sparse/Documentation/Configure.help	Tue Dec 16 15:55:22 2003 +0000
     2.2 +++ b/xenolinux-2.4.22-sparse/Documentation/Configure.help	Fri Dec 19 14:38:09 2003 +0000
     2.3 @@ -2,8 +2,6 @@
     2.4  #	Eric S. Raymond <mailto:esr@thyrsus.com>
     2.5  #	Steven Cole <mailto:elenstev@mesatop.com>
     2.6  #
     2.7 -# Version 3.01: current with 2.4.19+
     2.8 -#
     2.9  # Translations of this file available on the WWW:
    2.10  #
    2.11  #   - Japanese, maintained by the JF Project <mailto:JF@linux.or.jp>, at
    2.12 @@ -19,13 +17,6 @@
    2.13  #   - Catalan, by Antoni Bella <mailto:bella5@teleline.es>, at
    2.14  #     <http://www.terra.es/personal7/bella5/traduccions.htm>
    2.15  #
    2.16 -# To access a document on the WWW, you need to have a direct Internet
    2.17 -# connection and a browser program such as netscape or lynx. If you
    2.18 -# only have email access, you can still use FTP and WWW servers: send
    2.19 -# an email to <mailto:mail-server@rtfm.mit.edu> with the text
    2.20 -#   send usenet/news.answers/internet-services/access-via-email
    2.21 -# in the body of the message.
    2.22 -#
    2.23  # Information about what a kernel is, what it does, how to patch and
    2.24  # compile it and much more is contained in the Kernel-HOWTO, available
    2.25  # at <http://www.tldp.org/docs.html#howto>. Before you start
    2.26 @@ -109,6 +100,15 @@ CONFIG_OBSOLETE
    2.27    like MGA monitors that you are very unlikely to see on today's
    2.28    systems.
    2.29  
    2.30 +Prompt for advanced kernel configuration options
    2.31 +CONFIG_ADVANCED_OPTIONS
    2.32 +  This option will enable prompting for a variety of advanced kernel
    2.33 +  configuration options.  These options can cause the kernel to not
    2.34 +  work if they are set incorrectly, but can be used to optimize certain
    2.35 +  aspects of kernel memory management.
    2.36 +
    2.37 +  Unless you know what you are doing you *should not* enable this option.
    2.38 +
    2.39  Symmetric Multi-Processing support
    2.40  CONFIG_SMP
    2.41    This enables support for systems with more than one CPU. If you have
    2.42 @@ -137,6 +137,15 @@ CONFIG_SMP
    2.43  
    2.44    If you don't know what to do here, say N.
    2.45  
    2.46 +Maximum number of CPUs
    2.47 +CONFIG_NR_CPUS
    2.48 +  This allows you to specify the maximum number of CPUs which this
    2.49 +  kernel will support.  The maximum supported value is 32 and the
    2.50 +  mimimum value which makes sense is 2.
    2.51 +
    2.52 +  This is purely to save memory - each supported CPU adds
    2.53 +  approximately eight kilobytes to the kernel image.
    2.54 +
    2.55  Intel or compatible 80x86 processor
    2.56  CONFIG_X86
    2.57    This is Linux's home port.  Linux was originally native to the Intel
    2.58 @@ -1149,6 +1158,15 @@ CONFIG_BLK_DEV_CMD64X
    2.59    Say Y here if you have an IDE controller which uses any of these
    2.60    chipsets: CMD643, CMD646 and CMD648.
    2.61  
    2.62 +Compaq Triflex IDE support
    2.63 +CONFIG_BLK_DEV_TRIFLEX
    2.64 +  Say Y here if you have a Compaq Triflex IDE controller, such
    2.65 +  as those commonly found on Compaq Pentium-Pro systems
    2.66 +
    2.67 +  If you want to compile it as a module, say M here and read
    2.68 +  <file:Documentation/modules.txt>.  The module will be called
    2.69 +  triflex.o.
    2.70 +
    2.71  CY82C693 chipset support
    2.72  CONFIG_BLK_DEV_CY82C693
    2.73    This driver adds detection and support for the CY82C693 chipset
    2.74 @@ -1218,11 +1236,26 @@ CONFIG_BLK_DEV_OPTI621
    2.75    This is a driver for the OPTi 82C621 EIDE controller.
    2.76    Please read the comments at the top of <file:drivers/ide/pci/opti621.c>.
    2.77  
    2.78 +National SCx200 chipset support
    2.79 +CONFIG_BLK_DEV_SC1200
    2.80 +  This driver adds support for the built in IDE on the National
    2.81 +  SCx200 series of embedded x86 "Geode" systems
    2.82 +
    2.83 +  If you want to compile it as a module, say M here and read
    2.84 +  <file:Documentation/modules.txt>.  The module will be called
    2.85 +  sc1200.o.
    2.86 +
    2.87  ServerWorks OSB4/CSB5 chipset support
    2.88  CONFIG_BLK_DEV_SVWKS
    2.89    This driver adds PIO/(U)DMA support for the ServerWorks OSB4/CSB5
    2.90    chipsets.
    2.91  
    2.92 +SGI IOC4 chipset support
    2.93 +CONFIG_BLK_DEV_SGIIOC4
    2.94 +  This driver adds PIO & MultiMode DMA-2 support for the SGI IOC4
    2.95 +  chipset.  Please say Y here, if you have an Altix System from
    2.96 +  Silicon Graphics Inc.
    2.97 +
    2.98  Intel PIIXn chipsets support
    2.99  CONFIG_BLK_DEV_PIIX
   2.100    This driver adds PIO mode setting and tuning for all PIIX IDE
   2.101 @@ -1272,6 +1305,29 @@ CONFIG_BLK_DEV_PDC202XX_OLD
   2.102  
   2.103    If unsure, say N.
   2.104  
   2.105 +PROMISE PDC202{68|69|70|71|75|76|77} support
   2.106 +CONFIG_BLK_DEV_PDC202XX_NEW
   2.107 +  Promise Ultra 100 TX2 [PDC20268]
   2.108 +  Promise Ultra 133 PTX2 [PDC20269]
   2.109 +  Promise FastTrak LP/TX2/TX4 [PDC20270]
   2.110 +  Promise FastTrak TX2000 [PDC20271]
   2.111 +  Promise MB Ultra 133 [PDC20275]
   2.112 +  Promise MB FastTrak 133 [PDC20276]
   2.113 +  Promise FastTrak 133 [PDC20277]
   2.114 +
   2.115 +  This driver adds up to 4 more EIDE devices sharing a single
   2.116 +  interrupt. This device is a bootable PCI UDMA controller. Since
   2.117 +  multiple cards can be installed and there are BIOS ROM problems that
   2.118 +  happen if the BIOS revisions of all installed cards (max of five) do
   2.119 +  not match, the driver attempts to do dynamic tuning of the chipset
   2.120 +  at boot-time for max speed.  Ultra33 BIOS 1.25 or newer is required
   2.121 +  for more than one card.
   2.122 +
   2.123 +  If you say Y here, you need to say Y to "Use DMA by default when
   2.124 +  available" as well.
   2.125 +
   2.126 +  If unsure, say N.
   2.127 +
   2.128  Special UDMA Feature
   2.129  CONFIG_PDC202XX_BURST
   2.130    This option causes the pdc202xx driver to enable UDMA modes on the
   2.131 @@ -2039,6 +2095,17 @@ CONFIG_ALGOR_P4032
   2.132    The board uses the R4300 and a R5230 CPUs.  For more information
   2.133    about this board see <http://www.algor.co.uk/>.
   2.134  
   2.135 +SGI SN2 L1 serial port support
   2.136 +CONFIG_SGI_L1_SERIAL
   2.137 +  If you have an SGI SN2 and you want to use the serial port connected
   2.138 +  to the system controller (you want this!), say Y.  Otherwise, say N.
   2.139 +
   2.140 +SGI SN2 L1 serial console support
   2.141 +CONFIG_SGI_L1_SERIAL_CONSOLE
   2.142 +  If you have an SGI SN2 and you would like to use the system
   2.143 +  controller serial port as your console (you want this!), say Y.
   2.144 +  Otherwise, say N.
   2.145 +
   2.146  Support for BAGET MIPS series
   2.147  CONFIG_BAGET_MIPS
   2.148    This enables support for the Baget, a Russian embedded system.  For
   2.149 @@ -3225,6 +3292,255 @@ CONFIG_IP6_NF_TARGET_LOG
   2.150    If you want to compile it as a module, say M here and read
   2.151    <file:Documentation/modules.txt>.  If unsure, say `N'.
   2.152  
   2.153 +IP: virtual server support
   2.154 +CONFIG_IP_VS
   2.155 +  IP Virtual Server support will let you build a high-performance
   2.156 +  virtual server based on cluster of two or more real servers. This
   2.157 +  option must be enabled for at least one of the clustered computers
   2.158 +  that will take care of intercepting incomming connections to a
   2.159 +  single IP address and scheduling them to real servers.
   2.160 +
   2.161 +  Three request dispatching techniques are implemented, they are
   2.162 +  virtual server via NAT, virtual server via tunneling and virtual
   2.163 +  server via direct routing. The several scheduling algorithms can
   2.164 +  be used to choose which server the connection is directed to,
   2.165 +  thus load balancing can be achieved among the servers.  For more
   2.166 +  information and its administration program, please visit the
   2.167 +  following URL:
   2.168 +	http://www.linuxvirtualserver.org/
   2.169 +
   2.170 +  If you want to compile it in kernel, say Y. If you want to compile
   2.171 +  it as a module, say M here and read Documentation/modules.txt. If
   2.172 +  unsure, say N.
   2.173 +
   2.174 +IP virtual server debugging
   2.175 +CONFIG_IP_VS_DEBUG
   2.176 +  Say Y here if you want to get additional messages useful in
   2.177 +  debugging the IP virtual server code. You can change the debug
   2.178 +  level in /proc/sys/net/ipv4/vs/debug_level
   2.179 +
   2.180 +IPVS connection hash table size (the Nth power of 2)
   2.181 +CONFIG_IP_VS_TAB_BITS
   2.182 +  The IPVS connection hash table uses the chaining scheme to handle
   2.183 +  hash collisions. Using a big IPVS connection hash table will greatly
   2.184 +  reduce conflicts when there are hundreds of thousands of connections
   2.185 +  in the hash table.
   2.186 +
   2.187 +  Note the table size must be power of 2. The table size will be the
   2.188 +  value of 2 to the your input number power. The number to choose is
   2.189 +  from 8 to 20, the default number is 12, which means the table size
   2.190 +  is 4096. Don't input the number too small, otherwise you will lose
   2.191 +  performance on it. You can adapt the table size yourself, according
   2.192 +  to your virtual server application. It is good to set the table size
   2.193 +  not far less than the number of connections per second multiplying
   2.194 +  average lasting time of connection in the table.  For example, your
   2.195 +  virtual server gets 200 connections per second, the connection lasts
   2.196 +  for 200 seconds in average in the connection table, the table size
   2.197 +  should be not far less than 200x200, it is good to set the table
   2.198 +  size 32768 (2**15).
   2.199 +
   2.200 +  Another note that each connection occupies 128 bytes effectively and
   2.201 +  each hash entry uses 8 bytes, so you can estimate how much memory is
   2.202 +  needed for your box.
   2.203 +
   2.204 +IPVS: round-robin scheduling
   2.205 +CONFIG_IP_VS_RR
   2.206 +  The robin-robin scheduling algorithm simply directs network
   2.207 +  connections to different real servers in a round-robin manner.
   2.208 +
   2.209 +  If you want to compile it in kernel, say Y. If you want to compile
   2.210 +  it as a module, say M here and read Documentation/modules.txt. If
   2.211 +  unsure, say N.
   2.212 +
   2.213 +IPVS: weighted round-robin scheduling
   2.214 +CONFIG_IP_VS_WRR
   2.215 +  The weighted robin-robin scheduling algorithm directs network
   2.216 +  connections to different real servers based on server weights
   2.217 +  in a round-robin manner. Servers with higher weights receive
   2.218 +  new connections first than those with less weights, and servers
   2.219 +  with higher weights get more connections than those with less
   2.220 +  weights and servers with equal weights get equal connections.
   2.221 +
   2.222 +  If you want to compile it in kernel, say Y. If you want to compile
   2.223 +  it as a module, say M here and read Documentation/modules.txt. If
   2.224 +  unsure, say N.
   2.225 +
   2.226 +IPVS: least-connection scheduling
   2.227 +CONFIG_IP_VS_LC
   2.228 +  The least-connection scheduling algorithm directs network
   2.229 +  connections to the server with the least number of active 
   2.230 +  connections.
   2.231 +
   2.232 +  If you want to compile it in kernel, say Y. If you want to compile
   2.233 +  it as a module, say M here and read Documentation/modules.txt. If
   2.234 +  unsure, say N.
   2.235 +
   2.236 +IPVS: weighted least-connection scheduling
   2.237 +CONFIG_IP_VS_WLC
   2.238 +  The weighted least-connection scheduling algorithm directs network
   2.239 +  connections to the server with the least active connections
   2.240 +  normalized by the server weight.
   2.241 +
   2.242 +  If you want to compile it in kernel, say Y. If you want to compile
   2.243 +  it as a module, say M here and read Documentation/modules.txt. If
   2.244 +  unsure, say N.
   2.245 +
   2.246 +IPVS: locality-based least-connection scheduling
   2.247 +CONFIG_IP_VS_LBLC
   2.248 +  The locality-based least-connection scheduling algorithm is for
   2.249 +  destination IP load balancing. It is usually used in cache cluster.
   2.250 +  This algorithm usually directs packet destined for an IP address to
   2.251 +  its server if the server is alive and under load. If the server is
   2.252 +  overloaded (its active connection numbers is larger than its weight)
   2.253 +  and there is a server in its half load, then allocate the weighted
   2.254 +  least-connection server to this IP address.
   2.255 +
   2.256 +  If you want to compile it in kernel, say Y. If you want to compile
   2.257 +  it as a module, say M here and read Documentation/modules.txt. If
   2.258 +  unsure, say N.
   2.259 +
   2.260 +IPVS: locality-based least-connection with replication scheduling
   2.261 +CONFIG_IP_VS_LBLCR
   2.262 +  The locality-based least-connection with replication scheduling
   2.263 +  algorithm is also for destination IP load balancing. It is 
   2.264 +  usually used in cache cluster. It differs from the LBLC scheduling
   2.265 +  as follows: the load balancer maintains mappings from a target
   2.266 +  to a set of server nodes that can serve the target. Requests for
   2.267 +  a target are assigned to the least-connection node in the target's
   2.268 +  server set. If all the node in the server set are over loaded,
   2.269 +  it picks up a least-connection node in the cluster and adds it
   2.270 +  in the sever set for the target. If the server set has not been
   2.271 +  modified for the specified time, the most loaded node is removed
   2.272 +  from the server set, in order to avoid high degree of replication.
   2.273 +
   2.274 +  If you want to compile it in kernel, say Y. If you want to compile
   2.275 +  it as a module, say M here and read Documentation/modules.txt. If
   2.276 +  unsure, say N.
   2.277 +
   2.278 +IPVS: destination hashing scheduling
   2.279 +CONFIG_IP_VS_DH
   2.280 +  The destination hashing scheduling algorithm assigns network
   2.281 +  connections to the servers through looking up a statically assigned
   2.282 +  hash table by their destination IP addresses.
   2.283 +
   2.284 +  If you want to compile it in kernel, say Y. If you want to compile
   2.285 +  it as a module, say M here and read Documentation/modules.txt. If
   2.286 +  unsure, say N.
   2.287 +
   2.288 +IPVS: source hashing scheduling
   2.289 +CONFIG_IP_VS_SH
   2.290 +  The source hashing scheduling algorithm assigns network
   2.291 +  connections to the servers through looking up a statically assigned
   2.292 +  hash table by their source IP addresses.
   2.293 +
   2.294 +  If you want to compile it in kernel, say Y. If you want to compile
   2.295 +  it as a module, say M here and read Documentation/modules.txt. If
   2.296 +  unsure, say N.
   2.297 +
   2.298 +IPVS: shortest expected delay scheduling
   2.299 +CONFIG_IP_VS_SED
   2.300 +  The shortest expected delay scheduling algorithm assigns network
   2.301 +  connections to the server with the shortest expected delay. The 
   2.302 +  expected delay that the job will experience is (Ci + 1) / Ui if 
   2.303 +  sent to the ith server, in which Ci is the number of connections
   2.304 +  on the the ith server and Ui is the fixed service rate (weight)
   2.305 +  of the ith server.
   2.306 +
   2.307 +  If you want to compile it in kernel, say Y. If you want to compile
   2.308 +  it as a module, say M here and read Documentation/modules.txt. If
   2.309 +  unsure, say N.
   2.310 +
   2.311 +IPVS: never queue scheduling
   2.312 +CONFIG_IP_VS_NQ
   2.313 +  The never queue scheduling algorithm adopts a two-speed model.
   2.314 +  When there is an idle server available, the job will be sent to
   2.315 +  the idle server, instead of waiting for a fast one. When there
   2.316 +  is no idle server available, the job will be sent to the server
   2.317 +  that minimize its expected delay (The Shortest Expected Delay
   2.318 +  scheduling algorithm).
   2.319 +
   2.320 +  If you want to compile it in kernel, say Y. If you want to compile
   2.321 +  it as a module, say M here and read Documentation/modules.txt. If
   2.322 +  unsure, say N.
   2.323 +
   2.324 +IPVS: FTP protocol helper
   2.325 +CONFIG_IP_VS_FTP
   2.326 +  FTP is a protocol that transfers IP address and/or port number in
   2.327 +  the payload. In the virtual server via Network Address Translation,
   2.328 +  the IP address and port number of real servers cannot be sent to
   2.329 +  clients in ftp connections directly, so FTP protocol helper is
   2.330 +  required for tracking the connection and mangling it back to that of
   2.331 +  virtual service.
   2.332 +
   2.333 +  If you want to compile it in kernel, say Y. If you want to compile
   2.334 +  it as a module, say M here and read Documentation/modules.txt. If
   2.335 +  unsure, say N.
   2.336 +
   2.337 +AH/ESP match support (EXPERIMENTAL)
   2.338 +CONFIG_IP6_NF_MATCH_AHESP
   2.339 +  This module allows one to match AH and ESP packets.
   2.340 +
   2.341 +  If you want to compile it as a module, say M here and read
   2.342 +  <file:Documentation/modules.txt>.  The modules will be called
   2.343 +  ip6t_ah.o and ip6t_esp.o.
   2.344 +
   2.345 +  If unsure, say 'N'.
   2.346 +
   2.347 +Routing header match support
   2.348 +CONFIG_IP6_NF_MATCH_RT
   2.349 +  rt matching allows you to match packets based on the routing
   2.350 +  header of the packet.
   2.351 +
   2.352 +  If you want to compile it as a module, say M here and read
   2.353 +  <file:Documentation/modules.txt>.  The module will be called
   2.354 +  ip6t_rt.o.
   2.355 +
   2.356 +  If unsure, say 'N'.
   2.357 +
   2.358 +Hop-by-hop and Dst opts header match support
   2.359 +CONFIG_IP6_NF_MATCH_OPTS
   2.360 +  This allows one to match packets based on the hop-by-hop
   2.361 +  and destination options headers of a packet.
   2.362 +
   2.363 +  If you want to compile it as a module, say M here and read
   2.364 +  <file:Documentation/modules.txt>.  The modules will be called
   2.365 +  ip6t_hbh.o and ip6t_dst.o.
   2.366 +
   2.367 +  If unsure, say 'N'.
   2.368 +
   2.369 +Fragmentation header match support
   2.370 +CONFIG_IP6_NF_MATCH_FRAG
   2.371 +  frag matching allows you to match packets based on the fragmentation
   2.372 +  header of the packet.
   2.373 +
   2.374 +  If you want to compile it as a module, say M here and read
   2.375 +  <file:Documentation/modules.txt>.  The module will be called
   2.376 +  ip6t_frag.o.
   2.377 +
   2.378 +  If unsure, say 'N'.
   2.379 +
   2.380 +HL match support
   2.381 +CONFIG_IP6_NF_MATCH_HL
   2.382 +  HL matching allows you to match packets based on the hop
   2.383 +  limit of the packet.
   2.384 +
   2.385 +  If you want to compile it as a module, say M here and read
   2.386 +  <file:Documentation/modules.txt>.  The module will be called
   2.387 +  ip6t_hl.o.
   2.388 +
   2.389 +  If unsure, say 'N'.
   2.390 +
   2.391 +IPv6 Extension Headers Match (EXPERIMENTAL)
   2.392 +CONFIG_IP6_NF_MATCH_IPV6HEADER
   2.393 +  This module allows one to match packets based upon
   2.394 +  the ipv6 extension headers.
   2.395 +
   2.396 +  If you want to compile it as a module, say M here and read
   2.397 +  <file:Documentation/modules.txt>.  The module will be called
   2.398 +  ip6t_ipv6header.o.
   2.399 +
   2.400 +  If unsure, say 'N'.
   2.401 +
   2.402  SYN flood protection
   2.403  CONFIG_SYN_COOKIES
   2.404    Normal TCP/IP networking is open to an attack known as "SYN
   2.405 @@ -3705,27 +4021,27 @@ CONFIG_AGP_AMD
   2.406    You should say Y here if you use XFree86 3.3.6 or 4.x and want to
   2.407    use GLX or DRI.  If unsure, say N.
   2.408  
   2.409 -CONFIG_AGP_AMD_8151
   2.410 +CONFIG_AGP_AMD_K8
   2.411    This option gives you AGP support for the GLX component of
   2.412 -  XFree86 on AMD K8 with an AGP 8151 chipset.
   2.413 +  XFree86 on an AMD Opteron/Athlon64 using the on-CPU GART.
   2.414  
   2.415    You should say Y here if you use XFree86 3.3.6 or 4.x and want to
   2.416    use GLX or DRI.  If unsure, say N.
   2.417  
   2.418  Generic SiS support
   2.419  CONFIG_AGP_SIS
   2.420 -  This option gives you AGP support for the GLX component of the "soon
   2.421 -  to be released" XFree86 4.x on Silicon Integrated Systems [SiS]
   2.422 -  chipsets.
   2.423 -
   2.424 -  Note that 5591/5592 AGP chipsets are NOT supported.
   2.425 +  This option gives you AGP support for the GLX component of
   2.426 +  XFree86 4.x on Silicon Integrated Systems [SiS] chipsets.
   2.427 +
   2.428 +  Note that 5591/5592 AGP chipsets are NOT specifically supported;
   2.429 +  However, the driver works well on these, too.
   2.430  
   2.431    You should say Y here if you use XFree86 3.3.6 or 4.x and want to
   2.432    use GLX or DRI.  If unsure, say N.
   2.433  
   2.434  Serverworks LE/HE support
   2.435  CONFIG_AGP_SWORKS
   2.436 -  Say Y here to support the Serverworks AGP card.  See 
   2.437 +  Say Y here to support the Serverworks AGP card.  See
   2.438    <http://www.serverworks.com/> for product descriptions and images.
   2.439  
   2.440  NVIDIA chipset support
   2.441 @@ -3756,6 +4072,13 @@ CONFIG_AGP_HP_ZX1
   2.442    This option gives you AGP GART support for the HP ZX1 chipset
   2.443    for IA64 processors.
   2.444  
   2.445 +CONFIG_AGP_ATI
   2.446 +  This option gives you AGP support for the GLX component of
   2.447 +  XFree86 4.x on the ATI RadeonIGP family of chipsets.
   2.448 +
   2.449 +  You should say Y here if you use XFree86 3.3.6 or 4.x and want to
   2.450 +  use GLX or DRI.  If unsure, say N.
   2.451 +
   2.452  Support for ISA-bus hardware
   2.453  CONFIG_ISA
   2.454    Find out whether you have ISA slots on your motherboard.  ISA is the
   2.455 @@ -5115,21 +5438,23 @@ CONFIG_FB_HIT
   2.456    This is the frame buffer device driver for the Hitachi HD64461 LCD
   2.457    frame buffer card.
   2.458  
   2.459 -SIS acceleration
   2.460 +SIS display support
   2.461  CONFIG_FB_SIS
   2.462 -  This is the frame buffer device driver for the SiS 630 and 640 Super
   2.463 -  Socket 7 UMA cards.  Specs available at <http://www.sis.com.tw/>.
   2.464 -
   2.465 -SIS 630/540/730 support
   2.466 +  This is the frame buffer device driver for the SiS 300, 315 and 330
   2.467 +  series chipsets.  Documentation available at the maintainer's site
   2.468 +  at <http://www.winischhofer.net/linuxsisvga.shtml>.
   2.469 +
   2.470 +SIS 300 series support
   2.471  CONFIG_FB_SIS_300
   2.472 -  This is the frame buffer device driver for the SiS 630 and related
   2.473 -  Super Socket 7 UMA cards.  Specs available at
   2.474 -  <http://www.sis.com.tw/>.
   2.475 -
   2.476 -SIS 315H/315 support
   2.477 +  This enables support for SiS 300 series chipsets (300/305, 540, 630,
   2.478 +  730).  Documentation available at the maintainer's website at
   2.479 +   <http://www.winischhofer.net/linuxsisvga.shtml>.
   2.480 +
   2.481 +SIS 315/330 series support
   2.482  CONFIG_FB_SIS_315
   2.483 -  This is the frame buffer device driver for the SiS 315 graphics
   2.484 -  card.  Specs available at <http://www.sis.com.tw/>.
   2.485 +  This enables support for SiS 315/330 series chipsets (315, 550, 650,
   2.486 +  M650, 651, 661FX, M661FX, 740, 741, 330). Documentation available at
   2.487 +  the maintainer's site <http://www.winischhofer.net/linuxsisvga.shtml>.
   2.488  
   2.489  IMS Twin Turbo display support
   2.490  CONFIG_FB_IMSTT
   2.491 @@ -5185,6 +5510,17 @@ CONFIG_FB_ATY_GX
   2.492    is at
   2.493    <http://support.ati.com/products/pc/mach64/graphics_xpression.html>.
   2.494  
   2.495 +Mach64 Generic LCD support
   2.496 +CONFIG_FB_ATY_GENERIC_LCD
   2.497 +  Enabling this option enables the Atyfb driver to drive LCD panels. It
   2.498 +  will autodetect the resulution and format of your display and emulate
   2.499 +  other resolutions using the hardware stretcher on the chip.
   2.500 +  Say Y here if you have computer with a Rage LT Pro, Rage Mobility M1,
   2.501 +  Rage XC or Rage XL chip and a laptop LCD display or any other LCD display
   2.502 +  that needs to be digitally driven. It is not necessary to enable this
   2.503 +  option if you are using an LCD display with a normal VGA connector,
   2.504 +  but it won't hurt if you do.
   2.505 +
   2.506  ATI Radeon display support
   2.507  CONFIG_FB_RADEON
   2.508    Choose this option if you want to use an ATI Radeon graphics card as
   2.509 @@ -5789,6 +6125,61 @@ CONFIG_IPV6
   2.510  
   2.511    It is safe to say N here for now.
   2.512  
   2.513 +The SCTP Protocol (EXPERIMENTAL)
   2.514 +CONFIG_IP_SCTP
   2.515 +  Stream Control Transmission Protocol
   2.516 +
   2.517 +  From RFC 2960 (http://www.ietf.org/rfc/rfc2960.txt)
   2.518 +
   2.519 +  "SCTP is a reliable transport protocol operating on top of a
   2.520 +  connectionless packet network such as IP.  It offers the following
   2.521 +  services to its users:
   2.522 +
   2.523 +  -- acknowledged error-free non-duplicated transfer of user data,
   2.524 +  -- data fragmentation to conform to discovered path MTU size,
   2.525 +  -- sequenced delivery of user messages within multiple streams,
   2.526 +  with an option for order-of-arrival delivery of individual user
   2.527 +  messages,
   2.528 +  -- optional bundling of multiple user messages into a single SCTP
   2.529 +  packet, and
   2.530 +  -- network-level fault tolerance through supporting of multi-
   2.531 +  homing at either or both ends of an association."
   2.532 +
   2.533 +  This protocol support is also available as a module ( = code which
   2.534 +  can be inserted in and removed from the running kernel whenever you
   2.535 +  want). The module will be called sctp. If you want to compile it
   2.536 +  as a module, say M here and read <file:Documentation/modules.txt>.
   2.537 +
   2.538 +  If in doubt, say N.
   2.539 +
   2.540 +SCTP: Use old checksum (Adler-32)
   2.541 +CONFIG_SCTP_ADLER32
   2.542 +  RCF2960 currently specifies the Adler-32 checksum algorithm for SCTP.
   2.543 +  This has been deprecated and replaced by an algorithm now referred
   2.544 +  to as crc32c.
   2.545 +
   2.546 +  If you say Y, this will use the Adler-32 algorithm, this might be 
   2.547 +  useful for interoperation with downlevel peers. 
   2.548 +
   2.549 +  If unsure, say N.  
   2.550 +
   2.551 +SCTP: Debug messages
   2.552 +CONFIG_SCTP_DBG_MSG
   2.553 +  If you say Y, this will enable verbose debugging messages. 
   2.554 +
   2.555 +  If unsure, say N.  However, if you are running into problems, use 
   2.556 +  this option to gather detailed trace information
   2.557 +
   2.558 +SCTP: Debug object counts
   2.559 +CONFIG_SCTP_DBG_OBJCNT
   2.560 +  If you say Y, this will enable debugging support for counting the 
   2.561 +  type of objects that are currently allocated.  This is useful for 
   2.562 +  identifying memory leaks.   If the /proc filesystem is enabled this 
   2.563 +  debug information can be viewed by 
   2.564 +  'cat /proc/net/sctp/sctp_dbg_objcnt'
   2.565 +
   2.566 +  If unsure, say N
   2.567 +
   2.568  Kernel httpd acceleration
   2.569  CONFIG_KHTTPD
   2.570    The kernel httpd acceleration daemon (kHTTPd) is a (limited) web
   2.571 @@ -6923,7 +7314,7 @@ SCSI tape drive support for Smart Array 
   2.572  CONFIG_CISS_SCSI_TAPE
   2.573    When enabled (Y), this option allows SCSI tape drives and SCSI medium
   2.574    changers (tape robots) to be accessed via a Compaq 5xxx array
   2.575 -  controller.  (See Documentation/cciss.txt for more details.)
   2.576 +  controller.  (See <file:Documentation/cciss.txt> for more details.)
   2.577  
   2.578    "SCSI support" and "SCSI tape support" must also be enabled for this
   2.579    option to work.
   2.580 @@ -6931,6 +7322,15 @@ CONFIG_CISS_SCSI_TAPE
   2.581    When this option is disabled (N), the SCSI portion of the driver
   2.582    is not compiled.
   2.583  
   2.584 +Enable monitor thread
   2.585 +CONFIG_CISS_MONITOR_THREAD
   2.586 +  Intended for use with multipath configurations (see the md driver).
   2.587 +  This option allows a per-adapter monitoring thread to periodically
   2.588 +  poll the adapter to detect failure modes in which the processor
   2.589 +  is unable to receive interrupts from the adapter, thus enabling 
   2.590 +  fail-over to an alternate adapter in such situations.  See 
   2.591 +  <file:Documentation/cciss.txt> for more details.
   2.592 +
   2.593  QuickNet Internet LineJack/PhoneJack support
   2.594  CONFIG_PHONE_IXJ
   2.595    Say M if you have a telephony card manufactured by Quicknet
   2.596 @@ -7095,6 +7495,16 @@ CONFIG_FUSION
   2.597    architecture is based on LSI Logic's Message Passing Interface (MPI)
   2.598    specification.
   2.599  
   2.600 +Maximum number of scatter gather entries
   2.601 +CONFIG_FUSION_MAX_SGE
   2.602 +  This option allows you to specify the maximum number of scatter-
   2.603 +  gather entries per I/O. The driver defaults to 40, a reasonable number
   2.604 +  for most systems. However, the user may increase this up to 128.
   2.605 +  Increasing this parameter will require significantly more memory
   2.606 +  on a per controller instance. Increasing the parameter is not
   2.607 +  necessary (or recommended) unless the user will be running
   2.608 +  large I/O's via the raw interface.
   2.609 +
   2.610  Fusion MPT enhanced SCSI error reporting [optional] module
   2.611  CONFIG_FUSION_ISENSE
   2.612    The isense module (roughly stands for Interpret SENSE data) is
   2.613 @@ -7362,6 +7772,27 @@ CONFIG_SCSI_LOGGING
   2.614    there should be no noticeable performance impact as long as you have
   2.615    logging turned off.
   2.616  
   2.617 +QDIO base support for IBM S/390 and zSeries
   2.618 +CONFIG_QDIO
   2.619 +  This driver provides the Queued Direct I/O base support for the
   2.620 +  IBM S/390 (G5 and G6) and eServer zSeries (z800 and z900).
   2.621 +
   2.622 +  For details please refer to the documentation provided by IBM at
   2.623 +  <http://www10.software.ibm.com/developerworks/opensource/linux390>
   2.624 +
   2.625 +  This driver is also available as a module ( = code which can be
   2.626 +  inserted in and removed from the running kernel whenever you want).
   2.627 +  The module will be called qdio.o. If you want to compile it as a
   2.628 +  module, say M here and read <file:Documentation/modules.txt>.
   2.629 +
   2.630 +  If unsure, say Y.
   2.631 +
   2.632 +Performance statistics for QDIO base support
   2.633 +CONFIG_QDIO_PERF_STATS
   2.634 +  Say Y here to get performance statistics in /proc/qdio_perf
   2.635 +
   2.636 +  If unsure, say N.
   2.637 +
   2.638  SGI WD93C93 SCSI Driver
   2.639  CONFIG_SCSI_SGIWD93
   2.640    Say Y here to support the on-board WD93C93 SCSI controller found (a)
   2.641 @@ -7972,7 +8403,7 @@ CONFIG_SCSI_SYM53C8XX_2
   2.642    If you want to compile the driver as a module ( = code which can be
   2.643    inserted in and removed from the running kernel whenever you want),
   2.644    say M here and read <file:Documentation/modules.txt>.  The module
   2.645 -  will be called sym53c8xx.o.
   2.646 +  will be called sym53c8xx_2.o.
   2.647  
   2.648  PCI DMA addressing mode
   2.649  CONFIG_SCSI_SYM53C8XX_DMA_ADDRESSING_MODE
   2.650 @@ -8635,16 +9066,31 @@ CONFIG_SCSI_AM53C974
   2.651    say M here and read <file:Documentation/modules.txt>.  The module
   2.652    will be called AM53C974.o.
   2.653  
   2.654 -AMI MegaRAID support
   2.655 +AMI MegaRAID support (old driver)
   2.656  CONFIG_SCSI_MEGARAID
   2.657 -  This driver supports the AMI MegaRAID 418, 428, 438, 466, 762, 490
   2.658 -  and 467 SCSI host adapters.
   2.659 +  This driver supports the AMI MegaRAID 418, 428, 438, 466, 762, 490,
   2.660 +  467, 471 and 493 SCSI host adapters. 
   2.661 +
   2.662 +  This is the old and very heavily tested driver but lacks features
   2.663 +  like clustering.
   2.664  
   2.665    If you want to compile this driver as a module ( = code which can be
   2.666    inserted in and removed from the running kernel whenever you want),
   2.667    say M here and read <file:Documentation/modules.txt>.  The module
   2.668    will be called megaraid.o.
   2.669  
   2.670 +AMI MegaRAID support (new driver)
   2.671 +CONFIG_SCSI_MEGARAID2
   2.672 +  This driver supports the AMI MegaRAID 418, 428, 438, 466, 762, 490,
   2.673 +  467, 471, 493 and new Ultra320(518, 520, 531, 532) SCSI host adapters.
   2.674 +
   2.675 +  This is the newer less tested but more featureful driver.
   2.676 +
   2.677 +  If you want to compile this driver as a module ( = code which can be
   2.678 +  inserted in and removed from the running kernel whenever you want),
   2.679 +  say M here and read <file:Documentation/modules.txt>.  The module
   2.680 +  will be called megaraid2.o.
   2.681 +
   2.682  Intel/ICP (former GDT SCSI Disk Array) RAID Controller support
   2.683  CONFIG_SCSI_GDTH
   2.684    Formerly called GDT SCSI Disk Array Controller Support.
   2.685 @@ -8987,6 +9433,17 @@ CONFIG_IEEE1394_VERBOSEDEBUG
   2.686    Say Y if you really want or need the debugging output, everyone else
   2.687    says N.
   2.688  
   2.689 +CONFIG_IEEE1394_OUI_DB
   2.690 +  If you say Y here, then an OUI list (vendor unique ID's) will be
   2.691 +  compiled into the ieee1394 module. This doesn't really do much
   2.692 +  except being able to display the vendor of a hardware node. The
   2.693 +  downside is that it adds about 300k to the size of the module,
   2.694 +  or kernel (depending on whether you compile ieee1394 as a
   2.695 +  module, or static in the kernel).
   2.696 +
   2.697 +  This option is not needed for userspace programs like gscanbus
   2.698 +  to show this information.
   2.699 +
   2.700  Network device support
   2.701  CONFIG_NETDEVICES
   2.702    You can say N here if you don't intend to connect your Linux box to
   2.703 @@ -9645,6 +10102,17 @@ CONFIG_PLX_HERMES
   2.704    Support for these adaptors is so far still incomplete and buggy.
   2.705    You have been warned.
   2.706  
   2.707 +Hermes 802.11b in TMD7160/NCP130 based PCI adaptor support
   2.708 +CONFIG_TMD_HERMES
   2.709 +  Enable support for PCMCIA cards supported by the "Hermes" (aka
   2.710 +  orinoco) driver when used in TMD7160 based PCI adaptors.  These
   2.711 +  adaptors are not a full PCMCIA controller but act as a more limited
   2.712 +  PCI <-> PCMCIA bridge.  Several vendors sell such adaptors so that
   2.713 +  802.11b PCMCIA cards can be used in desktop machines.
   2.714 +
   2.715 +  Support for these adaptors is so far still incomplete and buggy.
   2.716 +  You have been warned.
   2.717 +
   2.718  Prism 2.5 PCI 802.11b adaptor support
   2.719  CONFIG_PCI_HERMES
   2.720    Enable support for PCI and mini-PCI 802.11b wireless NICs based on
   2.721 @@ -9910,36 +10378,17 @@ CONFIG_FARSYNC
   2.722    This driver supports the FarSync T-Series X.21 (and V.35/V.24) cards
   2.723    from FarSite Communications Ltd.
   2.724    Synchronous communication is supported on all ports at speeds up to
   2.725 -  8Mb/s (128K on V.24) using synchronous PPP or Cisco HDLC.
   2.726 +  8Mb/s (128K on V.24) using synchronous PPP, Cisco HDLC, raw HDLC,
   2.727 +  Frame Relay or X.25/LAPB.
   2.728  
   2.729    If you want to compile this driver as a module ( = code which can be
   2.730    inserted in and removed from the running kernel whenever you want)
   2.731    say M here and read <file:Documentation/modules.txt>.
   2.732    The module will be called farsync.o and if you want the module to be
   2.733    automatically loaded when the interface is referenced then you
   2.734 -  should add "alias syncX farsync" to /etc/modules.conf for each
   2.735 +  should add "alias hdlcX farsync" to /etc/modules.conf for each
   2.736    interface, where X is 0, 1, 2, ...
   2.737  
   2.738 -CONFIG_HDLC_DEBUG_PKT
   2.739 -  This option is for developers only - do NOT use on production
   2.740 -  systems.
   2.741 -
   2.742 -CONFIG_HDLC_DEBUG_HARD_HEADER
   2.743 -  This option is for developers only - do NOT use on production
   2.744 -  systems.
   2.745 -
   2.746 -CONFIG_HDLC_DEBUG_ECN
   2.747 -  This option is for developers only - do NOT use on production
   2.748 -  systems.
   2.749 -
   2.750 -CONFIG_HDLC_DEBUG_RINGS
   2.751 -  If you answer Y here you will be able to get a diagnostic dump of
   2.752 -  port's TX and RX packet rings, using "sethdlc hdlcX private"
   2.753 -  command. It does not affect normal operations.
   2.754 -
   2.755 -  If unsure, say Y here.
   2.756 -
   2.757 -
   2.758  Frame Relay (DLCI) support
   2.759  CONFIG_DLCI
   2.760    This is support for the frame relay protocol; frame relay is a fast
   2.761 @@ -10464,6 +10913,26 @@ CONFIG_DSCC4
   2.762    The module will be called dscc4.o. For general information about
   2.763    modules read <file:Documentation/modules.txt>.
   2.764  
   2.765 +PCISYNC feature
   2.766 +CONFIG_DSCC4_PCISYNC
   2.767 +  Due to Etinc's design choice for its PCISYNC cards, some operations
   2.768 +  are only allowed on specific ports of the DSCC4. This option is the
   2.769 +  only way for the driver to know that it shouldn't return a success
   2.770 +  code for these operations.
   2.771 +
   2.772 +  Please say Y if your card is an Etinc's PCISYNC.
   2.773 +
   2.774 +Hard reset support
   2.775 +CONFIG_DSCC4_PCI_RST
   2.776 +  Various DSCC4 bug forbid any reliable software reset of the asic.
   2.777 +  As a replacement, some vendors provide a way to assert the PCI #RST
   2.778 +  pin of DSCC4 through the GPIO port of the card. If you choose Y, the
   2.779 +  driver will make use of this feature before module removal (i.e. rmmod).
   2.780 +  This feature is known to exist on Commtech's cards.
   2.781 +  Contact your manufacturer for details.
   2.782 +
   2.783 +  Say Y if yout card supports this feature.
   2.784 +
   2.785  LanMedia Corp. serial boards (SSI/V.35, T1/E1, HSSI, T3)
   2.786  CONFIG_LANMEDIA
   2.787    This is a driver for the following Lan Media family of serial
   2.788 @@ -10812,6 +11281,15 @@ CONFIG_HDLC_RAW
   2.789  
   2.790    If unsure, say N here.
   2.791  
   2.792 +Raw HDLC Ethernet device support
   2.793 +CONFIG_HDLC_RAW_ETH
   2.794 +  Say Y to this option if you want generic HDLC driver to support
   2.795 +  raw HDLC Ethernet device emulation over WAN (Wide Area Network)
   2.796 +  connections.
   2.797 +  You will need it for Ethernet over HDLC bridges.
   2.798 +
   2.799 +  If unsure, say N here.
   2.800 +
   2.801  Cisco HDLC support
   2.802  CONFIG_HDLC_CISCO
   2.803    Say Y to this option if you want generic HDLC driver to support
   2.804 @@ -10826,13 +11304,6 @@ CONFIG_HDLC_FR
   2.805  
   2.806    If unsure, say N here.
   2.807  
   2.808 -Frame-Relay bridging support
   2.809 -CONFIG_HDLC_FR_BRIDGE
   2.810 -  Say Y to this option if you want generic HDLC driver to support
   2.811 -  bridging LAN frames over Frame-Relay links.
   2.812 -
   2.813 -  If unsure, say N here.
   2.814 -
   2.815  Synchronous Point-to-Point Protocol (PPP) support
   2.816  CONFIG_HDLC_PPP
   2.817    Say Y to this option if you want generic HDLC driver to support
   2.818 @@ -10875,6 +11346,25 @@ CONFIG_C101
   2.819  
   2.820    If unsure, say N here.
   2.821  
   2.822 +CONFIG_HDLC_DEBUG_PKT
   2.823 +  This option is for developers only - do NOT use on production
   2.824 +  systems.
   2.825 +
   2.826 +CONFIG_HDLC_DEBUG_HARD_HEADER
   2.827 +  This option is for developers only - do NOT use on production
   2.828 +  systems.
   2.829 +
   2.830 +CONFIG_HDLC_DEBUG_ECN
   2.831 +  This option is for developers only - do NOT use on production
   2.832 +  systems.
   2.833 +
   2.834 +CONFIG_HDLC_DEBUG_RINGS
   2.835 +  If you answer Y here you will be able to get a diagnostic dump of
   2.836 +  port's TX and RX packet rings, using "sethdlc hdlcX private"
   2.837 +  command. It does not affect normal operations.
   2.838 +
   2.839 +  If unsure, say Y here.
   2.840 +
   2.841  Ethernet (10 or 100Mbit)
   2.842  CONFIG_NET_ETHERNET
   2.843    Ethernet (also called IEEE 802.3 or ISO 8802-2) is the most common
   2.844 @@ -11203,33 +11693,69 @@ CONFIG_ACENIC_OMIT_TIGON_I
   2.845  
   2.846    The safe and default value for this is N.
   2.847  
   2.848 -SysKonnect SK-98xx and SK-95xx Gigabit Ethernet Adapter family support
   2.849 +Marvell Yukon / SysKonnect SK-98xx and SK-95xx Gigabit Ethernet Adapter family support
   2.850  CONFIG_SK98LIN
   2.851 -  Say Y here if you have a SysKonnect SK-98xx or SK-95xx Gigabit 
   2.852 -  Ethernet Server Adapter. The following adapters are supported by 
   2.853 -  this driver:
   2.854 -  - SK-9521 10/100/1000Base-T Adapter
   2.855 -  - SK-9821 Gigabit Ethernet 1000Base-T Server Adapter
   2.856 -  - SK-9822 Gigabit Ethernet 1000Base-T Dual Port Server Adapter
   2.857 -  - SK-9841 Gigabit Ethernet 1000Base-LX Server Adapter
   2.858 -  - SK-9842 Gigabit Ethernet 1000Base-LX Dual Port Server Adapter
   2.859 -  - SK-9843 Gigabit Ethernet 1000Base-SX Server Adapter
   2.860 -  - SK-9844 Gigabit Ethernet 1000Base-SX Dual Port Server Adapter
   2.861 -  - SK-9861 Gigabit Ethernet 1000Base-SX Server Adapter
   2.862 -  - SK-9862 Gigabit Ethernet 1000Base-SX Dual Port Server Adapter
   2.863 -  - SK-9871 Gigabit Ethernet 1000Base-ZX Server Adapter
   2.864 -  - SK-9872 Gigabit Ethernet 1000Base-ZX Dual Port Server Adapter
   2.865 -  - SK-9821 V2.0 Gigabit Ethernet 10/100/1000Base-T Adapter
   2.866 -  - SK-9841 V2.0 Gigabit Ethernet 1000Base-LX Adapter
   2.867 -  - SK-9843 V2.0 Gigabit Ethernet 1000Base-SX Adapter
   2.868 -  - SK-9851 V2.0 Gigabit Ethernet 1000Base-SX Adapter
   2.869 -  - SK-9861 V2.0 Gigabit Ethernet 1000Base-SX Adapter
   2.870 -  - SK-9871 V2.0 Gigabit Ethernet 1000Base-ZX Adapter
   2.871 +  Say Y here if you have a Marvell Yukon or SysKonnect SK-98xx/SK-95xx
   2.872 +  compliant Gigabit Ethernet Adapter. The following adapters are supported
   2.873 +  by this driver:
   2.874 +	    - 3Com 3C940 Gigabit LOM Ethernet Adapter
   2.875 +	    - 3Com 3C941 Gigabit LOM Ethernet Adapter
   2.876 +	    - Allied Telesyn AT-2970LX Gigabit Ethernet Adapter
   2.877 +	    - Allied Telesyn AT-2970LX/2SC Gigabit Ethernet Adapter
   2.878 +	    - Allied Telesyn AT-2970SX Gigabit Ethernet Adapter
   2.879 +	    - Allied Telesyn AT-2970SX/2SC Gigabit Ethernet Adapter
   2.880 +	    - Allied Telesyn AT-2970TX Gigabit Ethernet Adapter
   2.881 +	    - Allied Telesyn AT-2970TX/2TX Gigabit Ethernet Adapter
   2.882 +	    - Allied Telesyn AT-2971SX Gigabit Ethernet Adapter
   2.883 +	    - Allied Telesyn AT-2971T Gigabit Ethernet Adapter
   2.884 +	    - DGE-530T Gigabit Ethernet Adapter
   2.885 +	    - EG1032 v2 Instant Gigabit Network Adapter
   2.886 +	    - EG1064 v2 Instant Gigabit Network Adapter
   2.887 +	    - Marvell 88E8001 Gigabit LOM Ethernet Adapter (Abit)
   2.888 +	    - Marvell 88E8001 Gigabit LOM Ethernet Adapter (Asus)
   2.889 +	    - Marvell 88E8001 Gigabit LOM Ethernet Adapter (ECS)
   2.890 +	    - Marvell 88E8001 Gigabit LOM Ethernet Adapter (Epox)
   2.891 +	    - Marvell 88E8001 Gigabit LOM Ethernet Adapter (Gigabyte)
   2.892 +	    - Marvell 88E8001 Gigabit LOM Ethernet Adapter (Iwill)
   2.893 +	    - Marvell RDK-8001 Adapter
   2.894 +	    - Marvell RDK-8002 Adapter
   2.895 +	    - Marvell RDK-8003 Adapter
   2.896 +	    - Marvell RDK-8004 Adapter
   2.897 +	    - Marvell RDK-8006 Adapter
   2.898 +	    - Marvell RDK-8007 Adapter
   2.899 +	    - Marvell RDK-8008 Adapter
   2.900 +	    - Marvell RDK-8009 Adapter
   2.901 +	    - Marvell RDK-8010 Adapter
   2.902 +	    - Marvell RDK-8011 Adapter
   2.903 +	    - Marvell RDK-8012 Adapter
   2.904 +	    - Marvell Yukon Gigabit Ethernet 10/100/1000Base-T Adapter (32 bit)
   2.905 +	    - Marvell Yukon Gigabit Ethernet 10/100/1000Base-T Adapter (64 bit)
   2.906 +	    - N-Way PCI-Bus Giga-Card 1000/100/10Mbps(L)
   2.907 +	    - SK-9521 10/100/1000Base-T Adapter
   2.908 +	    - SK-9521 V2.0 10/100/1000Base-T Adapter
   2.909 +	    - SK-9821 Gigabit Ethernet Server Adapter (SK-NET GE-T)
   2.910 +	    - SK-9821 V2.0 Gigabit Ethernet 10/100/1000Base-T Adapter
   2.911 +	    - SK-9822 Gigabit Ethernet Server Adapter (SK-NET GE-T dual link)
   2.912 +	    - SK-9841 Gigabit Ethernet Server Adapter (SK-NET GE-LX)
   2.913 +	    - SK-9841 V2.0 Gigabit Ethernet 1000Base-LX Adapter
   2.914 +	    - SK-9842 Gigabit Ethernet Server Adapter (SK-NET GE-LX dual link)
   2.915 +	    - SK-9843 Gigabit Ethernet Server Adapter (SK-NET GE-SX)
   2.916 +	    - SK-9843 V2.0 Gigabit Ethernet 1000Base-SX Adapter
   2.917 +	    - SK-9844 Gigabit Ethernet Server Adapter (SK-NET GE-SX dual link)
   2.918 +	    - SK-9851 V2.0 Gigabit Ethernet 1000Base-SX Adapter
   2.919 +	    - SK-9861 Gigabit Ethernet Server Adapter (SK-NET GE-SX Volition)
   2.920 +	    - SK-9861 V2.0 Gigabit Ethernet 1000Base-SX Adapter
   2.921 +	    - SK-9862 Gigabit Ethernet Server Adapter (SK-NET GE-SX Volition dual link)
   2.922 +	    - SK-9871 Gigabit Ethernet Server Adapter (SK-NET GE-ZX)
   2.923 +	    - SK-9871 V2.0 Gigabit Ethernet 1000Base-ZX Adapter
   2.924 +	    - SK-9872 Gigabit Ethernet Server Adapter (SK-NET GE-ZX dual link)
   2.925 +	    - SMC EZ Card 1000 (SMC9452TXV.2)
   2.926  
   2.927    The adapters support Jumbo Frames.
   2.928    The dual link adapters support link-failover and dual port features.
   2.929 -  The V2.0 adapters support the scatter-gather functionality with
   2.930 -  sendfile(). Read Documentation/networking/sk98lin.txt for information about
   2.931 +  Both Marvell Yukon and SysKonnect SK-98xx/SK-95xx adapters support 
   2.932 +  the scatter-gather functionality with sendfile(). Please refer to 
   2.933 +  Documentation/networking/sk98lin.txt for more information about
   2.934    optional driver parameters.
   2.935    Questions concerning this driver may be addressed to:
   2.936      linux@syskonnect.de
   2.937 @@ -11239,6 +11765,7 @@ CONFIG_SK98LIN
   2.938    say M here and read Documentation/modules.txt. This is recommended.
   2.939    The module will be called sk98lin.o.
   2.940  
   2.941 +
   2.942  Sun GEM support
   2.943  CONFIG_SUNGEM
   2.944    Support for the Sun GEM chip, aka Sun GigabitEthernet/P 2.0.  See also
   2.945 @@ -13134,6 +13661,15 @@ CONFIG_MTD_CMDLINE_PARTS
   2.946  
   2.947    If unsure, say 'N'.
   2.948  
   2.949 +MTD concatenating support
   2.950 +CONFIG_MTD_CONCAT
   2.951 +  Support for concatenating several MTD devices into a single
   2.952 +  (virtual) one. This allows you to have -for example- a JFFS(2)
   2.953 +  file system spanning multiple physical flash chips. If unsure,
   2.954 +  say 'Y'.
   2.955 +
   2.956 +  If compiled as a module, it will be called mtdconcat.o.
   2.957 +
   2.958  ARM Firmware Suite flash layout / partition parsing
   2.959  CONFIG_MTD_AFS_PARTS
   2.960    The ARM Firmware Suite allows the user to divide flash devices into
   2.961 @@ -13540,6 +14076,14 @@ CONFIG_MTD_DBOX2
   2.962    D-Box 2 board. If you have one of these boards and would like to use
   2.963    the flash chips on it, say 'Y'.
   2.964  
   2.965 +CFI Flash devices mapped on IBM Redwood
   2.966 +CONFIG_MTD_REDWOOD
   2.967 +  This enables access routines for the flash chips on the IBM
   2.968 +  Redwood board. If you have one of these boards and would like to
   2.969 +  use the flash chips on it, say 'Y'.
   2.970 +
   2.971 +  If compiled as a module, it will be called redwood.o.
   2.972 +
   2.973  CFI Flash device mapped on the XScale IQ80310 board
   2.974  CONFIG_MTD_IQ80310
   2.975    This enables access routines for the flash chips on the Intel XScale
   2.976 @@ -13672,6 +14216,20 @@ Support for the SPIA board
   2.977  CONFIG_MTD_NAND_SPIA
   2.978    If you had to ask, you don't have one. Say 'N'.
   2.979  
   2.980 +SmartMediaCard on autronix autcpu12 board
   2.981 +CONFIG_MTD_NAND_AUTCPU12
   2.982 +  This enables the driver for the autronix autcpu12 board to
   2.983 +  access the SmartMediaCard.
   2.984 +
   2.985 +  If compiled as a module, it will be called autcpu12.o.
   2.986 +
   2.987 +Support for Cirrus Logic EBD7312 evaluation board
   2.988 +CONFIG_MTD_NAND_EDB7312
   2.989 +  This enables the driver for the Cirrus Logic EBD7312 evaluation
   2.990 +  board to access the onboard NAND Flash.
   2.991 +
   2.992 +  If compiled as a module, it will be called edb7312.o.
   2.993 +
   2.994  M-Systems Disk-On-Chip 1000 support
   2.995  CONFIG_MTD_DOC1000
   2.996    This provides an MTD device driver for the M-Systems DiskOnChip
   2.997 @@ -14113,6 +14671,25 @@ CONFIG_USB_OHCI
   2.998    The module will be called usb-ohci.o. If you want to compile it
   2.999    as a module, say M here and read <file:Documentation/modules.txt>.
  2.1000  
  2.1001 +SL811HS (x86, StrongARM) support
  2.1002 +CONFIG_USB_SL811HS
  2.1003 +  Embedded Open Host Controller SL811HS from CYPRESS SEMICONDUCTOR INC.
  2.1004 +  <pbl@cypress.com>
  2.1005 +    
  2.1006 +  Board USB1104 in i386 architecture with PC/104-bus.
  2.1007 +  <http://www.ssv-embedded.de>
  2.1008 +  <file:Documentation/usb/hc_sl811.txt>
  2.1009 +	  
  2.1010 +  StrongARM is currently not testet and not for PC/104-bus!
  2.1011 +  StrongARM need a special hardware with Chip Select directly from CPU.
  2.1012 +  See also SL811HS_ALT.
  2.1013 +	      
  2.1014 +SL811HS_ALT (x86, StrongARM) support
  2.1015 +CONFIG_USB_SL811HS_ALT
  2.1016 +  Embedded Open Host Controller SL811HS from CYPRESS SEMICONDUCTOR INC.
  2.1017 +  Alternate with isochornous mode and better interrupt handling.
  2.1018 +  See also SL811HS.
  2.1019 +
  2.1020  USB Human Interface Device (full HID) support
  2.1021  CONFIG_USB_HID
  2.1022    Say Y here if you want full HID support to connect keyboards,
  2.1023 @@ -14170,8 +14747,8 @@ CONFIG_USB_KBD
  2.1024  USB HIDBP Mouse (basic) support
  2.1025  CONFIG_USB_MOUSE
  2.1026    Say Y here only if you are absolutely sure that you don't want
  2.1027 -  to use the generic HID driver for your USB keyboard and prefer
  2.1028 -  to use the keyboard in its limited Boot Protocol mode instead.
  2.1029 +  to use the generic HID driver for your USB mouse and prefer
  2.1030 +  to use the mouse in its limited Boot Protocol mode instead.
  2.1031  
  2.1032    This is almost certainly not what you want.
  2.1033  
  2.1034 @@ -14531,6 +15108,9 @@ USB Keyspan USA-49W Firmware
  2.1035  CONFIG_USB_SERIAL_KEYSPAN_USA49W
  2.1036    Say Y here to include firmware for the USA-49W converter.
  2.1037  
  2.1038 +CONFIG_USB_SERIAL_KEYSPAN_USA49WLC
  2.1039 +  Say Y here to include firmware for the USA-49WLC converter.
  2.1040 +
  2.1041  USB ZyXEL omni.net LCD Plus Driver
  2.1042  CONFIG_USB_SERIAL_OMNINET
  2.1043    Say Y here if you want to use a ZyXEL omni.net LCD ISDN TA.
  2.1044 @@ -14723,6 +15303,32 @@ CONFIG_USB_OV511
  2.1045    The module will be called ov511.o. If you want to compile it as a
  2.1046    module, say M here and read <file:Documentation/modules.txt>.
  2.1047  
  2.1048 +USB W996[87]CF Camera support
  2.1049 +CONFIG_USB_W9968CF
  2.1050 +  Say Y here if you want support for cameras based on
  2.1051 +  Winbond W9967CF/W9968CF JPEG USB Dual Mode Camera Chips.
  2.1052 +
  2.1053 +  This driver has an optional plugin, which is distributed as a
  2.1054 +  separate module only (released under GPL). It contains code that 
  2.1055 +  allows you to use higher resolutions and framerates, and can't
  2.1056 +  be included into the official Linux kernel for performance 
  2.1057 +  purposes.
  2.1058 +  At the moment the driver needs a third-part module for the CMOS 
  2.1059 +  sensors, which is available on internet: it is recommended to read
  2.1060 +  <file:Documentation/usb/w9968cf.txt> for more informations and for
  2.1061 +  a list of supported cameras.
  2.1062 +
  2.1063 +  This driver uses the Video For Linux and the I2C APIs. 
  2.1064 +  You must say Y or M to both "Video For Linux" and 
  2.1065 +  "I2C Support" to use this driver.
  2.1066 +  Information on this API and pointers to "v4l" programs may be found
  2.1067 +  on the WWW at <http://roadrunner.swansea.uk.linux.org/v4l.shtml>.
  2.1068 +
  2.1069 +  This code is also available as a module ( = code which can be
  2.1070 +  inserted in and removed from the running kernel whenever you want).
  2.1071 +  The module will be called w9968cf.o. If you want to compile it as a
  2.1072 +  module, say M here and read <file:Documentation/modules.txt>.
  2.1073 +
  2.1074  USB Communication Class Ethernet device support
  2.1075  CONFIG_USB_CDCETHER
  2.1076    This driver supports devices conforming to the Communication Device
  2.1077 @@ -15223,6 +15829,88 @@ CONFIG_USB_SPEEDTOUCH
  2.1078    The module will be called speedtch.o. If you want to compile it as
  2.1079    a module, say M here and read <file:Documentation/modules.txt>.
  2.1080  
  2.1081 +CONFIG_USB_GADGET
  2.1082 +  USB is a master/slave protocol, organized with one master
  2.1083 +  host (such as a PC) controlling up to 127 peripheral devices.
  2.1084 +  The USB hardware is asymmetric, which makes it easier to set up:
  2.1085 +  you can't connect two "to-the-host" connectors to each other.
  2.1086 +
  2.1087 +  Linux can run in the host, or in the peripheral.  In both cases
  2.1088 +  you need a low level bus controller driver, and some software
  2.1089 +  talking to it.  Peripheral controllers are often discrete silicon,
  2.1090 +  or are integrated with the CPU in a microcontroller.  The more
  2.1091 +  familiar host side controllers have names like like "EHCI", "OHCI",
  2.1092 +  or "UHCI", and are usually integrated into southbridges on PC
  2.1093 +  motherboards.
  2.1094 +
  2.1095 +  Enable this configuration option if you want to run Linux inside
  2.1096 +  a USB peripheral device.  Configure one hardware driver for your
  2.1097 +  peripheral/device side bus controller, and a "gadget driver" for
  2.1098 +  your peripheral protocol.  (If you use modular gadget drivers,
  2.1099 +  you may configure more than one.)
  2.1100 +
  2.1101 +  If in doubt, say "N" and don't enable these drivers; most people
  2.1102 +  don't have this kind of hardware (except maybe inside Linux PDAs).
  2.1103 +
  2.1104 +CONFIG_USB_NET2280
  2.1105 +  NetChip 2280 is a PCI based USB peripheral controller which
  2.1106 +  supports both full and high speed USB 2.0 data transfers.  
  2.1107 +           
  2.1108 +  It has six configurable endpoints, as well as endpoint zero
  2.1109 +  (for control transfers) and several endpoints with dedicated
  2.1110 +  functions.
  2.1111 +
  2.1112 +  Say "y" to link the driver statically, or "m" to build a
  2.1113 +  dynamically linked module called "net2280" and force all
  2.1114 +  gadget drivers to also be dynamically linked.
  2.1115 +
  2.1116 +CONFIG_USB_ZERO
  2.1117 +  Gadget Zero is a two-configuration device.  It either sinks and
  2.1118 +  sources bulk data; or it loops back a configurable number of
  2.1119 +  transfers.  It also implements control requests, for "chapter 9"
  2.1120 +  conformance.  The driver needs only two bulk-capable endpoints, so
  2.1121 +  it can work on top of most device-side usb controllers.  It's
  2.1122 +  useful for testing, and is also a working example showing how
  2.1123 +  USB "gadget drivers" can be written.
  2.1124 +
  2.1125 +  Make this be the first driver you try using on top of any new
  2.1126 +  USB peripheral controller driver.  Then you can use host-side
  2.1127 +  test software, like the "usbtest" driver, to put your hardware
  2.1128 +  and its driver through a basic set of functional tests.
  2.1129 +
  2.1130 +  Gadget Zero also works with the host-side "usb-skeleton" driver,
  2.1131 +  and with many kinds of host-side test software.  You may need
  2.1132 +  to tweak product and vendor IDs before host software knows about
  2.1133 +  this device, and arrange to select an appropriate configuration.
  2.1134 +
  2.1135 +  Say "y" to link the driver statically, or "m" to build a
  2.1136 +  dynamically linked module called "g_zero".
  2.1137 +
  2.1138 +CONFIG_USB_ETH
  2.1139 +  This driver implements Ethernet style communication, in either
  2.1140 +  of two ways:
  2.1141 +          
  2.1142 +   - The "Communication Device Class" (CDC) Ethernet Control Model.
  2.1143 +     That protocol is often avoided with pure Ethernet adapters, in
  2.1144 +     favor of simpler vendor-specific hardware, but is widely
  2.1145 +     supported by firmware for smart network devices.
  2.1146 +
  2.1147 +   - On hardware can't implement that protocol, a simpler approach
  2.1148 +     is used, placing fewer demands on USB.
  2.1149 +
  2.1150 +   Within the USB device, this gadget driver exposes a network device
  2.1151 +   "usbX", where X depends on what other networking devices you have.
  2.1152 +   Treat it like a two-node Ethernet link:  host, and gadget.
  2.1153 +
  2.1154 +   The Linux-USB host-side "usbnet" driver interoperates with this
  2.1155 +   driver, so that deep I/O queues can be supported.  On 2.4 kernels,
  2.1156 +   use "CDCEther" instead, if you're using the CDC option. That CDC
  2.1157 +   mode should also interoperate with standard CDC Ethernet class
  2.1158 +   drivers on other host operating systems.
  2.1159 +
  2.1160 +   Say "y" to link the driver statically, or "m" to build a
  2.1161 +   dynamically linked module called "g_ether".
  2.1162 +
  2.1163  Always do synchronous disk IO for UBD
  2.1164  CONFIG_BLK_DEV_UBD_SYNC
  2.1165    The User-Mode Linux port includes a driver called UBD which will let
  2.1166 @@ -15537,21 +16225,15 @@ CONFIG_REISERFS_FS
  2.1167    architectural foundations.
  2.1168  
  2.1169    In general, ReiserFS is as fast as ext2, but is very efficient with
  2.1170 -  large directories and small files.  Additional patches are needed
  2.1171 -  for NFS and quotas, please see <http://www.reiserfs.org/> for links.
  2.1172 -
  2.1173 -  It is more easily extended to have features currently found in
  2.1174 -  database and keyword search systems than block allocation based file
  2.1175 -  systems are.  The next version will be so extended, and will support
  2.1176 -  plugins consistent with our motto ``It takes more than a license to
  2.1177 -  make source code open.''
  2.1178 -
  2.1179 -  Read <http://www.reiserfs.org/> to learn more about reiserfs.
  2.1180 -
  2.1181 -  Sponsored by Threshold Networks, Emusic.com, and Bigstorage.com.
  2.1182 -
  2.1183 -  If you like it, you can pay us to add new features to it that you
  2.1184 -  need, buy a support contract, or pay us to port it to another OS.
  2.1185 +  large directories and small files.  It is much faster for writes,
  2.1186 +  and slightly slower for reads than ext2.  It is much faster than
  2.1187 +  ext3.  It will be obsoleted by Reiser4 in not too long, so keep
  2.1188 +  an eye on our website for when Reiser4 ships.
  2.1189 +
  2.1190 +  Mount with the notail option if performance matters more to you than
  2.1191 +  saving space (the design flaw underlying this is fixed in reiser4).
  2.1192 +
  2.1193 +  Read <http://www.namesys.com> to learn more about reiserfs.
  2.1194  
  2.1195  Enable extra Reiserfs consistency checks
  2.1196  CONFIG_REISERFS_CHECK
  2.1197 @@ -17513,6 +18195,24 @@ CONFIG_HIL
  2.1198  
  2.1199    Enable this option if you intend to use a HIL keyboard.
  2.1200  
  2.1201 +HP System Device Controller support
  2.1202 +CONFIG_HP_SDC
  2.1203 +  This option enables supports for the the "System Device Controller",
  2.1204 +  an i8042 carrying microcode to manage a few miscellanous devices
  2.1205 +  on some Hewlett Packard systems.  The SDC itself contains a 10ms
  2.1206 +  resolution timer/clock capable of delivering interrupts on periodic
  2.1207 +  and one-shot basis.  The SDC may also be connected to a battery-backed
  2.1208 +  real-time clock, a basic audio waveform generator, and an HP-HIL
  2.1209 +  Master Link Controller serving up to seven input devices.
  2.1210 +
  2.1211 +  By itself this option is rather useless, but enabling it will
  2.1212 +  enable selection of drivers for the abovementioned devices.
  2.1213 +  It is, however, incompatible with the old, reliable HIL keyboard
  2.1214 +  driver, and the new HIL driver is experimental, so if you plan to
  2.1215 +  use a HIL keyboard as your primary keyboard, you may wish to
  2.1216 +  keep using that driver until the new HIL drivers have had more
  2.1217 +  testing.
  2.1218 +
  2.1219  Include IOP (IIfx/Quadra 9x0) ADB driver
  2.1220  CONFIG_ADB_IOP
  2.1221    The I/O Processor (IOP) is an Apple custom IC designed to provide
  2.1222 @@ -17828,6 +18528,19 @@ CONFIG_ISTALLION
  2.1223    read <file:Documentation/modules.txt>. The module will be called
  2.1224    istallion.o.
  2.1225  
  2.1226 +PDC software console support
  2.1227 +CONFIG_PDC_CONSOLE
  2.1228 +  Saying Y here will enable the software based PDC console to be
  2.1229 +  used as the system console.  This is useful for machines in
  2.1230 +  which the hardware based console has not been written yet.  The
  2.1231 +  following steps must be competed to use the PDC console:
  2.1232 +
  2.1233 +    1. create the device entry (mknod /dev/ttyB0 c 60 0)
  2.1234 +    2. Edit the /etc/inittab to start a getty listening on /dev/ttyB0
  2.1235 +    3. Add device ttyB0 to /etc/securetty (if you want to log on as
  2.1236 +         root on this console.)
  2.1237 +    4. Change the kernel command console parameter to: console=ttyB0
  2.1238 +
  2.1239  Microgate SyncLink adapter support
  2.1240  CONFIG_SYNCLINK
  2.1241    Provides support for the SyncLink ISA and PCI multiprotocol serial
  2.1242 @@ -18278,6 +18991,15 @@ CONFIG_I2C_PROC
  2.1243    it as a module, say M here and read <file:Documentation/modules.txt>.
  2.1244    The module will be called i2c-proc.o.
  2.1245  
  2.1246 +Powermac Keywest I2C interface
  2.1247 +CONFIG_I2C_KEYWEST
  2.1248 +  This supports the use of the I2C interface in the combo-I/O
  2.1249 +  chip on recent Apple machines.  Say Y if you have such a machine.
  2.1250 +
  2.1251 +  This driver is also available as a module.  If you want to compile
  2.1252 +  it as a module, say M here and read Documentation/modules.txt.
  2.1253 +  The module will be called i2c-keywest.o.
  2.1254 +
  2.1255  Bus Mouse Support
  2.1256  CONFIG_BUSMOUSE
  2.1257    Say Y here if your machine has a bus mouse as opposed to a serial
  2.1258 @@ -18787,6 +19509,13 @@ CONFIG_DRM_I810
  2.1259    selected, the module will be called i810.o.  AGP support is required
  2.1260    for this driver to work.
  2.1261  
  2.1262 +Intel 830M, 845G, 852GM, 855GM, 865G
  2.1263 +CONFIG_DRM_I830
  2.1264 +  Choose this option if you have a system that has Intel 830M, 845G,
  2.1265 +  852GM, 855GM or 865G integrated graphics.  If M is selected, the
  2.1266 +  module will be called i830.o.  AGP support is required for this driver
  2.1267 +  to work.
  2.1268 +
  2.1269  Matrox G200/G400/G450
  2.1270  CONFIG_DRM_MGA
  2.1271    Choose this option if you have a Matrox G200, G400 or G450 graphics
  2.1272 @@ -18940,6 +19669,21 @@ CONFIG_INTEL_RNG
  2.1273  
  2.1274    If unsure, say N.
  2.1275  
  2.1276 +Intel/AMD/VIA HW Random Number Generator support
  2.1277 +CONFIG_HW_RANDOM
  2.1278 +  This driver provides kernel-side support for the
  2.1279 +  Random Number Generator hardware found on Intel i8xx-based motherboards,
  2.1280 +  AMD 76x-based motherboards, and Via Nehemiah CPUs.
  2.1281 +
  2.1282 +  Provides a character driver, used to read() entropy data.
  2.1283 +
  2.1284 +  To compile this driver as a module ( = code which can be inserted in
  2.1285 +  and removed from the running kernel whenever you want), say M here
  2.1286 +  and read <file:Documentation/modules.txt>. The module will be called
  2.1287 +  hw_random.
  2.1288 +
  2.1289 +  If unsure, say N.
  2.1290 +
  2.1291  Power Management support
  2.1292  CONFIG_PM
  2.1293    "Power Management" means that parts of your computer are shut
  2.1294 @@ -18989,30 +19733,8 @@ CONFIG_ACPI
  2.1295    The ACPI Sourceforge project may also be of interest:
  2.1296    <http://sf.net/projects/acpi/>
  2.1297  
  2.1298 -ACPI Processor Enumeration for HT
  2.1299 -CONFIG_ACPI_HT_ONLY
  2.1300 -  ACPI enumerates both logical (a.k.a. Hyper-Threaded -- HT)
  2.1301 -  and physical processors.  It is designed to obsolete several older
  2.1302 -  specifications, including the MultiProcessor Specification (MPS),
  2.1303 -  which supported only physical processors.
  2.1304 -
  2.1305 -  CONFIG_ACPI_HT_ONLY includes just the minimal ACPI boot-time code
  2.1306 -  necessary to enumerate logical processors and enable HT.
  2.1307 -
  2.1308 -  CONFIG_ACPI includes this code, plus IO APIC enumeration,
  2.1309 -  and the hooks to run the ACPI AML interpreter for run-time events.
  2.1310 -
  2.1311 -  When CONFIG_ACPI is selected, the command-line option "acpi=ht"
  2.1312 -  is available to run just the ACPI boot-time code -- just as if
  2.1313 -  only CONFIG_ACPI_HT_ONLY were selected.
  2.1314 -
  2.1315    Note that "acpi=off" can be used to disable all ACPI code in the kernel.
  2.1316  
  2.1317 -Enable ACPI 2.0 with errata 1.3
  2.1318 -CONFIG_ACPI20
  2.1319 -  Enable support for the 2.0 version of the ACPI interpreter.  See the
  2.1320 -  help for ACPI for caveats and discussion.
  2.1321 -
  2.1322  ACPI kernel configuration manager
  2.1323  CONFIG_ACPI_KERNEL_CONFIG
  2.1324    If you say `Y' here, Linux's ACPI support will use the
  2.1325 @@ -19032,23 +19754,6 @@ CONFIG_ACPI_RELAXED_AML
  2.1326    particular, many Toshiba laptops require this for correct operation
  2.1327    of the AC module.
  2.1328  
  2.1329 -ACPI Bus Manager
  2.1330 -CONFIG_ACPI_BUSMGR
  2.1331 -  The ACPI Bus Manager enumerates devices in the ACPI namespace, and
  2.1332 -  handles PnP messages.  All ACPI devices use its services, so using
  2.1333 -  them requires saying Y here.
  2.1334 -
  2.1335 -ACPI System Driver
  2.1336 -CONFIG_ACPI_SYS
  2.1337 -  This driver will enable your system to shut down using ACPI, and
  2.1338 -  dump your ACPI DSDT table using /proc/acpi/dsdt.
  2.1339 -
  2.1340 -ACPI Processor Driver
  2.1341 -CONFIG_ACPI_CPU
  2.1342 -  This driver installs ACPI as the idle handler for Linux, and uses
  2.1343 -  ACPI C2 and C3 processor states to save power, on systems that
  2.1344 -  support it.
  2.1345 -
  2.1346  ACPI Button
  2.1347  CONFIG_ACPI_BUTTON
  2.1348    This driver registers for events based on buttons, such as the
  2.1349 @@ -19083,11 +19788,6 @@ CONFIG_ACPI_EC
  2.1350    the battery and thermal drivers.  If you are compiling for a laptop,
  2.1351    say Y.
  2.1352  
  2.1353 -ACPI Control Method Battery
  2.1354 -CONFIG_ACPI_CMBATT
  2.1355 -  This driver adds support for battery information through
  2.1356 -  /proc/acpi/battery. If you have a laptop with a battery, say Y.
  2.1357 -
  2.1358  ACPI Thermal
  2.1359  CONFIG_ACPI_THERMAL
  2.1360    This driver handles overheating conditions on laptops. It is HIGHLY
  2.1361 @@ -19103,6 +19803,9 @@ CONFIG_ACPI_ASUS
  2.1362    display brightness and output, switching the LCD backlight on and off,
  2.1363    and most importantly, allows you to blink those fancy LEDs intended
  2.1364    for reporting mail and wireless status.
  2.1365 +
  2.1366 +  Note: the display switching code is currently considered EXPERIMENTAL,
  2.1367 +  toying with these values may even lock your machine.
  2.1368    
  2.1369    All settings are changed via /proc/acpi/asus directory entries. Owner
  2.1370    and group for these entries can be set with asus_uid and asus_gid
  2.1371 @@ -19580,6 +20283,15 @@ CONFIG_X86_CPUID
  2.1372    <file:Documentation/modules.txt>. The module will be called
  2.1373    cpuid.o
  2.1374  
  2.1375 +x86 BIOS Enhanced Disk Drive support
  2.1376 +CONFIG_EDD
  2.1377 +  Say Y or M here if you want to enable BIOS Enhanced Disk Drive
  2.1378 +  Services real mode BIOS calls to determine which disk
  2.1379 +  BIOS tries boot from.  This information is then exported via /proc.
  2.1380 +
  2.1381 +  This option is experimental, but believed to be safe,
  2.1382 +  and most disk controller BIOS vendors do not yet implement this feature.
  2.1383 +
  2.1384  SBC-60XX Watchdog Timer
  2.1385  CONFIG_60XX_WDT
  2.1386   This driver can be used with the watchdog timer found on some
  2.1387 @@ -20698,10 +21410,10 @@ CONFIG_SC6600_CDROM
  2.1388    DSP 16 card. Enter: 0 for Sony, 1 for Panasonic, 2 for IDE, 4 for no
  2.1389    CD-ROM present.
  2.1390  
  2.1391 -C-Media PCI (CMI8338/8378)
  2.1392 +C-Media PCI (CMI8338/8738)
  2.1393  CONFIG_SOUND_CMPCI
  2.1394    Say Y or M if you have a PCI sound card using the CMI8338
  2.1395 -  or the CMI8378 chipset.  Data on these chips are available at
  2.1396 +  or the CMI8738 chipset.  Data on these chips are available at
  2.1397    <http://www.cmedia.com.tw/>.
  2.1398  
  2.1399    A userspace utility to control some internal registers of these
  2.1400 @@ -21559,6 +22271,11 @@ CONFIG_HISAX_HFC_SX
  2.1401    This enables HiSax support for the HFC-S+, HFC-SP and HFC-PCMCIA
  2.1402    cards. This code is not finished yet.
  2.1403  
  2.1404 +Formula-n enter:now PCI card (EXPERIMENTAL)
  2.1405 +CONFIG_HISAX_ENTERNOW_PCI
  2.1406 +  This enables HiSax support for the Formula-n enter:now PCI
  2.1407 +  ISDN card.
  2.1408 +
  2.1409  Am7930
  2.1410  CONFIG_HISAX_AMD7930
  2.1411    This enables HiSax support for the AMD7930 chips on some SPARCs.
  2.1412 @@ -22706,15 +23423,16 @@ CONFIG_ARIADNE
  2.1413    want). The module is called ariadne.o. If you want to compile it as
  2.1414    a module, say M here and read <file:Documentation/modules.txt>.
  2.1415  
  2.1416 -Ariadne II and X-Surf support
  2.1417 -CONFIG_ARIADNE2
  2.1418 -  This driver is for the Village Tronic Ariadne II and the Individual
  2.1419 +Zorro NS8390-based Ethernet support
  2.1420 +CONFIG_ZORRO8390
  2.1421 +  This driver is for Zorro Ethernet cards using an NS8390-compatible
  2.1422 +  chipset, like the Village Tronic Ariadne II and the Individual
  2.1423    Computers X-Surf Ethernet cards. If you have such a card, say Y.
  2.1424    Otherwise, say N.
  2.1425  
  2.1426    This driver is also available as a module ( = code which can be
  2.1427    inserted in and removed from the running kernel whenever you want).
  2.1428 -  The module will be called ariadne2.o. If you want to compile it as
  2.1429 +  The module is called zorro8390.o. If you want to compile it as
  2.1430    a module, say M here and read <file:Documentation/modules.txt>.
  2.1431  
  2.1432  A2065 support
  2.1433 @@ -23487,6 +24205,38 @@ CONFIG_MAC_EMUMOUSEBTN
  2.1434        /proc/sys/dev/mac_hid/mouse_button2_keycode
  2.1435        /proc/sys/dev/mac_hid/mouse_button3_keycode
  2.1436  
  2.1437 +Set high memory pool address
  2.1438 +CONFIG_HIGHMEM_START_BOOL
  2.1439 +  Unless you know what you are doing you *should not* set this option.
  2.1440 +
  2.1441 +  It can be used to override the default PKMAP_BASE address which
  2.1442 +  is the location of the high memory pool.  This can be useful in
  2.1443 +  optimizing virtual memory usage in a system.
  2.1444 +
  2.1445 +Set maximum low memory
  2.1446 +CONFIG_LOWMEM_SIZE_BOOL
  2.1447 +  Unless you know what you are doing you *should not* set this option.
  2.1448 +
  2.1449 +  It can be used to override the standard calculated value of
  2.1450 +  MAX_LOW_MEM. This can be useful in optimizing virtual memory usage
  2.1451 +  in a system.
  2.1452 +
  2.1453 +Set custom kernel base address
  2.1454 +CONFIG_KERNEL_START_BOOL
  2.1455 +  Unless you know what you are doing you *should not* set this option.
  2.1456 +
  2.1457 +  It can be used to override the standard PAGE_OFFSET/KERNELBASE
  2.1458 +  value used by the kernel.  This can be useful in controlling
  2.1459 +  amount of virtual address space available to the kernel.
  2.1460 +
  2.1461 +Set custom user task size
  2.1462 +CONFIG_TASK_SIZE_BOOL
  2.1463 +  Unless you know what you are doing you *should not* set this option.
  2.1464 +
  2.1465 +  It can be used to override the standard TASK_SIZE value used
  2.1466 +  by the kernel.  This can be useful in controlling amount of
  2.1467 +  virtual address space available to user tasks.
  2.1468 +
  2.1469  Enhanced Real Time Clock Support (/dev/rtc)
  2.1470  CONFIG_PPC_RTC
  2.1471    If you say Y here and create a character special file /dev/rtc with
  2.1472 @@ -24754,6 +25504,46 @@ CONFIG_CPU_ARM1020
  2.1473    Say Y if you want support for the ARM1020 processor.
  2.1474    Otherwise, say N.
  2.1475  
  2.1476 +Disable I-Cache
  2.1477 +CONFIG_CPU_ICACHE_DISABLE
  2.1478 +  Say Y here to disable the processor instruction cache. Unless
  2.1479 +  you have a reason not to or are unsure, say N.
  2.1480 +
  2.1481 +Disable D-Cache
  2.1482 +CONFIG_CPU_DCACHE_DISABLE
  2.1483 +  Say Y here to disable the processor data cache. Unless
  2.1484 +  you have a reason not to or are unsure, say N.
  2.1485 +
  2.1486 +Force write through D-cache
  2.1487 +CONFIG_CPU_DCACHE_WRITETHROUGH
  2.1488 +  Say Y here to use the data cache in write-through mode. Unless you
  2.1489 +  specifically require this or are unsure, say N.
  2.1490 +
  2.1491 +Round robin I and D cache replacement algorithm
  2.1492 +CONFIG_CPU_CACHE_ROUND_ROBIN
  2.1493 +  Say Y here to use the predictable round-robin cache replacement
  2.1494 +  policy.  Unless you specifically require this or are unsure, say N.
  2.1495 +
  2.1496 +Disable branch prediction
  2.1497 +CONFIG_CPU_BPREDICT_DISABLE
  2.1498 +  Say Y here to disable branch prediction.  If unsure, say N.
  2.1499 +
  2.1500 +Compressed boot loader in ROM/flash
  2.1501 +CONFIG_ZBOOT_ROM
  2.1502 +  Say Y here if you intend to execute your compressed kernel image (zImage)
  2.1503 +  directly from ROM or flash.  If unsure, say N.
  2.1504 +
  2.1505 +Compressed ROM boot loader base address
  2.1506 +CONFIG_ZBOOT_ROM_TEXT
  2.1507 +  The base address for zImage.  Unless you have special requirements, you
  2.1508 +  should not change this value.
  2.1509 +
  2.1510 +Compressed ROM boot loader BSS address
  2.1511 +CONFIG_ZBOOT_ROM_BSS
  2.1512 +  The base address of 64KiB of read/write memory, which must be available
  2.1513 +  while the decompressor is running.  Unless you have special requirements,
  2.1514 +  you should not change this value.
  2.1515 +
  2.1516  Support StrongARM SA-110 processor
  2.1517  CONFIG_CPU_SA110
  2.1518    The Intel StrongARM(R) SA-110 is a 32-bit microprocessor and
  2.1519 @@ -24913,6 +25703,19 @@ CONFIG_DEBUG_CLPS711X_UART2
  2.1520    output to the second serial port on these devices.  Saying N will
  2.1521    cause the debug messages to appear on the first serial port.
  2.1522  
  2.1523 +Kernel log buffer length shift
  2.1524 +CONFIG_LOG_BUF_SHIFT
  2.1525 +  The kernel log buffer has a fixed size of :
  2.1526 +      64 kB (2^16) on MULTIQUAD and IA64,
  2.1527 +     128 kB (2^17) on S390
  2.1528 +      32 kB (2^15) on SMP systems
  2.1529 +      16 kB (2^14) on UP systems
  2.1530 +
  2.1531 +  You have the ability to change this size with this paramter which
  2.1532 +  fixes the bit shift of to get the buffer length (which must be a
  2.1533 +  power of 2). Eg: a value of 16 sets the buffer to 64 kB (2^16).
  2.1534 +  The default value of 0 uses standard values above.
  2.1535 +
  2.1536  Disable pgtable cache
  2.1537  CONFIG_NO_PGT_CACHE
  2.1538    Normally the kernel maintains a `quicklist' of preallocated
  2.1539 @@ -25269,6 +26072,44 @@ CONFIG_USB_STORAGE_JUMPSHOT
  2.1540    brave people.  System crashes and other bad things are likely to occur if
  2.1541    you use this driver.  If in doubt, select N.
  2.1542  
  2.1543 +Tieman Voyager USB Braille display support (EXPERIMENTAL)
  2.1544 +CONFIG_USB_BRLVGER
  2.1545 +  Say Y here if you want to use the Voyager USB Braille display from
  2.1546 +  Tieman. See <file:Documentation/usb/brlvger.txt> for more
  2.1547 +  information.
  2.1548 +
  2.1549 +  This code is also available as a module ( = code which can be
  2.1550 +  inserted in and removed from the running kernel whenever you want).
  2.1551 +  The module will be called brlvger.o. If you want to compile it as
  2.1552 +  a module, say M here and read <file:Documentation/modules.txt>.
  2.1553 +
  2.1554 +KB Gear JamStudio tablet support
  2.1555 +CONFIG_USB_KBTAB
  2.1556 +  Say Y here if you want to use the USB version of the KB Gear
  2.1557 +  JamStudio tablet.  Make sure to say Y to "Mouse support"
  2.1558 +  (CONFIG_INPUT_MOUSEDEV) and/or "Event interface support"
  2.1559 +  (CONFIG_INPUT_EVDEV) as well.
  2.1560 +
  2.1561 +  This driver is also available as a module ( = code which can be
  2.1562 +  inserted in and removed from the running kernel whenever you want).
  2.1563 +  The module will be called kbtab.o.  If you want to compile it as a
  2.1564 +  module, say M here and read <file:Documentation/modules.txt>.
  2.1565 +
  2.1566 +USB Inside Out Edgeport Serial Driver (TI devices)
  2.1567 +CONFIG_USB_SERIAL_EDGEPORT_TI
  2.1568 +  Say Y here if you want to use any of the devices from Inside Out
  2.1569 +  Networks (Digi) that are not supported by the io_edgeport driver.
  2.1570 +  This includes the Edgeport/1 device.
  2.1571 +
  2.1572 +  This code is also available as a module ( = code which can be
  2.1573 +  inserted in and removed from the running kernel whenever you want).
  2.1574 +  The module will be called io_ti.o.  If you want to compile it
  2.1575 +  as a module, say M here and read <file:Documentation/modules.txt>.
  2.1576 +
  2.1577 +USB Keyspan MPR Firmware
  2.1578 +CONFIG_USB_SERIAL_KEYSPAN_MPR
  2.1579 +  Say Y here to include firmware for the Keyspan MPR converter.
  2.1580 +
  2.1581  Winbond W83977AF IrDA Device Driver
  2.1582  CONFIG_WINBOND_FIR
  2.1583    Say Y here if you want to build IrDA support for the Winbond
  2.1584 @@ -26313,11 +27154,13 @@ CONFIG_WATCHDOG_CP1XXX
  2.1585  # Choice: ia64type
  2.1586  Itanium
  2.1587  CONFIG_ITANIUM
  2.1588 -  Select your IA64 processor type.  The default is Intel Itanium.
  2.1589 -
  2.1590 -McKinley
  2.1591 +  Select your IA-64 processor type.  The default is Intel Itanium.
  2.1592 +  This choice is safe for all IA-64 systems, but may not perform
  2.1593 +  optimally on systems with, say, Itanium 2 or newer processors.
  2.1594 +
  2.1595 +Itanium 2
  2.1596  CONFIG_MCKINLEY
  2.1597 -  Select this to configure for a McKinley processor.
  2.1598 +  Select this to configure for an Itanium 2 (McKinley) processor.
  2.1599  
  2.1600  # Choice: ia64system
  2.1601  IA-64 system type
  2.1602 @@ -26374,6 +27217,14 @@ CONFIG_IA64_MCA
  2.1603    Say Y here to enable machine check support for IA-64.  If you're
  2.1604    unsure, answer Y.
  2.1605  
  2.1606 +Use PAL_HALT_LIGHT in idle loop
  2.1607 +CONFIG_IA64_PAL_IDLE
  2.1608 +  Say Y here to enable use of PAL_HALT_LIGHT in the cpu_idle loop.
  2.1609 +  This allows the CPU to enter a low power state when idle.  You
  2.1610 +  can enable CONFIG_IA64_PALINFO and check /proc/pal/cpu0/power_info
  2.1611 +  to see the power consumption and latency for this state.  If you're
  2.1612 +  unsure your firmware supports it, answer N.
  2.1613 +
  2.1614  Disable IA-64 Virtual Hash Page Table
  2.1615  CONFIG_DISABLE_VHPT
  2.1616    The Virtual Hash Page Table (VHPT) enhances virtual address
  2.1617 @@ -26394,12 +27245,31 @@ CONFIG_IA64_DEBUG_IRQ
  2.1618    and restore instructions.  It's useful for tracking down spinlock
  2.1619    problems, but slow!  If you're unsure, select N.
  2.1620  
  2.1621 -Early printk support (requires VGA!)
  2.1622 +Early printk support
  2.1623  CONFIG_IA64_EARLY_PRINTK
  2.1624 -  Selecting this option uses the VGA screen for printk() output before
  2.1625 -  the consoles are initialised.  It is useful for debugging problems
  2.1626 -  early in the boot process, but only if you have a VGA screen
  2.1627 -  attached.  If you're unsure, select N.
  2.1628 +  Selecting this option uses a UART or VGA screen (or both) for
  2.1629 +  printk() output before the consoles are initialised.  It is useful
  2.1630 +  for debugging problems early in the boot process, but only if you
  2.1631 +  have a serial terminal or a VGA screen attached.  If you're unsure,
  2.1632 +  select N.
  2.1633 +
  2.1634 +Early printk on serial port
  2.1635 +CONFIG_IA64_EARLY_PRINTK_UART
  2.1636 +  Select this option to use a serial port for early printk() output.
  2.1637 +  You must also select either CONFIG_IA64_EARLY_PRINTK_UART_BASE or
  2.1638 +  CONFIG_SERIAL_HCDP.  If you select CONFIG_SERIAL_HCDP, early
  2.1639 +  printk() output will appear on the first console device described by
  2.1640 +  the HCDP.  If you set CONFIG_IA64_EARLY_PRINTK_UART_BASE, the HCDP
  2.1641 +  will be ignored.
  2.1642 +
  2.1643 +UART base address
  2.1644 +CONFIG_IA64_EARLY_PRINTK_UART_BASE
  2.1645 +  The physical MMIO address of the UART to use for early printk().
  2.1646 +  This overrides any UART located using the EFI HCDP table.
  2.1647 +
  2.1648 +Early printk on VGA
  2.1649 +CONFIG_IA64_EARLY_PRINTK_VGA
  2.1650 +  Select this option to use VGA for early printk() output.
  2.1651  
  2.1652  Print possible IA64 hazards to console
  2.1653  CONFIG_IA64_PRINT_HAZARDS
  2.1654 @@ -26424,6 +27294,58 @@ CONFIG_IA64_PALINFO
  2.1655    To use this option, you have to check that the "/proc file system
  2.1656    support" (CONFIG_PROC_FS) is enabled, too.
  2.1657  
  2.1658 +PPC4xx DMA controller support
  2.1659 +CONFIG_PPC4xx_DMA
  2.1660 +  Select this to enable support for the PPC4xx general purpose DMA
  2.1661 +  controller.
  2.1662 +
  2.1663 +ttyS0 device
  2.1664 +CONFIG_UART0_TTYS0
  2.1665 +  This option reverses the mapping between the hardware UART and software
  2.1666 +  device.  Selecting UART0 gives the normal mapping of UART0=ttyS0 and
  2.1667 +  UART1=ttyS1.  Selecting UART1 gives the reverse mapping of UART0=ttyS1
  2.1668 +  and UART1=ttyS0.  Most people will use UART0.
  2.1669 +
  2.1670 +PowerPC 405 on-chip ethernet
  2.1671 +CONFIG_IBM_OCP_ENET
  2.1672 +  If you want to use the 405 built-in ethernet select this.
  2.1673 +
  2.1674 +CONFIG_IBM_OCP_ENET_ERROR_MSG
  2.1675 +  Enable this option to print verbose debug messages for troubleshooting.
  2.1676 +
  2.1677 +PowerPC 405 on-chip ethernet -- Number of receive buffers
  2.1678 +CONFIG_IBM_OCP_ENET_RX_BUFF
  2.1679 +  Number of ethernet receive (read) buffers.  Unless you know what you
  2.1680 +  are doing the default should be fine.
  2.1681 +
  2.1682 +PowerPC 405 on-chip ethernet -- Number of transmit buffers
  2.1683 +CONFIG_IBM_OCP_ENET_TX_BUFF
  2.1684 +  Number of ethernet transmit (write) buffers.  Unless you know what
  2.1685 +  you are doing the default should be fine.
  2.1686 +
  2.1687 +PowerPC 405 on-chip ethernet -- Amount of bytes to Reserve on a skb
  2.1688 +CONFIG_IBM_OCP_ENET_SKB_RES
  2.1689 +  Many standard ethernet drivers need to reserve 2 bytes of data
  2.1690 +  on the skb before giving the data ptr to the hardware. This is
  2.1691 +  so the IP data will be 16-byte aligned when it goes up the stack.
  2.1692 +  This is a requirement for some processors and it can cause major
  2.1693 +  slow downs on others. The 405GP dose not have problems with the 
  2.1694 +  misaligned data so the default is 0. If you need to route the
  2.1695 +  incoming ethernet packets to another device that has alignment
  2.1696 +  requirements this can help remove a data copy. A value of 2 can
  2.1697 +  help at getting 16-byte aligned IP data for another device. A
  2.1698 +  larger value can be used when routing to a IP tunnel device.
  2.1699 +  Make sure XXX_DESC_SIZE - XXX_SKB_RES >= 1514, or larger if VLANS
  2.1700 +  are used.
  2.1701 +
  2.1702 +PPC 405 I2C Algorithm
  2.1703 +CONFIG_PPC405_I2C_ALGO
  2.1704 +  Enable this option to use the built-in I2C on your 405.
  2.1705 +
  2.1706 +PPC 405 I2C Adapter
  2.1707 +CONFIG_PPC405_I2C_ADAP
  2.1708 +  Enable this option to use the built-in I2C on your 405.
  2.1709 +
  2.1710  /proc/efi/vars support
  2.1711  CONFIG_EFI_VARS
  2.1712    If you say Y here, you are able to get EFI (Extensible Firmware
  2.1713 @@ -26516,6 +27438,11 @@ CONFIG_DEBUG_SPINLOCK
  2.1714    best used in conjunction with the NMI watchdog so that spinlock
  2.1715    deadlocks are also debuggable.
  2.1716  
  2.1717 +Additional run-time checks
  2.1718 +CONFIG_CHECKING
  2.1719 +  Enables some internal consistency checks for kernel debugging.
  2.1720 +  You should normally say N.
  2.1721 +
  2.1722  Read-write spinlock debugging
  2.1723  CONFIG_DEBUG_RWLOCK
  2.1724    If you say Y here then read-write lock processing will count how many
  2.1725 @@ -26818,7 +27745,7 @@ CONFIG_CPU_SUBTYPE_SH7750
  2.1726  
  2.1727  SH7751
  2.1728  CONFIG_CPU_SUBTYPE_SH7751
  2.1729 -  Select SH7750 if you have a 166 Mhz SH-4 HD6417751 CPU.
  2.1730 +  Select SH7751 if you have a 166 Mhz SH-4 HD6417751 CPU.
  2.1731  
  2.1732  ST40RA/ST40STB1
  2.1733  CONFIG_CPU_SUBTYPE_ST40STB1
  2.1734 @@ -27189,6 +28116,12 @@ CONFIG_TULIP_MWI
  2.1735  
  2.1736    If unsure, say N.
  2.1737  
  2.1738 +Hotplug firmware loading support (EXPERIMENTAL)
  2.1739 +CONFIG_FW_LOADER
  2.1740 +  This option is provided for the case where no in-kernel-tree modules require
  2.1741 +  hotplug firmware loading support, but a module built outside the kernel tree
  2.1742 +  does.
  2.1743 +
  2.1744  NatSemi SCx200 support
  2.1745  CONFIG_SCx200
  2.1746    This provides basic support for the National Semiconductor SCx200
  2.1747 @@ -27414,6 +28347,82 @@ CONFIG_CRC32
  2.1748    kernel tree does. Such modules that use library CRC32 functions
  2.1749    require that you say M or Y here.
  2.1750  
  2.1751 +Chassis LCD and LED support
  2.1752 +CONFIG_CHASSIS_LCD_LED
  2.1753 +  Say Y here if you want to enable support for the Heartbeat,
  2.1754 +  Disk/Network activities LEDs on some PA-RISC machines,
  2.1755 +  or support for the LCD that can be found on recent material.
  2.1756 +
  2.1757 +  This has nothing to do with LED State support for A, J and E class.
  2.1758 +
  2.1759 +  If unsure, say Y.
  2.1760 +
  2.1761 +VSC/GSC/HSC bus support
  2.1762 +CONFIG_GSC
  2.1763 +  The VSC, GSC and HSC busses were used from the earliest 700-series
  2.1764 +  workstations up to and including the C360/J2240 workstations.  They
  2.1765 +  were also used in servers from the E-class to the K-class.  They
  2.1766 +  are not found in B1000, C3000, J5000, A500, L1000, N4000 and upwards.
  2.1767 +  If in doubt, say "Y".
  2.1768 +
  2.1769 +Wax I/O support
  2.1770 +CONFIG_GSC_WAX
  2.1771 +  Say Y here to support the Wax multifunction chip found in some
  2.1772 +  older systems, including B/C/D/R class and 715/64, 715/80 and
  2.1773 +  715/100.  Wax includes an EISA adapter, a serial port (not always
  2.1774 +  used), a HIL interface chip and is also known to be used as the
  2.1775 +  GSC bridge for an X.25 GSC card.
  2.1776 +
  2.1777 +GSCtoPCI/Dino PCI support
  2.1778 +CONFIG_GSC_DINO
  2.1779 +  Say Y here to support the Dino & Cujo GSC to PCI bridges found in
  2.1780 +  machines from the B132 to the C360, the J2240 and the A180.  Some
  2.1781 +  GSC/HSC cards (eg gigabit & dual 100 Mbit Ethernet) have a Dino on
  2.1782 +  the card, and you also need to say Y here if you have such a card.
  2.1783 +  Note that Dino also supplies one of the serial ports on certain
  2.1784 +  machines.  If in doubt, say Y.
  2.1785 +
  2.1786 +HPET timers
  2.1787 +CONFIG_HPET_TIMER
  2.1788 +  Use the IA-PC HPET (High Precision Event Timer) to manage
  2.1789 +  time in preference to the PIT and RTC, if a HPET is
  2.1790 +  present.  The HPET provides a stable time base on SMP
  2.1791 +  systems, unlike the RTC, but it is more expensive to access,
  2.1792 +  as it is off-chip.  You can find the HPET spec at
  2.1793 +  <http://www.intel.com/labs/platcomp/hpet/hpetspec.htm>.
  2.1794 +
  2.1795 +  If unsure, say Y.
  2.1796 +
  2.1797 +IOMMU support
  2.1798 +CONFIG_GART_IOMMU
  2.1799 +  Support the K8 IOMMU. Needed to run systems with more than 4GB of memory
  2.1800 +  properly with 32-bit PCI devices that do not support DAC (Double Address
  2.1801 +  Cycle). The IOMMU can be turned off at runtime with the iommu=off parameter.
  2.1802 +  Normally the kernel will take the right choice by itself.
  2.1803 +  If unsure say Y
  2.1804 +
  2.1805 +Debug __init statements
  2.1806 +CONFIG_INIT_DEBUG
  2.1807 +  Fill __init and __initdata at the end of boot. This helps debugging
  2.1808 +  invalid uses of __init and __initdata after initialization.	
  2.1809 +
  2.1810 +Force IOMMU to on
  2.1811 +CONFIG_IOMMU_DEBUG
  2.1812 +  Force the IOMMU to on even when you have less than 4GB of memory and add
  2.1813 +  debugging code.
  2.1814 +  Can be disabled at boot time with iommu=noforce.
  2.1815 +
  2.1816 +IOMMU leak tracing
  2.1817 +CONFIG_IOMMU_LEAK
  2.1818 +  Add a simple leak tracer to the IOMMU code. This is useful when you
  2.1819 +  are debugging a buggy device driver that leaks IOMMU mappings.
  2.1820 +
  2.1821 +pSeries Hypervisor Virtual Console support
  2.1822 +CONFIG_HVC_CONSOLE
  2.1823 +  pSeries machines when partitioned support a hypervisor virtual
  2.1824 +  console. This driver allows each pSeries partition to have a console
  2.1825 +  which is accessed via the HMC.
  2.1826 +
  2.1827  CONFIG_CRYPTO
  2.1828    This option provides the core Cryptographic API.
  2.1829  
  2.1830 @@ -27497,6 +28506,12 @@ CONFIG_CRYPTO_AES
  2.1831  
  2.1832    See http://csrc.nist.gov/encryption/aes/ for more information.
  2.1833  
  2.1834 +CONFIG_CRYPTO_CAST5
  2.1835 +  CAST5 (CAST-128) cipher algorithm.
  2.1836 +
  2.1837 +  The CAST5 encryption algorithm (synonymous with CAST-128) is
  2.1838 +  described in RFC2144.
  2.1839 +
  2.1840  CONFIG_CRYPTO_DEFLATE
  2.1841    This is the Deflate algorithm (RFC1951), specified for use in
  2.1842    IPSec with the IPCOMP protocol (RFC3173, RFC2394).
  2.1843 @@ -27505,6 +28520,28 @@ CONFIG_CRYPTO_DEFLATE
  2.1844  
  2.1845  CONFIG_CRYPTO_TEST
  2.1846    Quick & dirty crypto test module.
  2.1847 +  
  2.1848 +CONFIG_SOUND_WM97XX
  2.1849 +  Say Y here to support the Wolfson WM9705 and WM9712 touchscreen
  2.1850 +  controllers. These controllers are mainly found in PDA's 
  2.1851 +  i.e. Dell Axim and Toshiba e740
  2.1852 +
  2.1853 +  This is experimental code.
  2.1854 +  Please see Documentation/wolfson-touchscreen.txt for
  2.1855 +  a complete list of parameters.
  2.1856 +  
  2.1857 +  In order to use this driver, a char device called wm97xx with a major
  2.1858 +  number of 10 and minor number 16 will have to be created under 
  2.1859 +  /dev/touchscreen.
  2.1860 +  
  2.1861 +  e.g.
  2.1862 +  mknod /dev/touchscreen/wm97xx c 10 16
  2.1863 +
  2.1864 +  If you want to compile this as a module ( = code which can be
  2.1865 +  inserted in and removed from the running kernel whenever you want),
  2.1866 +  say M here.  The module will be called ac97_plugin_wm97xx.o.
  2.1867 +  
  2.1868 +  If unsure, say N.
  2.1869  
  2.1870  #
  2.1871  # A couple of things I keep forgetting:
     3.1 --- a/xenolinux-2.4.22-sparse/Makefile	Tue Dec 16 15:55:22 2003 +0000
     3.2 +++ b/xenolinux-2.4.22-sparse/Makefile	Fri Dec 19 14:38:09 2003 +0000
     3.3 @@ -1,6 +1,6 @@
     3.4  VERSION = 2
     3.5  PATCHLEVEL = 4
     3.6 -SUBLEVEL = 22
     3.7 +SUBLEVEL = 23
     3.8  EXTRAVERSION = -xeno
     3.9  
    3.10  KERNELRELEASE=$(VERSION).$(PATCHLEVEL).$(SUBLEVEL)$(EXTRAVERSION)
    3.11 @@ -186,6 +186,7 @@ DRIVERS-$(CONFIG_PARIDE) += drivers/bloc
    3.12  DRIVERS-$(CONFIG_HAMRADIO) += drivers/net/hamradio/hamradio.o
    3.13  DRIVERS-$(CONFIG_TC) += drivers/tc/tc.a
    3.14  DRIVERS-$(CONFIG_USB) += drivers/usb/usbdrv.o
    3.15 +DRIVERS-$(CONFIG_USB_GADGET) += drivers/usb/gadget/built-in.o
    3.16  DRIVERS-y +=drivers/media/media.o
    3.17  DRIVERS-$(CONFIG_INPUT) += drivers/input/inputdrv.o
    3.18  DRIVERS-$(CONFIG_HIL) += drivers/hil/hil.o
     4.1 --- a/xenolinux-2.4.22-sparse/arch/xeno/config.in	Tue Dec 16 15:55:22 2003 +0000
     4.2 +++ b/xenolinux-2.4.22-sparse/arch/xeno/config.in	Fri Dec 19 14:38:09 2003 +0000
     4.3 @@ -67,6 +67,10 @@ if [ "$CONFIG_MK7" = "y" ]; then
     4.4     define_bool CONFIG_X86_USE_3DNOW y
     4.5  fi
     4.6  
     4.7 +if [ "$CONFIG_EXPERIMENTAL" = "y" ]; then
     4.8 +   tristate 'BIOS Enhanced Disk Drive calls determine boot disk (EXPERIMENTAL)' CONFIG_EDD
     4.9 +fi
    4.10 +
    4.11  choice 'High Memory Support' \
    4.12  	"off    CONFIG_NOHIGHMEM \
    4.13  	 4GB    CONFIG_HIGHMEM4G \
    4.14 @@ -163,6 +167,8 @@ fi
    4.15  
    4.16  source drivers/acpi/Config.in
    4.17  
    4.18 +int 'Kernel messages buffer length shift (0 = default)' CONFIG_LOG_BUF_SHIFT 0
    4.19 +
    4.20  endmenu
    4.21  
    4.22  source crypto/Config.in
     5.1 --- a/xenolinux-2.4.22-sparse/arch/xeno/defconfig	Tue Dec 16 15:55:22 2003 +0000
     5.2 +++ b/xenolinux-2.4.22-sparse/arch/xeno/defconfig	Fri Dec 19 14:38:09 2003 +0000
     5.3 @@ -123,6 +123,11 @@ CONFIG_IP_NF_TARGET_LOG=y
     5.4  CONFIG_IP_NF_TARGET_ULOG=y
     5.5  # CONFIG_IP_NF_TARGET_TCPMSS is not set
     5.6  # CONFIG_IP_NF_ARPTABLES is not set
     5.7 +
     5.8 +#
     5.9 +#   IP: Virtual Server Configuration
    5.10 +#
    5.11 +# CONFIG_IP_VS is not set
    5.12  # CONFIG_VLAN_8021Q is not set
    5.13  
    5.14  #
    5.15 @@ -134,6 +139,7 @@ CONFIG_IP_NF_TARGET_ULOG=y
    5.16  #
    5.17  # Appletalk devices
    5.18  #
    5.19 +# CONFIG_DEV_APPLETALK is not set
    5.20  # CONFIG_DECNET is not set
    5.21  # CONFIG_BRIDGE is not set
    5.22  
    5.23 @@ -166,13 +172,13 @@ CONFIG_XENOLINUX_BLOCK=y
    5.24  CONFIG_VT=y
    5.25  CONFIG_VT_CONSOLE=y
    5.26  # CONFIG_SERIAL is not set
    5.27 +# CONFIG_SERIAL_EXTENDED is not set
    5.28  # CONFIG_SERIAL_NONSTANDARD is not set
    5.29  CONFIG_UNIX98_PTYS=y
    5.30  CONFIG_UNIX98_PTY_COUNT=256
    5.31  # CONFIG_PRINTER is not set
    5.32  # CONFIG_PPDEV is not set
    5.33  # CONFIG_TIPAR is not set
    5.34 -# CONFIG_HVC_CONSOLE is not set
    5.35  
    5.36  #
    5.37  # I2C support
    5.38 @@ -193,17 +199,42 @@ CONFIG_PSMOUSE=y
    5.39  # Joysticks
    5.40  #
    5.41  # CONFIG_INPUT_GAMEPORT is not set
    5.42 +# CONFIG_INPUT_NS558 is not set
    5.43 +# CONFIG_INPUT_LIGHTNING is not set
    5.44 +# CONFIG_INPUT_PCIGAME is not set
    5.45 +# CONFIG_INPUT_CS461X is not set
    5.46 +# CONFIG_INPUT_EMU10K1 is not set
    5.47  # CONFIG_INPUT_SERIO is not set
    5.48 +# CONFIG_INPUT_SERPORT is not set
    5.49  
    5.50  #
    5.51  # Joysticks
    5.52  #
    5.53 +# CONFIG_INPUT_ANALOG is not set
    5.54 +# CONFIG_INPUT_A3D is not set
    5.55 +# CONFIG_INPUT_ADI is not set
    5.56 +# CONFIG_INPUT_COBRA is not set
    5.57 +# CONFIG_INPUT_GF2K is not set
    5.58 +# CONFIG_INPUT_GRIP is not set
    5.59 +# CONFIG_INPUT_INTERACT is not set
    5.60 +# CONFIG_INPUT_TMDC is not set
    5.61 +# CONFIG_INPUT_SIDEWINDER is not set
    5.62  # CONFIG_INPUT_IFORCE_USB is not set
    5.63 +# CONFIG_INPUT_IFORCE_232 is not set
    5.64 +# CONFIG_INPUT_WARRIOR is not set
    5.65 +# CONFIG_INPUT_MAGELLAN is not set
    5.66 +# CONFIG_INPUT_SPACEORB is not set
    5.67 +# CONFIG_INPUT_SPACEBALL is not set
    5.68 +# CONFIG_INPUT_STINGER is not set
    5.69  # CONFIG_INPUT_DB9 is not set
    5.70  # CONFIG_INPUT_GAMECON is not set
    5.71  # CONFIG_INPUT_TURBOGRAFX is not set
    5.72  # CONFIG_QIC02_TAPE is not set
    5.73  # CONFIG_IPMI_HANDLER is not set
    5.74 +# CONFIG_IPMI_PANIC_EVENT is not set
    5.75 +# CONFIG_IPMI_DEVICE_INTERFACE is not set
    5.76 +# CONFIG_IPMI_KCS is not set
    5.77 +# CONFIG_IPMI_WATCHDOG is not set
    5.78  
    5.79  #
    5.80  # Watchdog Cards
    5.81 @@ -212,6 +243,7 @@ CONFIG_PSMOUSE=y
    5.82  # CONFIG_SCx200_GPIO is not set
    5.83  # CONFIG_AMD_RNG is not set
    5.84  # CONFIG_INTEL_RNG is not set
    5.85 +# CONFIG_HW_RANDOM is not set
    5.86  # CONFIG_AMD_PM768 is not set
    5.87  # CONFIG_NVRAM is not set
    5.88  # CONFIG_RTC is not set
    5.89 @@ -224,6 +256,10 @@ CONFIG_PSMOUSE=y
    5.90  #
    5.91  # CONFIG_FTAPE is not set
    5.92  # CONFIG_AGP is not set
    5.93 +
    5.94 +#
    5.95 +# Direct Rendering Manager (XFree86 DRI support)
    5.96 +#
    5.97  # CONFIG_DRM is not set
    5.98  # CONFIG_MWAVE is not set
    5.99  
   5.100 @@ -231,9 +267,20 @@ CONFIG_PSMOUSE=y
   5.101  # File systems
   5.102  #
   5.103  # CONFIG_QUOTA is not set
   5.104 +# CONFIG_QFMT_V2 is not set
   5.105  CONFIG_AUTOFS_FS=y
   5.106  CONFIG_AUTOFS4_FS=y
   5.107  # CONFIG_REISERFS_FS is not set
   5.108 +# CONFIG_REISERFS_CHECK is not set
   5.109 +# CONFIG_REISERFS_PROC_INFO is not set
   5.110 +# CONFIG_ADFS_FS is not set
   5.111 +# CONFIG_ADFS_FS_RW is not set
   5.112 +# CONFIG_AFFS_FS is not set
   5.113 +# CONFIG_HFS_FS is not set
   5.114 +# CONFIG_HFSPLUS_FS is not set
   5.115 +# CONFIG_BEFS_FS is not set
   5.116 +# CONFIG_BEFS_DEBUG is not set
   5.117 +# CONFIG_BFS_FS is not set
   5.118  CONFIG_EXT3_FS=y
   5.119  CONFIG_JBD=y
   5.120  # CONFIG_JBD_DEBUG is not set
   5.121 @@ -241,6 +288,7 @@ CONFIG_FAT_FS=y
   5.122  CONFIG_MSDOS_FS=y
   5.123  CONFIG_UMSDOS_FS=y
   5.124  CONFIG_VFAT_FS=y
   5.125 +# CONFIG_EFS_FS is not set
   5.126  # CONFIG_JFFS_FS is not set
   5.127  # CONFIG_JFFS2_FS is not set
   5.128  # CONFIG_CRAMFS is not set
   5.129 @@ -250,33 +298,53 @@ CONFIG_ISO9660_FS=y
   5.130  CONFIG_JOLIET=y
   5.131  CONFIG_ZISOFS=y
   5.132  # CONFIG_JFS_FS is not set
   5.133 +# CONFIG_JFS_DEBUG is not set
   5.134 +# CONFIG_JFS_STATISTICS is not set
   5.135  # CONFIG_MINIX_FS is not set
   5.136  # CONFIG_VXFS_FS is not set
   5.137  # CONFIG_NTFS_FS is not set
   5.138 +# CONFIG_NTFS_RW is not set
   5.139  # CONFIG_HPFS_FS is not set
   5.140  CONFIG_PROC_FS=y
   5.141 +# CONFIG_DEVFS_FS is not set
   5.142 +# CONFIG_DEVFS_MOUNT is not set
   5.143 +# CONFIG_DEVFS_DEBUG is not set
   5.144  CONFIG_DEVPTS_FS=y
   5.145  # CONFIG_QNX4FS_FS is not set
   5.146 +# CONFIG_QNX4FS_RW is not set
   5.147  # CONFIG_ROMFS_FS is not set
   5.148  CONFIG_EXT2_FS=y
   5.149  # CONFIG_SYSV_FS is not set
   5.150  # CONFIG_UDF_FS is not set
   5.151 +# CONFIG_UDF_RW is not set
   5.152  # CONFIG_UFS_FS is not set
   5.153 +# CONFIG_UFS_FS_WRITE is not set
   5.154  
   5.155  #
   5.156  # Network File Systems
   5.157  #
   5.158  # CONFIG_CODA_FS is not set
   5.159 +# CONFIG_INTERMEZZO_FS is not set
   5.160  CONFIG_NFS_FS=y
   5.161  CONFIG_NFS_V3=y
   5.162 +# CONFIG_NFS_DIRECTIO is not set
   5.163  CONFIG_ROOT_NFS=y
   5.164  CONFIG_NFSD=y
   5.165  CONFIG_NFSD_V3=y
   5.166 +# CONFIG_NFSD_TCP is not set
   5.167  CONFIG_SUNRPC=y
   5.168  CONFIG_LOCKD=y
   5.169  CONFIG_LOCKD_V4=y
   5.170  # CONFIG_SMB_FS is not set
   5.171  # CONFIG_NCP_FS is not set
   5.172 +# CONFIG_NCPFS_PACKET_SIGNING is not set
   5.173 +# CONFIG_NCPFS_IOCTL_LOCKING is not set
   5.174 +# CONFIG_NCPFS_STRONG is not set
   5.175 +# CONFIG_NCPFS_NFS_NS is not set
   5.176 +# CONFIG_NCPFS_OS2_NS is not set
   5.177 +# CONFIG_NCPFS_SMALLDOS is not set
   5.178 +# CONFIG_NCPFS_NLS is not set
   5.179 +# CONFIG_NCPFS_EXTRAS is not set
   5.180  CONFIG_ZISOFS_FS=y
   5.181  
   5.182  #
   5.183 @@ -288,12 +356,12 @@ CONFIG_PARTITION_ADVANCED=y
   5.184  # CONFIG_AMIGA_PARTITION is not set
   5.185  # CONFIG_ATARI_PARTITION is not set
   5.186  # CONFIG_MAC_PARTITION is not set
   5.187 -CONFIG_XENO_PARTITION=y
   5.188  CONFIG_MSDOS_PARTITION=y
   5.189  # CONFIG_BSD_DISKLABEL is not set
   5.190  # CONFIG_MINIX_SUBPARTITION is not set
   5.191  # CONFIG_SOLARIS_X86_PARTITION is not set
   5.192  # CONFIG_UNIXWARE_DISKLABEL is not set
   5.193 +# CONFIG_LDM_PARTITION is not set
   5.194  # CONFIG_SGI_PARTITION is not set
   5.195  # CONFIG_ULTRIX_PARTITION is not set
   5.196  # CONFIG_SUN_PARTITION is not set
   5.197 @@ -367,6 +435,7 @@ CONFIG_KALLSYMS=y
   5.198  # ACPI Support
   5.199  #
   5.200  # CONFIG_ACPI is not set
   5.201 +CONFIG_LOG_BUF_SHIFT=0
   5.202  
   5.203  #
   5.204  # Cryptographic options
     6.1 --- a/xenolinux-2.4.22-sparse/arch/xeno/kernel/irq.c	Tue Dec 16 15:55:22 2003 +0000
     6.2 +++ b/xenolinux-2.4.22-sparse/arch/xeno/kernel/irq.c	Fri Dec 19 14:38:09 2003 +0000
     6.3 @@ -32,6 +32,7 @@
     6.4  #include <linux/kernel_stat.h>
     6.5  #include <linux/irq.h>
     6.6  #include <linux/proc_fs.h>
     6.7 +#include <linux/seq_file.h>
     6.8  
     6.9  #include <asm/atomic.h>
    6.10  #include <asm/io.h>
    6.11 @@ -113,55 +114,55 @@ atomic_t irq_mis_count;
    6.12   * Generic, controller-independent functions:
    6.13   */
    6.14  
    6.15 -int get_irq_list(char *buf)
    6.16 +int show_interrupts(struct seq_file *p, void *v)
    6.17  {
    6.18  	int i, j;
    6.19  	struct irqaction * action;
    6.20 -	char *p = buf;
    6.21  
    6.22 -	p += sprintf(p, "           ");
    6.23 +	seq_printf(p, "           ");
    6.24  	for (j=0; j<smp_num_cpus; j++)
    6.25 -		p += sprintf(p, "CPU%d       ",j);
    6.26 -	*p++ = '\n';
    6.27 +		seq_printf(p, "CPU%d       ",j);
    6.28 +	seq_putc(p,'\n');
    6.29  
    6.30  	for (i = 0 ; i < NR_IRQS ; i++) {
    6.31  		action = irq_desc[i].action;
    6.32  		if (!action) 
    6.33  			continue;
    6.34 -		p += sprintf(p, "%3d: ",i);
    6.35 +		seq_printf(p, "%3d: ",i);
    6.36  #ifndef CONFIG_SMP
    6.37 -		p += sprintf(p, "%10u ", kstat_irqs(i));
    6.38 +		seq_printf(p, "%10u ", kstat_irqs(i));
    6.39  #else
    6.40  		for (j = 0; j < smp_num_cpus; j++)
    6.41 -			p += sprintf(p, "%10u ",
    6.42 +			seq_printf(p, "%10u ",
    6.43  				kstat.irqs[cpu_logical_map(j)][i]);
    6.44  #endif
    6.45 -		p += sprintf(p, " %14s", irq_desc[i].handler->typename);
    6.46 -		p += sprintf(p, "  %s", action->name);
    6.47 +		seq_printf(p, " %14s", irq_desc[i].handler->typename);
    6.48 +		seq_printf(p, "  %s", action->name);
    6.49  
    6.50  		for (action=action->next; action; action = action->next)
    6.51 -			p += sprintf(p, ", %s", action->name);
    6.52 -		*p++ = '\n';
    6.53 +			seq_printf(p, ", %s", action->name);
    6.54 +		seq_putc(p,'\n');
    6.55  	}
    6.56 -	p += sprintf(p, "NMI: ");
    6.57 +	seq_printf(p, "NMI: ");
    6.58  	for (j = 0; j < smp_num_cpus; j++)
    6.59 -		p += sprintf(p, "%10u ",
    6.60 +		seq_printf(p, "%10u ",
    6.61  			nmi_count(cpu_logical_map(j)));
    6.62 -	p += sprintf(p, "\n");
    6.63 +	seq_printf(p, "\n");
    6.64  #if CONFIG_X86_LOCAL_APIC
    6.65 -	p += sprintf(p, "LOC: ");
    6.66 +	seq_printf(p, "LOC: ");
    6.67  	for (j = 0; j < smp_num_cpus; j++)
    6.68 -		p += sprintf(p, "%10u ",
    6.69 +		seq_printf(p, "%10u ",
    6.70  			apic_timer_irqs[cpu_logical_map(j)]);
    6.71 -	p += sprintf(p, "\n");
    6.72 +	seq_printf(p, "\n");
    6.73  #endif
    6.74 -	p += sprintf(p, "ERR: %10u\n", atomic_read(&irq_err_count));
    6.75 +	seq_printf(p, "ERR: %10u\n", atomic_read(&irq_err_count));
    6.76  #ifdef CONFIG_X86_IO_APIC
    6.77  #ifdef APIC_MISMATCH_DEBUG
    6.78 -	p += sprintf(p, "MIS: %10u\n", atomic_read(&irq_mis_count));
    6.79 +	seq_printf(p, "MIS: %10u\n", atomic_read(&irq_mis_count));
    6.80  #endif
    6.81  #endif
    6.82 -	return p - buf;
    6.83 +
    6.84 +	return 0;
    6.85  }
    6.86  
    6.87  
    6.88 @@ -957,7 +958,7 @@ int setup_irq(unsigned int irq, struct i
    6.89  
    6.90  	if (!shared) {
    6.91  		desc->depth = 0;
    6.92 -		desc->status &= ~(IRQ_DISABLED | IRQ_AUTODETECT | IRQ_WAITING);
    6.93 +		desc->status &= ~(IRQ_DISABLED | IRQ_AUTODETECT | IRQ_WAITING | IRQ_INPROGRESS);
    6.94  		desc->handler->startup(irq);
    6.95  	}
    6.96  	spin_unlock_irqrestore(&desc->lock,flags);
     7.1 --- a/xenolinux-2.4.22-sparse/arch/xeno/kernel/setup.c	Tue Dec 16 15:55:22 2003 +0000
     7.2 +++ b/xenolinux-2.4.22-sparse/arch/xeno/kernel/setup.c	Fri Dec 19 14:38:09 2003 +0000
     7.3 @@ -707,6 +707,23 @@ static int __init have_cpuid_p(void)
     7.4  
     7.5  
     7.6  
     7.7 +#if defined(CONFIG_EDD) || defined(CONFIG_EDD_MODULE)
     7.8 +unsigned char eddnr;
     7.9 +struct edd_info edd[EDDMAXNR];
    7.10 +/**
    7.11 + * copy_edd() - Copy the BIOS EDD information
    7.12 + *              from empty_zero_page into a safe place.
    7.13 + *
    7.14 + */
    7.15 +static inline void copy_edd(void)
    7.16 +{
    7.17 +     eddnr = EDD_NR;
    7.18 +     memcpy(edd, EDD_BUF, sizeof(edd));
    7.19 +}
    7.20 +#else
    7.21 +static inline void copy_edd(void) {}
    7.22 +#endif
    7.23 +
    7.24  /*
    7.25   * This does the hard work of actually picking apart the CPU stuff...
    7.26   */
    7.27 @@ -742,11 +759,17 @@ void __init identify_cpu(struct cpuinfo_
    7.28  
    7.29          /* Intel-defined flags: level 0x00000001 */
    7.30          if ( c->cpuid_level >= 0x00000001 ) {
    7.31 -            cpuid(0x00000001, &tfms, &junk, &junk,
    7.32 -                  &c->x86_capability[0]);
    7.33 -            c->x86 = (tfms >> 8) & 15;
    7.34 -            c->x86_model = (tfms >> 4) & 15;
    7.35 -            c->x86_mask = tfms & 15;
    7.36 +                        u32 capability, excap;
    7.37 +                        cpuid(0x00000001, &tfms, &junk, &excap, &capability);
    7.38 +                        c->x86_capability[0] = capability;
    7.39 +                        c->x86_capability[4] = excap;
    7.40 +                        c->x86 = (tfms >> 8) & 15;
    7.41 +                        c->x86_model = (tfms >> 4) & 15;
    7.42 +                        if (c->x86 == 0xf) {
    7.43 +                                c->x86 += (tfms >> 20) & 0xff;
    7.44 +                                c->x86_model += ((tfms >> 16) & 0xF) << 4;
    7.45 +                        }
    7.46 +                        c->x86_mask = tfms & 15;
    7.47          } else {
    7.48              /* Have CPUID level 0 only - unheard of */
    7.49              c->x86 = 4;
    7.50 @@ -891,12 +914,12 @@ static int show_cpuinfo(struct seq_file 
    7.51          "fpu", "vme", "de", "pse", "tsc", "msr", "pae", "mce",
    7.52          "cx8", "apic", NULL, "sep", "mtrr", "pge", "mca", "cmov",
    7.53          "pat", "pse36", "pn", "clflush", NULL, "dts", "acpi", "mmx",
    7.54 -        "fxsr", "sse", "sse2", "ss", NULL, "tm", "ia64", NULL,
    7.55 +        "fxsr", "sse", "sse2", "ss", "ht", "tm", "ia64", "pbe",
    7.56  
    7.57          /* AMD-defined */
    7.58          NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL,
    7.59          NULL, NULL, NULL, "syscall", NULL, NULL, NULL, NULL,
    7.60 -        NULL, NULL, NULL, NULL, NULL, NULL, "mmxext", NULL,
    7.61 +        NULL, NULL, NULL, "mp", NULL, NULL, "mmxext", NULL,
    7.62          NULL, NULL, NULL, NULL, NULL, "lm", "3dnowext", "3dnow",
    7.63  
    7.64          /* Transmeta-defined */
    7.65 @@ -906,10 +929,24 @@ static int show_cpuinfo(struct seq_file 
    7.66          NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL,
    7.67  
    7.68          /* Other (Linux-defined) */
    7.69 -        "cxmmx", "k6_mtrr", "cyrix_arr", "centaur_mcr", NULL, NULL, NULL, NULL,
    7.70 +        "cxmmx", "k6_mtrr", "cyrix_arr", "centaur_mcr", 
    7.71 +	NULL, NULL, NULL, NULL,
    7.72          NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL,
    7.73          NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL,
    7.74          NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL,
    7.75 +
    7.76 +        /* Intel-defined (#2) */
    7.77 +        "pni", NULL, NULL, "monitor", "ds_cpl", NULL, NULL, "tm2",
    7.78 +        "est", NULL, "cid", NULL, NULL, NULL, NULL, NULL,
    7.79 +        NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL,
    7.80 +        NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL,
    7.81 +
    7.82 +        /* VIA/Cyrix/Centaur-defined */
    7.83 +        NULL, NULL, "xstore", NULL, NULL, NULL, NULL, NULL,
    7.84 +        NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL,
    7.85 +        NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL,
    7.86 +        NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL,
    7.87 +
    7.88      };
    7.89      struct cpuinfo_x86 *c = v;
    7.90      int i, n = c - cpu_data;
     8.1 --- a/xenolinux-2.4.22-sparse/arch/xeno/mm/ioremap.c	Tue Dec 16 15:55:22 2003 +0000
     8.2 +++ b/xenolinux-2.4.22-sparse/arch/xeno/mm/ioremap.c	Fri Dec 19 14:38:09 2003 +0000
     8.3 @@ -149,7 +149,7 @@ void * __ioremap(unsigned long machine_a
     8.4      /* Mappings have to be page-aligned */
     8.5      offset = machine_addr & ~PAGE_MASK;
     8.6      machine_addr &= PAGE_MASK;
     8.7 -    size = PAGE_ALIGN(last_addr) - machine_addr;
     8.8 +    size = PAGE_ALIGN(last_addr+1) - machine_addr;
     8.9  
    8.10      /* Ok, go for it */
    8.11      area = get_vm_area(size, VM_IOREMAP);
     9.1 --- a/xenolinux-2.4.22-sparse/drivers/block/ll_rw_blk.c	Tue Dec 16 15:55:22 2003 +0000
     9.2 +++ b/xenolinux-2.4.22-sparse/drivers/block/ll_rw_blk.c	Fri Dec 19 14:38:09 2003 +0000
     9.3 @@ -121,6 +121,10 @@ int * max_sectors[MAX_BLKDEV];
     9.4  unsigned long blk_max_low_pfn, blk_max_pfn;
     9.5  int blk_nohighio = 0;
     9.6  
     9.7 +int block_dump = 0;
     9.8 +
     9.9 +static struct timer_list writeback_timer;
    9.10 +
    9.11  static inline int get_max_sectors(kdev_t dev)
    9.12  {
    9.13  	if (!max_sectors[MAJOR(dev)])
    9.14 @@ -1293,6 +1297,9 @@ void submit_bh(int rw, struct buffer_hea
    9.15  	if (waitqueue_active(&bh->b_wait))
    9.16  		wake_up(&bh->b_wait);
    9.17  
    9.18 +	if (block_dump)
    9.19 +		printk(KERN_DEBUG "%s: %s block %lu/%u on %s\n", current->comm, rw == WRITE ? "WRITE" : "READ", bh->b_rsector, count, kdevname(bh->b_rdev));
    9.20 +
    9.21  	put_bh(bh);
    9.22  	switch (rw) {
    9.23  		case WRITE:
    9.24 @@ -1413,6 +1420,11 @@ sorry:
    9.25  extern int stram_device_init (void);
    9.26  #endif
    9.27  
    9.28 +static void blk_writeback_timer(unsigned long data)
    9.29 +{
    9.30 +	wakeup_bdflush();
    9.31 +	wakeup_kupdate();
    9.32 +}
    9.33  
    9.34  /**
    9.35   * end_that_request_first - end I/O on one buffer.
    9.36 @@ -1469,10 +1481,18 @@ int end_that_request_first (struct reque
    9.37  	return 0;
    9.38  }
    9.39  
    9.40 +extern int laptop_mode;
    9.41 +
    9.42  void end_that_request_last(struct request *req)
    9.43  {
    9.44  	struct completion *waiting = req->waiting;
    9.45  
    9.46 +	/*
    9.47 +	 * schedule the writeout of pending dirty data when the disk is idle
    9.48 +	 */
    9.49 +	if (laptop_mode && req->cmd == READ)
    9.50 +		mod_timer(&writeback_timer, jiffies + 5 * HZ);
    9.51 +
    9.52  	req_finished_io(req);
    9.53  	blkdev_release_request(req);
    9.54  	if (waiting)
    9.55 @@ -1500,6 +1520,9 @@ int __init blk_dev_init(void)
    9.56  	blk_max_low_pfn = max_low_pfn - 1;
    9.57  	blk_max_pfn = max_pfn - 1;
    9.58  
    9.59 +	init_timer(&writeback_timer);
    9.60 +	writeback_timer.function = blk_writeback_timer;
    9.61 +
    9.62  #ifdef CONFIG_AMIGA_Z2RAM
    9.63  	z2_init();
    9.64  #endif
    10.1 --- a/xenolinux-2.4.22-sparse/drivers/char/mem.c	Tue Dec 16 15:55:22 2003 +0000
    10.2 +++ b/xenolinux-2.4.22-sparse/drivers/char/mem.c	Fri Dec 19 14:38:09 2003 +0000
    10.3 @@ -35,6 +35,7 @@
    10.4  #include <linux/raw.h>
    10.5  #include <linux/tty.h>
    10.6  #include <linux/capability.h>
    10.7 +#include <linux/ptrace.h>
    10.8  
    10.9  #include <asm/uaccess.h>
   10.10  #include <asm/io.h>
   10.11 @@ -536,16 +537,23 @@ static loff_t null_lseek(struct file * f
   10.12   */
   10.13  static loff_t memory_lseek(struct file * file, loff_t offset, int orig)
   10.14  {
   10.15 +	loff_t ret;
   10.16 +
   10.17  	switch (orig) {
   10.18  		case 0:
   10.19  			file->f_pos = offset;
   10.20 -			return file->f_pos;
   10.21 +			ret = file->f_pos;
   10.22 +			force_successful_syscall_return();
   10.23 +			break;
   10.24  		case 1:
   10.25  			file->f_pos += offset;
   10.26 -			return file->f_pos;
   10.27 +			ret = file->f_pos;
   10.28 +			force_successful_syscall_return();
   10.29 +			break;
   10.30  		default:
   10.31 -			return -EINVAL;
   10.32 +			ret = -EINVAL;
   10.33  	}
   10.34 +	return ret;
   10.35  }
   10.36  
   10.37  static int open_port(struct inode * inode, struct file * filp)
    11.1 --- a/xenolinux-2.4.22-sparse/drivers/char/tty_io.c	Tue Dec 16 15:55:22 2003 +0000
    11.2 +++ b/xenolinux-2.4.22-sparse/drivers/char/tty_io.c	Fri Dec 19 14:38:09 2003 +0000
    11.3 @@ -158,6 +158,7 @@ extern void tub3270_init(void);
    11.4  extern void rs285_console_init(void);
    11.5  extern void sa1100_rs_console_init(void);
    11.6  extern void sgi_serial_console_init(void);
    11.7 +extern void sn_sal_serial_console_init(void);
    11.8  extern void sci_console_init(void);
    11.9  extern void dec_serial_console_init(void);
   11.10  extern void tx3912_console_init(void);
   11.11 @@ -458,8 +459,6 @@ void do_tty_hangup(void *data)
   11.12  		redirect = NULL;
   11.13  	}
   11.14  	spin_unlock(&redirect_lock);
   11.15 -	if (f)
   11.16 -		fput(f);
   11.17  	
   11.18  	check_tty_count(tty, "do_tty_hangup");
   11.19  	file_list_lock();
   11.20 @@ -546,6 +545,8 @@ void do_tty_hangup(void *data)
   11.21  	} else if (tty->driver.hangup)
   11.22  		(tty->driver.hangup)(tty);
   11.23  	unlock_kernel();
   11.24 +	if (f)
   11.25 +		fput(f);
   11.26  }
   11.27  
   11.28  void tty_hangup(struct tty_struct * tty)
   11.29 @@ -1052,7 +1053,7 @@ static void release_mem(struct tty_struc
   11.30  		}
   11.31  		o_tty->magic = 0;
   11.32  		(*o_tty->driver.refcount)--;
   11.33 -		list_del(&o_tty->tty_files);
   11.34 +		list_del_init(&o_tty->tty_files);
   11.35  		free_tty_struct(o_tty);
   11.36  	}
   11.37  
   11.38 @@ -1064,7 +1065,7 @@ static void release_mem(struct tty_struc
   11.39  	}
   11.40  	tty->magic = 0;
   11.41  	(*tty->driver.refcount)--;
   11.42 -	list_del(&tty->tty_files);
   11.43 +	list_del_init(&tty->tty_files);
   11.44  	free_tty_struct(tty);
   11.45  }
   11.46  
   11.47 @@ -2400,6 +2401,12 @@ void __init tty_init(void)
   11.48  	kbd_init();
   11.49  #endif
   11.50  
   11.51 +#ifdef CONFIG_SGI_L1_SERIAL_CONSOLE
   11.52 +	if (ia64_platform_is("sn2")) {
   11.53 +		sn_sal_serial_console_init();
   11.54 +		return; /* only one console right now for SN2 */
   11.55 +	}
   11.56 +#endif
   11.57  #ifdef CONFIG_ESPSERIAL  /* init ESP before rs, so rs doesn't see the port */
   11.58  	espserial_init();
   11.59  #endif
    12.1 --- a/xenolinux-2.4.22-sparse/fs/exec.c	Tue Dec 16 15:55:22 2003 +0000
    12.2 +++ b/xenolinux-2.4.22-sparse/fs/exec.c	Fri Dec 19 14:38:09 2003 +0000
    12.3 @@ -50,6 +50,7 @@
    12.4  
    12.5  int core_uses_pid;
    12.6  char core_pattern[65] = "core";
    12.7 +int core_setuid_ok = 0;
    12.8  /* The maximal length of core_pattern is also specified in sysctl.c */ 
    12.9  
   12.10  static struct linux_binfmt *formats;
   12.11 @@ -426,11 +427,6 @@ static int exec_mmap(void)
   12.12  	struct mm_struct * mm, * old_mm;
   12.13  
   12.14  	old_mm = current->mm;
   12.15 -	if (old_mm && atomic_read(&old_mm->mm_users) == 1) {
   12.16 -		mm_release();
   12.17 -		exit_mmap(old_mm);
   12.18 -		return 0;
   12.19 -	}
   12.20  
   12.21  	mm = mm_alloc();
   12.22  	if (mm) {
   12.23 @@ -1105,13 +1101,18 @@ int do_coredump(long signr, struct pt_re
   12.24  	struct file * file;
   12.25  	struct inode * inode;
   12.26  	int retval = 0;
   12.27 +	int fsuid = current->fsuid;
   12.28  
   12.29  	lock_kernel();
   12.30  	binfmt = current->binfmt;
   12.31  	if (!binfmt || !binfmt->core_dump)
   12.32  		goto fail;
   12.33  	if (!is_dumpable(current))
   12.34 -		goto fail;
   12.35 +	{
   12.36 +		if(!core_setuid_ok || !current->task_dumpable)
   12.37 +			goto fail;
   12.38 +		current->fsuid = 0;
   12.39 +	}
   12.40  	current->mm->dumpable = 0;
   12.41  	if (current->rlim[RLIMIT_CORE].rlim_cur < binfmt->min_coredump)
   12.42  		goto fail;
   12.43 @@ -1140,6 +1141,8 @@ int do_coredump(long signr, struct pt_re
   12.44  close_fail:
   12.45  	filp_close(file, NULL);
   12.46  fail:
   12.47 +	if (fsuid != current->fsuid)
   12.48 +		current->fsuid = fsuid;
   12.49  	unlock_kernel();
   12.50  	return retval;
   12.51  }
    13.1 --- a/xenolinux-2.4.22-sparse/init/do_mounts.c	Tue Dec 16 15:55:22 2003 +0000
    13.2 +++ b/xenolinux-2.4.22-sparse/init/do_mounts.c	Fri Dec 19 14:38:09 2003 +0000
    13.3 @@ -370,6 +370,7 @@ retry:
    13.4  				flags |= MS_RDONLY;
    13.5  				goto retry;
    13.6  			case -EINVAL:
    13.7 +		        case -EBUSY:
    13.8  				continue;
    13.9  		}
   13.10  	        /*
    14.1 --- a/xenolinux-2.4.22-sparse/kernel/panic.c	Tue Dec 16 15:55:22 2003 +0000
    14.2 +++ b/xenolinux-2.4.22-sparse/kernel/panic.c	Fri Dec 19 14:38:09 2003 +0000
    14.3 @@ -16,6 +16,7 @@
    14.4  #include <linux/init.h>
    14.5  #include <linux/sysrq.h>
    14.6  #include <linux/interrupt.h>
    14.7 +#include <linux/console.h>
    14.8  
    14.9  asmlinkage void sys_sync(void);	/* it's really int */
   14.10  
   14.11 @@ -31,6 +32,8 @@ static int __init panic_setup(char *str)
   14.12  
   14.13  __setup("panic=", panic_setup);
   14.14  
   14.15 +int machine_paniced; 
   14.16 +
   14.17  /**
   14.18   *	panic - halt the system
   14.19   *	@fmt: The text string to print
   14.20 @@ -49,6 +52,11 @@ NORET_TYPE void panic(const char * fmt, 
   14.21          unsigned long caller = (unsigned long) __builtin_return_address(0);
   14.22  #endif
   14.23  
   14.24 +#ifdef CONFIG_VT
   14.25 +	disable_console_blank();
   14.26 +#endif
   14.27 +	machine_paniced = 1;
   14.28 +	
   14.29  	bust_spinlocks(1);
   14.30  	va_start(args, fmt);
   14.31  	vsprintf(buf, fmt, args);
    15.1 --- a/xenolinux-2.4.22-sparse/kernel/printk.c	Tue Dec 16 15:55:22 2003 +0000
    15.2 +++ b/xenolinux-2.4.22-sparse/kernel/printk.c	Fri Dec 19 14:38:09 2003 +0000
    15.3 @@ -29,6 +29,7 @@
    15.4  
    15.5  #include <asm/uaccess.h>
    15.6  
    15.7 +#if !defined(CONFIG_LOG_BUF_SHIFT) || (CONFIG_LOG_BUF_SHIFT == 0)
    15.8  #if defined(CONFIG_MULTIQUAD) || defined(CONFIG_IA64)
    15.9  #define LOG_BUF_LEN	(65536)
   15.10  #elif defined(CONFIG_ARCH_S390)
   15.11 @@ -38,6 +39,9 @@
   15.12  #else	
   15.13  #define LOG_BUF_LEN	(16384)			/* This must be a power of two */
   15.14  #endif
   15.15 +#else /* CONFIG_LOG_BUF_SHIFT */
   15.16 +#define LOG_BUF_LEN (1 << CONFIG_LOG_BUF_SHIFT)
   15.17 +#endif
   15.18  
   15.19  #define LOG_BUF_MASK	(LOG_BUF_LEN-1)
   15.20  
    16.1 --- a/xenolinux-2.4.22-sparse/mm/memory.c	Tue Dec 16 15:55:22 2003 +0000
    16.2 +++ b/xenolinux-2.4.22-sparse/mm/memory.c	Fri Dec 19 14:38:09 2003 +0000
    16.3 @@ -1326,7 +1326,8 @@ static int do_no_page(struct mm_struct *
    16.4  	 */
    16.5  	/* Only go through if we didn't race with anybody else... */
    16.6  	if (pte_none(*page_table)) {
    16.7 -		++mm->rss;
    16.8 +		if (!PageReserved(new_page))
    16.9 +			++mm->rss;
   16.10  		flush_page_to_ram(new_page);
   16.11  		flush_icache_page(vma, new_page);
   16.12  		entry = mk_pte(new_page, vma->vm_page_prot);
   16.13 @@ -1463,6 +1464,7 @@ pmd_t *__pmd_alloc(struct mm_struct *mm,
   16.14  		 */
   16.15  		if (!pgd_none(*pgd)) {
   16.16  			pmd_free(new);
   16.17 +			check_pgt_cache();
   16.18  			goto out;
   16.19  		}
   16.20  	}
   16.21 @@ -1498,6 +1500,7 @@ pte_t *pte_alloc(struct mm_struct *mm, p
   16.22  			 */
   16.23  			if (!pmd_none(*pmd)) {
   16.24  				pte_free(new);
   16.25 +				check_pgt_cache();
   16.26  				goto out;
   16.27  			}
   16.28  		}
    17.1 --- a/xenolinux-2.4.22-sparse/mm/mprotect.c	Tue Dec 16 15:55:22 2003 +0000
    17.2 +++ b/xenolinux-2.4.22-sparse/mm/mprotect.c	Fri Dec 19 14:38:09 2003 +0000
    17.3 @@ -275,7 +275,7 @@ asmlinkage long sys_mprotect(unsigned lo
    17.4  	len = PAGE_ALIGN(len);
    17.5  	end = start + len;
    17.6  	if (end < start)
    17.7 -		return -EINVAL;
    17.8 +		return -ENOMEM;
    17.9  	if (prot & ~(PROT_READ | PROT_WRITE | PROT_EXEC))
   17.10  		return -EINVAL;
   17.11  	if (end == start)