Skip to content

Commit

Permalink
---
Browse files Browse the repository at this point in the history
yaml
---
r: 25007
b: refs/heads/master
c: 5b67e8d
h: refs/heads/master
i:
  25005: 6b1fd9f
  25003: 4d8b7ee
  24999: 41d2dbc
  24991: a62f1db
v: v3
  • Loading branch information
Linus Torvalds committed Apr 1, 2006
1 parent 1358f7e commit 7e3ee42
Show file tree
Hide file tree
Showing 1,807 changed files with 66,124 additions and 37,444 deletions.
2 changes: 1 addition & 1 deletion [refs]
Original file line number Diff line number Diff line change
@@ -1,2 +1,2 @@
---
refs/heads/master: cc3d48db75235adf0ae37d3287f6f9e14657d1ae
refs/heads/master: 5b67e8dd5ae889fea7d01b905a570fa9a37b8785
9 changes: 6 additions & 3 deletions trunk/CREDITS
Original file line number Diff line number Diff line change
Expand Up @@ -1127,8 +1127,10 @@ S: Carnegie, Pennsylvania 15106-4304
S: USA

N: Philip Gladstone
E: philip@raptor.com
E: philip@gladstonefamily.net
D: Kernel / timekeeping stuff
S: Carlisle, MA 01741
S: USA

N: Jan-Benedict Glaw
E: jbglaw@lug-owl.de
Expand Down Expand Up @@ -3741,10 +3743,11 @@ D: Mylex DAC960 PCI RAID driver
D: Miscellaneous kernel fixes

N: Alessandro Zummo
E: azummo@ita.flashnet.it
W: http://freepage.logicom.it/azummo/
E: a.zummo@towertech.it
D: CMI8330 support is sb_card.c
D: ISAPnP fixes in sb_card.c
D: ZyXEL omni.net lcd plus driver
D: RTC subsystem
S: Italy

N: Marc Zyngier
Expand Down
2 changes: 2 additions & 0 deletions trunk/Documentation/DMA-mapping.txt
Original file line number Diff line number Diff line change
Expand Up @@ -199,6 +199,8 @@ address during PCI bus mastering you might do something like:
"mydev: 24-bit DMA addressing not available.\n");
goto ignore_this_device;
}
[Better use DMA_24BIT_MASK instead of 0x00ffffff.
See linux/include/dma-mapping.h for reference.]

When pci_set_dma_mask() is successful, and returns zero, the PCI layer
saves away this mask you have provided. The PCI layer will use this
Expand Down
47 changes: 43 additions & 4 deletions trunk/Documentation/DocBook/libata.tmpl
Original file line number Diff line number Diff line change
Expand Up @@ -120,14 +120,27 @@ void (*dev_config) (struct ata_port *, struct ata_device *);
<programlisting>
void (*set_piomode) (struct ata_port *, struct ata_device *);
void (*set_dmamode) (struct ata_port *, struct ata_device *);
void (*post_set_mode) (struct ata_port *ap);
void (*post_set_mode) (struct ata_port *);
unsigned int (*mode_filter) (struct ata_port *, struct ata_device *, unsigned int);
</programlisting>

<para>
Hooks called prior to the issue of SET FEATURES - XFER MODE
command. dev->pio_mode is guaranteed to be valid when
->set_piomode() is called, and dev->dma_mode is guaranteed to be
valid when ->set_dmamode() is called. ->post_set_mode() is
command. The optional ->mode_filter() hook is called when libata
has built a mask of the possible modes. This is passed to the
->mode_filter() function which should return a mask of valid modes
after filtering those unsuitable due to hardware limits. It is not
valid to use this interface to add modes.
</para>
<para>
dev->pio_mode and dev->dma_mode are guaranteed to be valid when
->set_piomode() and when ->set_dmamode() is called. The timings for
any other drive sharing the cable will also be valid at this point.
That is the library records the decisions for the modes of each
drive on a channel before it attempts to set any of them.
</para>
<para>
->post_set_mode() is
called unconditionally, after the SET FEATURES - XFER MODE
command completes successfully.
</para>
Expand Down Expand Up @@ -230,6 +243,32 @@ void (*dev_select)(struct ata_port *ap, unsigned int device);

</sect2>

<sect2><title>Private tuning method</title>
<programlisting>
void (*set_mode) (struct ata_port *ap);
</programlisting>

<para>
By default libata performs drive and controller tuning in
accordance with the ATA timing rules and also applies blacklists
and cable limits. Some controllers need special handling and have
custom tuning rules, typically raid controllers that use ATA
commands but do not actually do drive timing.
</para>

<warning>
<para>
This hook should not be used to replace the standard controller
tuning logic when a controller has quirks. Replacing the default
tuning logic in that case would bypass handling for drive and
bridge quirks that may be important to data reliability. If a
controller needs to filter the mode selection it should use the
mode_filter hook instead.
</para>
</warning>

</sect2>

<sect2><title>Reset ATA bus</title>
<programlisting>
void (*phy_reset) (struct ata_port *ap);
Expand Down
2 changes: 1 addition & 1 deletion trunk/Documentation/RCU/whatisRCU.txt
Original file line number Diff line number Diff line change
Expand Up @@ -605,7 +605,7 @@ are the same as those shown in the preceding section, so they are omitted.
{
int cpu;

for_each_cpu(cpu)
for_each_possible_cpu(cpu)
run_on(cpu);
}

Expand Down
14 changes: 12 additions & 2 deletions trunk/Documentation/block/biodoc.txt
Original file line number Diff line number Diff line change
Expand Up @@ -132,8 +132,18 @@ Some new queue property settings:
limit. No highmem default.

blk_queue_max_sectors(q, max_sectors)
Maximum size request you can handle in units of 512 byte
sectors. 255 default.
Sets two variables that limit the size of the request.

- The request queue's max_sectors, which is a soft size in
in units of 512 byte sectors, and could be dynamically varied
by the core kernel.

- The request queue's max_hw_sectors, which is a hard limit
and reflects the maximum size request a driver can handle
in units of 512 byte sectors.

The default for both max_sectors and max_hw_sectors is
255. The upper limit of max_sectors is 1024.

blk_queue_max_phys_segments(q, max_segments)
Maximum physical segments you can handle in a request. 128
Expand Down
21 changes: 21 additions & 0 deletions trunk/Documentation/cachetlb.txt
Original file line number Diff line number Diff line change
Expand Up @@ -362,6 +362,27 @@ maps this page at its virtual address.
likely that you will need to flush the instruction cache
for copy_to_user_page().

void flush_anon_page(struct page *page, unsigned long vmaddr)
When the kernel needs to access the contents of an anonymous
page, it calls this function (currently only
get_user_pages()). Note: flush_dcache_page() deliberately
doesn't work for an anonymous page. The default
implementation is a nop (and should remain so for all coherent
architectures). For incoherent architectures, it should flush
the cache of the page at vmaddr in the current user process.

void flush_kernel_dcache_page(struct page *page)
When the kernel needs to modify a user page is has obtained
with kmap, it calls this function after all modifications are
complete (but before kunmapping it) to bring the underlying
page up to date. It is assumed here that the user has no
incoherent cached copies (i.e. the original page was obtained
from a mechanism like get_user_pages()). The default
implementation is a nop and should remain so on all coherent
architectures. On incoherent architectures, this should flush
the kernel cache for page (using page_address(page)).


void flush_icache_range(unsigned long start, unsigned long end)
When the kernel stores into addresses that it will execute
out of (eg when loading modules), this function is called.
Expand Down
4 changes: 2 additions & 2 deletions trunk/Documentation/cpu-hotplug.txt
Original file line number Diff line number Diff line change
Expand Up @@ -97,13 +97,13 @@ at which time hotplug is disabled.

You really dont need to manipulate any of the system cpu maps. They should
be read-only for most use. When setting up per-cpu resources almost always use
cpu_possible_map/for_each_cpu() to iterate.
cpu_possible_map/for_each_possible_cpu() to iterate.

Never use anything other than cpumask_t to represent bitmap of CPUs.

#include <linux/cpumask.h>

for_each_cpu - Iterate over cpu_possible_map
for_each_possible_cpu - Iterate over cpu_possible_map
for_each_online_cpu - Iterate over cpu_online_map
for_each_present_cpu - Iterate over cpu_present_map
for_each_cpu_mask(x,mask) - Iterate over some random collection of cpu mask.
Expand Down
4 changes: 2 additions & 2 deletions trunk/Documentation/cputopology.txt
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@

Export cpu topology info by sysfs. Items (attributes) are similar
Export cpu topology info via sysfs. Items (attributes) are similar
to /proc/cpuinfo.

1) /sys/devices/system/cpu/cpuX/topology/physical_package_id:
Expand All @@ -12,7 +12,7 @@ represent the thread siblings to cpu X in the same core;
represent the thread siblings to cpu X in the same physical package;

To implement it in an architecture-neutral way, a new source file,
driver/base/topology.c, is to export the 5 attributes.
drivers/base/topology.c, is to export the 4 attributes.

If one architecture wants to support this feature, it just needs to
implement 4 defines, typically in file include/asm-XXX/topology.h.
Expand Down
34 changes: 17 additions & 17 deletions trunk/Documentation/drivers/edac/edac.txt
Original file line number Diff line number Diff line change
Expand Up @@ -21,21 +21,21 @@ within the computer system. In the initial release, memory Correctable Errors

Detecting CE events, then harvesting those events and reporting them,
CAN be a predictor of future UE events. With CE events, the system can
continue to operate, but with less safety. Preventive maintainence and
continue to operate, but with less safety. Preventive maintenance and
proactive part replacement of memory DIMMs exhibiting CEs can reduce
the likelihood of the dreaded UE events and system 'panics'.


In addition, PCI Bus Parity and SERR Errors are scanned for on PCI devices
in order to determine if errors are occurring on data transfers.
The presence of PCI Parity errors must be examined with a grain of salt.
There are several addin adapters that do NOT follow the PCI specification
There are several add-in adapters that do NOT follow the PCI specification
with regards to Parity generation and reporting. The specification says
the vendor should tie the parity status bits to 0 if they do not intend
to generate parity. Some vendors do not do this, and thus the parity bit
can "float" giving false positives.

The PCI Parity EDAC device has the ability to "skip" known flakey
The PCI Parity EDAC device has the ability to "skip" known flaky
cards during the parity scan. These are set by the parity "blacklist"
interface in the sysfs for PCI Parity. (See the PCI section in the sysfs
section below.) There is also a parity "whitelist" which is used as
Expand Down Expand Up @@ -101,7 +101,7 @@ Memory Controller (mc) Model

First a background on the memory controller's model abstracted in EDAC.
Each mc device controls a set of DIMM memory modules. These modules are
layed out in a Chip-Select Row (csrowX) and Channel table (chX). There can
laid out in a Chip-Select Row (csrowX) and Channel table (chX). There can
be multiple csrows and two channels.

Memory controllers allow for several csrows, with 8 csrows being a typical value.
Expand Down Expand Up @@ -131,7 +131,7 @@ for memory DIMMs:
DIMM_B1

Labels for these slots are usually silk screened on the motherboard. Slots
labeled 'A' are channel 0 in this example. Slots labled 'B'
labeled 'A' are channel 0 in this example. Slots labeled 'B'
are channel 1. Notice that there are two csrows possible on a
physical DIMM. These csrows are allocated their csrow assignment
based on the slot into which the memory DIMM is placed. Thus, when 1 DIMM
Expand All @@ -140,7 +140,7 @@ is placed in each Channel, the csrows cross both DIMMs.
Memory DIMMs come single or dual "ranked". A rank is a populated csrow.
Thus, 2 single ranked DIMMs, placed in slots DIMM_A0 and DIMM_B0 above
will have 1 csrow, csrow0. csrow1 will be empty. On the other hand,
when 2 dual ranked DIMMs are similiaryly placed, then both csrow0 and
when 2 dual ranked DIMMs are similarly placed, then both csrow0 and
csrow1 will be populated. The pattern repeats itself for csrow2 and
csrow3.

Expand Down Expand Up @@ -246,7 +246,7 @@ Module Version read-only attribute file:

'mc_version'

The EDAC CORE modules's version and compile date are shown here to
The EDAC CORE module's version and compile date are shown here to
indicate what EDAC is running.


Expand Down Expand Up @@ -423,7 +423,7 @@ Total memory managed by this csrow attribute file:
'size_mb'

This attribute file displays, in count of megabytes, of memory
that this csrow contatins.
that this csrow contains.


Memory Type attribute file:
Expand Down Expand Up @@ -557,7 +557,7 @@ On Header Type 00 devices the primary status is looked at
for any parity error regardless of whether Parity is enabled on the
device. (The spec indicates parity is generated in some cases).
On Header Type 01 bridges, the secondary status register is also
looked at to see if parity ocurred on the bus on the other side of
looked at to see if parity occurred on the bus on the other side of
the bridge.


Expand Down Expand Up @@ -588,7 +588,7 @@ Panic on PCI PARITY Error:
'panic_on_pci_parity'


This control files enables or disables panic'ing when a parity
This control files enables or disables panicking when a parity
error has been detected.


Expand Down Expand Up @@ -616,12 +616,12 @@ PCI Device Whitelist:

This control file allows for an explicit list of PCI devices to be
scanned for parity errors. Only devices found on this list will
be examined. The list is a line of hexadecimel VENDOR and DEVICE
be examined. The list is a line of hexadecimal VENDOR and DEVICE
ID tuples:

1022:7450,1434:16a6

One or more can be inserted, seperated by a comma.
One or more can be inserted, separated by a comma.

To write the above list doing the following as one command line:

Expand All @@ -639,26 +639,26 @@ PCI Device Blacklist:

This control file allows for a list of PCI devices to be
skipped for scanning.
The list is a line of hexadecimel VENDOR and DEVICE ID tuples:
The list is a line of hexadecimal VENDOR and DEVICE ID tuples:

1022:7450,1434:16a6

One or more can be inserted, seperated by a comma.
One or more can be inserted, separated by a comma.

To write the above list doing the following as one command line:

echo "1022:7450,1434:16a6"
> /sys/devices/system/edac/pci/pci_parity_blacklist


To display what the whitelist current contatins,
To display what the whitelist currently contains,
simply 'cat' the same file.

=======================================================================

PCI Vendor and Devices IDs can be obtained with the lspci command. Using
the -n option lspci will display the vendor and device IDs. The system
adminstrator will have to determine which devices should be scanned or
administrator will have to determine which devices should be scanned or
skipped.


Expand All @@ -669,5 +669,5 @@ Turn OFF a whitelist by an empty echo command:

echo > /sys/devices/system/edac/pci/pci_parity_whitelist

and any previous blacklist will be utililzed.
and any previous blacklist will be utilized.

19 changes: 12 additions & 7 deletions trunk/Documentation/feature-removal-schedule.txt
Original file line number Diff line number Diff line change
Expand Up @@ -127,13 +127,6 @@ Who: Christoph Hellwig <hch@lst.de>

---------------------------

What: EXPORT_SYMBOL(lookup_hash)
When: January 2006
Why: Too low-level interface. Use lookup_one_len or lookup_create instead.
Who: Christoph Hellwig <hch@lst.de>

---------------------------

What: CONFIG_FORCED_INLINING
When: June 2006
Why: Config option is there to see if gcc is good enough. (in january
Expand Down Expand Up @@ -241,3 +234,15 @@ Why: The USB subsystem has changed a lot over time, and it has been
Who: Greg Kroah-Hartman <gregkh@suse.de>

---------------------------

What: find_trylock_page
When: January 2007
Why: The interface no longer has any callers left in the kernel. It
is an odd interface (compared with other find_*_page functions), in
that it does not take a refcount to the page, only the page lock.
It should be replaced with find_get_page or find_lock_page if possible.
This feature removal can be reevaluated if users of the interface
cannot cleanly use something else.
Who: Nick Piggin <npiggin@suse.de>

---------------------------
Loading

0 comments on commit 7e3ee42

Please sign in to comment.