aboutsummaryrefslogtreecommitdiffstats
path: root/Documentation/memory.txt
diff options
context:
space:
mode:
authorLinus Torvalds <torvalds@ppc970.osdl.org>2005-04-16 18:20:36 -0400
committerLinus Torvalds <torvalds@ppc970.osdl.org>2005-04-16 18:20:36 -0400
commit1da177e4c3f41524e886b7f1b8a0c1fc7321cac2 (patch)
tree0bba044c4ce775e45a88a51686b5d9f90697ea9d /Documentation/memory.txt
Linux-2.6.12-rc2v2.6.12-rc2
Initial git repository build. I'm not bothering with the full history, even though we have it. We can create a separate "historical" git archive of that later if we want to, and in the meantime it's about 3.2GB when imported into git - space that would just make the early git days unnecessarily complicated, when we don't have a lot of good infrastructure for it. Let it rip!
Diffstat (limited to 'Documentation/memory.txt')
-rw-r--r--Documentation/memory.txt60
1 files changed, 60 insertions, 0 deletions
diff --git a/Documentation/memory.txt b/Documentation/memory.txt
new file mode 100644
index 000000000000..2b3dedd39538
--- /dev/null
+++ b/Documentation/memory.txt
@@ -0,0 +1,60 @@
1There are several classic problems related to memory on Linux
2systems.
3
4 1) There are some buggy motherboards which cannot properly
5 deal with the memory above 16MB. Consider exchanging
6 your motherboard.
7
8 2) You cannot do DMA on the ISA bus to addresses above
9 16M. Most device drivers under Linux allow the use
10 of bounce buffers which work around this problem. Drivers
11 that don't use bounce buffers will be unstable with
12 more than 16M installed. Drivers that use bounce buffers
13 will be OK, but may have slightly higher overhead.
14
15 3) There are some motherboards that will not cache above
16 a certain quantity of memory. If you have one of these
17 motherboards, your system will be SLOWER, not faster
18 as you add more memory. Consider exchanging your
19 motherboard.
20
21All of these problems can be addressed with the "mem=XXXM" boot option
22(where XXX is the size of RAM to use in megabytes).
23It can also tell Linux to use less memory than is actually installed.
24If you use "mem=" on a machine with PCI, consider using "memmap=" to avoid
25physical address space collisions.
26
27See the documentation of your boot loader (LILO, loadlin, etc.) about
28how to pass options to the kernel.
29
30There are other memory problems which Linux cannot deal with. Random
31corruption of memory is usually a sign of serious hardware trouble.
32Try:
33
34 * Reducing memory settings in the BIOS to the most conservative
35 timings.
36
37 * Adding a cooling fan.
38
39 * Not overclocking your CPU.
40
41 * Having the memory tested in a memory tester or exchanged
42 with the vendor. Consider testing it with memtest86 yourself.
43
44 * Exchanging your CPU, cache, or motherboard for one that works.
45
46 * Disabling the cache from the BIOS.
47
48 * Try passing the "mem=4M" option to the kernel to limit
49 Linux to using a very small amount of memory. Use "memmap="-option
50 together with "mem=" on systems with PCI to avoid physical address
51 space collisions.
52
53
54Other tricks:
55
56 * Try passing the "no-387" option to the kernel to ignore
57 a buggy FPU.
58
59 * Try passing the "no-hlt" option to disable the potentially
60 buggy HLT instruction in your CPU.