Skip to content

Commit

Permalink
[SCSI] Merge up to linux-2.6 head
Browse files Browse the repository at this point in the history
Conflicts:

	drivers/scsi/jazz_esp.c

Same changes made by both SCSI and SPARC trees: problem with UTF-8
conversion in the copyright.

Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com>
  • Loading branch information
James Bottomley committed May 31, 2007
2 parents 6edae70 + 3f0a676 commit 5bc6579
Show file tree
Hide file tree
Showing 1,042 changed files with 45,286 additions and 7,328 deletions.
49 changes: 30 additions & 19 deletions Documentation/CodingStyle
Original file line number Diff line number Diff line change
Expand Up @@ -495,29 +495,40 @@ re-formatting you may want to take a look at the man page. But
remember: "indent" is not a fix for bad programming.


Chapter 10: Configuration-files
Chapter 10: Kconfig configuration files

For configuration options (arch/xxx/Kconfig, and all the Kconfig files),
somewhat different indentation is used.
For all of the Kconfig* configuration files throughout the source tree,
the indentation is somewhat different. Lines under a "config" definition
are indented with one tab, while help text is indented an additional two
spaces. Example:

Help text is indented with 2 spaces.

if CONFIG_EXPERIMENTAL
tristate CONFIG_BOOM
default n
help
Apply nitroglycerine inside the keyboard (DANGEROUS)
bool CONFIG_CHEER
depends on CONFIG_BOOM
default y
config AUDIT
bool "Auditing support"
depends on NET
help
Output nice messages when you explode
endif
Enable auditing infrastructure that can be used with another
kernel subsystem, such as SELinux (which requires this for
logging of avc messages output). Does not do system-call
auditing without CONFIG_AUDITSYSCALL.

Features that might still be considered unstable should be defined as
dependent on "EXPERIMENTAL":

config SLUB
depends on EXPERIMENTAL && !ARCH_USES_SLAB_PAGE_STRUCT
bool "SLUB (Unqueued Allocator)"
...

while seriously dangerous features (such as write support for certain
filesystems) should advertise this prominently in their prompt string:

config ADFS_FS_RW
bool "ADFS write support (DANGEROUS)"
depends on ADFS_FS
...

Generally, CONFIG_EXPERIMENTAL should surround all options not considered
stable. All options that are known to trash data (experimental write-
support for file-systems, for instance) should be denoted (DANGEROUS), other
experimental options should be denoted (EXPERIMENTAL).
For full documentation on the configuration files, see the file
Documentation/kbuild/kconfig-language.txt.


Chapter 11: Data structures
Expand Down
2 changes: 1 addition & 1 deletion Documentation/DocBook/gadget.tmpl
Original file line number Diff line number Diff line change
Expand Up @@ -52,7 +52,7 @@

<toc></toc>

<chapter><title>Introduction</title>
<chapter id="intro"><title>Introduction</title>

<para>This document presents a Linux-USB "Gadget"
kernel mode
Expand Down
123 changes: 78 additions & 45 deletions Documentation/DocBook/kernel-locking.tmpl
Original file line number Diff line number Diff line change
Expand Up @@ -551,10 +551,12 @@
<function>spin_lock_irqsave()</function>, which is a superset
of all other spinlock primitives.
</para>

<table>
<title>Table of Locking Requirements</title>
<tgroup cols="11">
<tbody>

<row>
<entry></entry>
<entry>IRQ Handler A</entry>
Expand All @@ -576,97 +578,128 @@

<row>
<entry>IRQ Handler B</entry>
<entry>spin_lock_irqsave</entry>
<entry>SLIS</entry>
<entry>None</entry>
</row>

<row>
<entry>Softirq A</entry>
<entry>spin_lock_irq</entry>
<entry>spin_lock_irq</entry>
<entry>spin_lock</entry>
<entry>SLI</entry>
<entry>SLI</entry>
<entry>SL</entry>
</row>

<row>
<entry>Softirq B</entry>
<entry>spin_lock_irq</entry>
<entry>spin_lock_irq</entry>
<entry>spin_lock</entry>
<entry>spin_lock</entry>
<entry>SLI</entry>
<entry>SLI</entry>
<entry>SL</entry>
<entry>SL</entry>
</row>

<row>
<entry>Tasklet A</entry>
<entry>spin_lock_irq</entry>
<entry>spin_lock_irq</entry>
<entry>spin_lock</entry>
<entry>spin_lock</entry>
<entry>SLI</entry>
<entry>SLI</entry>
<entry>SL</entry>
<entry>SL</entry>
<entry>None</entry>
</row>

<row>
<entry>Tasklet B</entry>
<entry>spin_lock_irq</entry>
<entry>spin_lock_irq</entry>
<entry>spin_lock</entry>
<entry>spin_lock</entry>
<entry>spin_lock</entry>
<entry>SLI</entry>
<entry>SLI</entry>
<entry>SL</entry>
<entry>SL</entry>
<entry>SL</entry>
<entry>None</entry>
</row>

<row>
<entry>Timer A</entry>
<entry>spin_lock_irq</entry>
<entry>spin_lock_irq</entry>
<entry>spin_lock</entry>
<entry>spin_lock</entry>
<entry>spin_lock</entry>
<entry>spin_lock</entry>
<entry>SLI</entry>
<entry>SLI</entry>
<entry>SL</entry>
<entry>SL</entry>
<entry>SL</entry>
<entry>SL</entry>
<entry>None</entry>
</row>

<row>
<entry>Timer B</entry>
<entry>spin_lock_irq</entry>
<entry>spin_lock_irq</entry>
<entry>spin_lock</entry>
<entry>spin_lock</entry>
<entry>spin_lock</entry>
<entry>spin_lock</entry>
<entry>spin_lock</entry>
<entry>SLI</entry>
<entry>SLI</entry>
<entry>SL</entry>
<entry>SL</entry>
<entry>SL</entry>
<entry>SL</entry>
<entry>SL</entry>
<entry>None</entry>
</row>

<row>
<entry>User Context A</entry>
<entry>spin_lock_irq</entry>
<entry>spin_lock_irq</entry>
<entry>spin_lock_bh</entry>
<entry>spin_lock_bh</entry>
<entry>spin_lock_bh</entry>
<entry>spin_lock_bh</entry>
<entry>spin_lock_bh</entry>
<entry>spin_lock_bh</entry>
<entry>SLI</entry>
<entry>SLI</entry>
<entry>SLBH</entry>
<entry>SLBH</entry>
<entry>SLBH</entry>
<entry>SLBH</entry>
<entry>SLBH</entry>
<entry>SLBH</entry>
<entry>None</entry>
</row>

<row>
<entry>User Context B</entry>
<entry>SLI</entry>
<entry>SLI</entry>
<entry>SLBH</entry>
<entry>SLBH</entry>
<entry>SLBH</entry>
<entry>SLBH</entry>
<entry>SLBH</entry>
<entry>SLBH</entry>
<entry>DI</entry>
<entry>None</entry>
</row>

</tbody>
</tgroup>
</table>

<table>
<title>Legend for Locking Requirements Table</title>
<tgroup cols="2">
<tbody>

<row>
<entry>SLIS</entry>
<entry>spin_lock_irqsave</entry>
</row>
<row>
<entry>SLI</entry>
<entry>spin_lock_irq</entry>
<entry>spin_lock_irq</entry>
<entry>spin_lock_bh</entry>
<entry>spin_lock_bh</entry>
<entry>spin_lock_bh</entry>
<entry>spin_lock_bh</entry>
<entry>spin_lock_bh</entry>
</row>
<row>
<entry>SL</entry>
<entry>spin_lock</entry>
</row>
<row>
<entry>SLBH</entry>
<entry>spin_lock_bh</entry>
</row>
<row>
<entry>DI</entry>
<entry>down_interruptible</entry>
<entry>None</entry>
</row>

</tbody>
</tgroup>
</table>

</sect1>
</chapter>

Expand Down
28 changes: 14 additions & 14 deletions Documentation/DocBook/usb.tmpl
Original file line number Diff line number Diff line change
Expand Up @@ -185,7 +185,7 @@

</chapter>

<chapter><title>USB-Standard Types</title>
<chapter id="types"><title>USB-Standard Types</title>

<para>In <filename>&lt;linux/usb/ch9.h&gt;</filename> you will find
the USB data types defined in chapter 9 of the USB specification.
Expand All @@ -197,7 +197,7 @@

</chapter>

<chapter><title>Host-Side Data Types and Macros</title>
<chapter id="hostside"><title>Host-Side Data Types and Macros</title>

<para>The host side API exposes several layers to drivers, some of
which are more necessary than others.
Expand All @@ -211,7 +211,7 @@

</chapter>

<chapter><title>USB Core APIs</title>
<chapter id="usbcore"><title>USB Core APIs</title>

<para>There are two basic I/O models in the USB API.
The most elemental one is asynchronous: drivers submit requests
Expand Down Expand Up @@ -248,7 +248,7 @@
!Edrivers/usb/core/hub.c
</chapter>

<chapter><title>Host Controller APIs</title>
<chapter id="hcd"><title>Host Controller APIs</title>

<para>These APIs are only for use by host controller drivers,
most of which implement standard register interfaces such as
Expand Down Expand Up @@ -285,7 +285,7 @@
!Idrivers/usb/core/buffer.c
</chapter>

<chapter>
<chapter id="usbfs">
<title>The USB Filesystem (usbfs)</title>

<para>This chapter presents the Linux <emphasis>usbfs</emphasis>.
Expand Down Expand Up @@ -317,7 +317,7 @@
not it has a kernel driver.
</para>

<sect1>
<sect1 id="usbfs-files">
<title>What files are in "usbfs"?</title>

<para>Conventionally mounted at
Expand Down Expand Up @@ -356,7 +356,7 @@

</sect1>

<sect1>
<sect1 id="usbfs-fstab">
<title>Mounting and Access Control</title>

<para>There are a number of mount options for usbfs, which will
Expand Down Expand Up @@ -439,7 +439,7 @@

</sect1>

<sect1>
<sect1 id="usbfs-devices">
<title>/proc/bus/usb/devices</title>

<para>This file is handy for status viewing tools in user
Expand Down Expand Up @@ -473,7 +473,7 @@ for (;;) {
</para>
</sect1>

<sect1>
<sect1 id="usbfs-bbbddd">
<title>/proc/bus/usb/BBB/DDD</title>

<para>Use these files in one of these basic ways:
Expand Down Expand Up @@ -510,7 +510,7 @@ for (;;) {
</sect1>


<sect1>
<sect1 id="usbfs-lifecycle">
<title>Life Cycle of User Mode Drivers</title>

<para>Such a driver first needs to find a device file
Expand Down Expand Up @@ -565,7 +565,7 @@ for (;;) {

</sect1>

<sect1><title>The ioctl() Requests</title>
<sect1 id="usbfs-ioctl"><title>The ioctl() Requests</title>

<para>To use these ioctls, you need to include the following
headers in your userspace program:
Expand Down Expand Up @@ -604,7 +604,7 @@ for (;;) {
</para>


<sect2>
<sect2 id="usbfs-mgmt">
<title>Management/Status Requests</title>

<para>A number of usbfs requests don't deal very directly
Expand Down Expand Up @@ -736,7 +736,7 @@ usbdev_ioctl (int fd, int ifno, unsigned request, void *param)

</sect2>

<sect2>
<sect2 id="usbfs-sync">
<title>Synchronous I/O Support</title>

<para>Synchronous requests involve the kernel blocking
Expand Down Expand Up @@ -865,7 +865,7 @@ usbdev_ioctl (int fd, int ifno, unsigned request, void *param)
</variablelist>
</sect2>

<sect2>
<sect2 id="usbfs-async">
<title>Asynchronous I/O Support</title>

<para>As mentioned above, there are situations where it may be
Expand Down
Loading

0 comments on commit 5bc6579

Please sign in to comment.