Skip to content

Commit 5c04b42

Browse files
committed
Merge branch 'v3.1-rc10' into for-3.2/core
Conflicts: block/blk-core.c include/linux/blkdev.h Signed-off-by: Jens Axboe <axboe@kernel.dk>
2 parents 499337b + 899e3ee commit 5c04b42

File tree

1,367 files changed

+24058
-15020
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

1,367 files changed

+24058
-15020
lines changed

Documentation/00-INDEX

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -272,6 +272,8 @@ printk-formats.txt
272272
- how to get printk format specifiers right
273273
prio_tree.txt
274274
- info on radix-priority-search-tree use for indexing vmas.
275+
ramoops.txt
276+
- documentation of the ramoops oops/panic logging module.
275277
rbtree.txt
276278
- info on what red-black trees are and what they are for.
277279
robust-futex-ABI.txt
Lines changed: 13 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,13 @@
1+
What: /sys/class/scsi_host/hostX/isci_id
2+
Date: June 2011
3+
Contact: Dave Jiang <dave.jiang@intel.com>
4+
Description:
5+
This file contains the enumerated host ID for the Intel
6+
SCU controller. The Intel(R) C600 Series Chipset SATA/SAS
7+
Storage Control Unit embeds up to two 4-port controllers in
8+
a single PCI device. The controllers are enumerated in order
9+
which usually means the lowest number scsi_host corresponds
10+
with the first controller, but this association is not
11+
guaranteed. The 'isci_id' attribute unambiguously identifies
12+
the controller index: '0' for the first controller,
13+
'1' for the second.

Documentation/DocBook/media/v4l/controls.xml

Lines changed: 19 additions & 19 deletions
Original file line numberDiff line numberDiff line change
@@ -1455,7 +1455,7 @@ Applicable to the H264 encoder.</entry>
14551455
</row>
14561456

14571457
<row><entry></entry></row>
1458-
<row>
1458+
<row id="v4l2-mpeg-video-h264-vui-sar-idc">
14591459
<entry spanname="id"><constant>V4L2_CID_MPEG_VIDEO_H264_VUI_SAR_IDC</constant>&nbsp;</entry>
14601460
<entry>enum&nbsp;v4l2_mpeg_video_h264_vui_sar_idc</entry>
14611461
</row>
@@ -1561,7 +1561,7 @@ Applicable to the H264 encoder.</entry>
15611561
</row>
15621562

15631563
<row><entry></entry></row>
1564-
<row>
1564+
<row id="v4l2-mpeg-video-h264-level">
15651565
<entry spanname="id"><constant>V4L2_CID_MPEG_VIDEO_H264_LEVEL</constant>&nbsp;</entry>
15661566
<entry>enum&nbsp;v4l2_mpeg_video_h264_level</entry>
15671567
</row>
@@ -1641,7 +1641,7 @@ Possible values are:</entry>
16411641
</row>
16421642

16431643
<row><entry></entry></row>
1644-
<row>
1644+
<row id="v4l2-mpeg-video-mpeg4-level">
16451645
<entry spanname="id"><constant>V4L2_CID_MPEG_VIDEO_MPEG4_LEVEL</constant>&nbsp;</entry>
16461646
<entry>enum&nbsp;v4l2_mpeg_video_mpeg4_level</entry>
16471647
</row>
@@ -1689,9 +1689,9 @@ Possible values are:</entry>
16891689
</row>
16901690

16911691
<row><entry></entry></row>
1692-
<row>
1692+
<row id="v4l2-mpeg-video-h264-profile">
16931693
<entry spanname="id"><constant>V4L2_CID_MPEG_VIDEO_H264_PROFILE</constant>&nbsp;</entry>
1694-
<entry>enum&nbsp;v4l2_mpeg_h264_profile</entry>
1694+
<entry>enum&nbsp;v4l2_mpeg_video_h264_profile</entry>
16951695
</row>
16961696
<row><entry spanname="descr">The profile information for H264.
16971697
Applicable to the H264 encoder.
@@ -1774,9 +1774,9 @@ Possible values are:</entry>
17741774
</row>
17751775

17761776
<row><entry></entry></row>
1777-
<row>
1777+
<row id="v4l2-mpeg-video-mpeg4-profile">
17781778
<entry spanname="id"><constant>V4L2_CID_MPEG_VIDEO_MPEG4_PROFILE</constant>&nbsp;</entry>
1779-
<entry>enum&nbsp;v4l2_mpeg_mpeg4_profile</entry>
1779+
<entry>enum&nbsp;v4l2_mpeg_video_mpeg4_profile</entry>
17801780
</row>
17811781
<row><entry spanname="descr">The profile information for MPEG4.
17821782
Applicable to the MPEG4 encoder.
@@ -1820,9 +1820,9 @@ Applicable to the encoder.
18201820
</row>
18211821

18221822
<row><entry></entry></row>
1823-
<row>
1823+
<row id="v4l2-mpeg-video-multi-slice-mode">
18241824
<entry spanname="id"><constant>V4L2_CID_MPEG_VIDEO_MULTI_SLICE_MODE</constant>&nbsp;</entry>
1825-
<entry>enum&nbsp;v4l2_mpeg_multi_slice_mode</entry>
1825+
<entry>enum&nbsp;v4l2_mpeg_video_multi_slice_mode</entry>
18261826
</row>
18271827
<row><entry spanname="descr">Determines how the encoder should handle division of frame into slices.
18281828
Applicable to the encoder.
@@ -1868,9 +1868,9 @@ Applicable to the encoder.</entry>
18681868
</row>
18691869

18701870
<row><entry></entry></row>
1871-
<row>
1871+
<row id="v4l2-mpeg-video-h264-loop-filter-mode">
18721872
<entry spanname="id"><constant>V4L2_CID_MPEG_VIDEO_H264_LOOP_FILTER_MODE</constant>&nbsp;</entry>
1873-
<entry>enum&nbsp;v4l2_mpeg_h264_loop_filter_mode</entry>
1873+
<entry>enum&nbsp;v4l2_mpeg_video_h264_loop_filter_mode</entry>
18741874
</row>
18751875
<row><entry spanname="descr">Loop filter mode for H264 encoder.
18761876
Possible values are:</entry>
@@ -1913,9 +1913,9 @@ Applicable to the H264 encoder.</entry>
19131913
</row>
19141914

19151915
<row><entry></entry></row>
1916-
<row>
1916+
<row id="v4l2-mpeg-video-h264-entropy-mode">
19171917
<entry spanname="id"><constant>V4L2_CID_MPEG_VIDEO_H264_ENTROPY_MODE</constant>&nbsp;</entry>
1918-
<entry>enum&nbsp;v4l2_mpeg_h264_symbol_mode</entry>
1918+
<entry>enum&nbsp;v4l2_mpeg_video_h264_entropy_mode</entry>
19191919
</row>
19201920
<row><entry spanname="descr">Entropy coding mode for H264 - CABAC/CAVALC.
19211921
Applicable to the H264 encoder.
@@ -2140,9 +2140,9 @@ previous frames. Applicable to the H264 encoder.</entry>
21402140
</row>
21412141

21422142
<row><entry></entry></row>
2143-
<row>
2143+
<row id="v4l2-mpeg-video-header-mode">
21442144
<entry spanname="id"><constant>V4L2_CID_MPEG_VIDEO_HEADER_MODE</constant>&nbsp;</entry>
2145-
<entry>enum&nbsp;v4l2_mpeg_header_mode</entry>
2145+
<entry>enum&nbsp;v4l2_mpeg_video_header_mode</entry>
21462146
</row>
21472147
<row><entry spanname="descr">Determines whether the header is returned as the first buffer or is
21482148
it returned together with the first frame. Applicable to encoders.
@@ -2320,9 +2320,9 @@ Valid only when H.264 and macroblock level RC is enabled (<constant>V4L2_CID_MPE
23202320
Applicable to the H264 encoder.</entry>
23212321
</row>
23222322
<row><entry></entry></row>
2323-
<row>
2323+
<row id="v4l2-mpeg-mfc51-video-frame-skip-mode">
23242324
<entry spanname="id"><constant>V4L2_CID_MPEG_MFC51_VIDEO_FRAME_SKIP_MODE</constant>&nbsp;</entry>
2325-
<entry>enum&nbsp;v4l2_mpeg_mfc51_frame_skip_mode</entry>
2325+
<entry>enum&nbsp;v4l2_mpeg_mfc51_video_frame_skip_mode</entry>
23262326
</row>
23272327
<row><entry spanname="descr">
23282328
Indicates in what conditions the encoder should skip frames. If encoding a frame would cause the encoded stream to be larger then
@@ -2361,9 +2361,9 @@ the stream will meet tight bandwidth contraints. Applicable to encoders.
23612361
</entry>
23622362
</row>
23632363
<row><entry></entry></row>
2364-
<row>
2364+
<row id="v4l2-mpeg-mfc51-video-force-frame-type">
23652365
<entry spanname="id"><constant>V4L2_CID_MPEG_MFC51_VIDEO_FORCE_FRAME_TYPE</constant>&nbsp;</entry>
2366-
<entry>enum&nbsp;v4l2_mpeg_mfc51_force_frame_type</entry>
2366+
<entry>enum&nbsp;v4l2_mpeg_mfc51_video_force_frame_type</entry>
23672367
</row>
23682368
<row><entry spanname="descr">Force a frame type for the next queued buffer. Applicable to encoders.
23692369
Possible values are:</entry>

Documentation/PCI/MSI-HOWTO.txt

Lines changed: 44 additions & 45 deletions
Original file line numberDiff line numberDiff line change
@@ -45,7 +45,7 @@ arrived in memory (this becomes more likely with devices behind PCI-PCI
4545
bridges). In order to ensure that all the data has arrived in memory,
4646
the interrupt handler must read a register on the device which raised
4747
the interrupt. PCI transaction ordering rules require that all the data
48-
arrives in memory before the value can be returned from the register.
48+
arrive in memory before the value may be returned from the register.
4949
Using MSIs avoids this problem as the interrupt-generating write cannot
5050
pass the data writes, so by the time the interrupt is raised, the driver
5151
knows that all the data has arrived in memory.
@@ -86,13 +86,13 @@ device.
8686

8787
int pci_enable_msi(struct pci_dev *dev)
8888

89-
A successful call will allocate ONE interrupt to the device, regardless
90-
of how many MSIs the device supports. The device will be switched from
89+
A successful call allocates ONE interrupt to the device, regardless
90+
of how many MSIs the device supports. The device is switched from
9191
pin-based interrupt mode to MSI mode. The dev->irq number is changed
92-
to a new number which represents the message signaled interrupt.
93-
This function should be called before the driver calls request_irq()
94-
since enabling MSIs disables the pin-based IRQ and the driver will not
95-
receive interrupts on the old interrupt.
92+
to a new number which represents the message signaled interrupt;
93+
consequently, this function should be called before the driver calls
94+
request_irq(), because an MSI is delivered via a vector that is
95+
different from the vector of a pin-based interrupt.
9696

9797
4.2.2 pci_enable_msi_block
9898

@@ -111,20 +111,20 @@ the device are in the range dev->irq to dev->irq + count - 1.
111111

112112
If this function returns a negative number, it indicates an error and
113113
the driver should not attempt to request any more MSI interrupts for
114-
this device. If this function returns a positive number, it will be
115-
less than 'count' and indicate the number of interrupts that could have
116-
been allocated. In neither case will the irq value have been
117-
updated, nor will the device have been switched into MSI mode.
114+
this device. If this function returns a positive number, it is
115+
less than 'count' and indicates the number of interrupts that could have
116+
been allocated. In neither case is the irq value updated or the device
117+
switched into MSI mode.
118118

119119
The device driver must decide what action to take if
120-
pci_enable_msi_block() returns a value less than the number asked for.
121-
Some devices can make use of fewer interrupts than the maximum they
122-
request; in this case the driver should call pci_enable_msi_block()
120+
pci_enable_msi_block() returns a value less than the number requested.
121+
For instance, the driver could still make use of fewer interrupts;
122+
in this case the driver should call pci_enable_msi_block()
123123
again. Note that it is not guaranteed to succeed, even when the
124124
'count' has been reduced to the value returned from a previous call to
125125
pci_enable_msi_block(). This is because there are multiple constraints
126126
on the number of vectors that can be allocated; pci_enable_msi_block()
127-
will return as soon as it finds any constraint that doesn't allow the
127+
returns as soon as it finds any constraint that doesn't allow the
128128
call to succeed.
129129

130130
4.2.3 pci_disable_msi
@@ -137,10 +137,10 @@ interrupt number and frees the previously allocated message signaled
137137
interrupt(s). The interrupt may subsequently be assigned to another
138138
device, so drivers should not cache the value of dev->irq.
139139

140-
A device driver must always call free_irq() on the interrupt(s)
141-
for which it has called request_irq() before calling this function.
142-
Failure to do so will result in a BUG_ON(), the device will be left with
143-
MSI enabled and will leak its vector.
140+
Before calling this function, a device driver must always call free_irq()
141+
on any interrupt for which it previously called request_irq().
142+
Failure to do so results in a BUG_ON(), leaving the device with
143+
MSI enabled and thus leaking its vector.
144144

145145
4.3 Using MSI-X
146146

@@ -155,10 +155,10 @@ struct msix_entry {
155155
};
156156

157157
This allows for the device to use these interrupts in a sparse fashion;
158-
for example it could use interrupts 3 and 1027 and allocate only a
158+
for example, it could use interrupts 3 and 1027 and yet allocate only a
159159
two-element array. The driver is expected to fill in the 'entry' value
160-
in each element of the array to indicate which entries it wants the kernel
161-
to assign interrupts for. It is invalid to fill in two entries with the
160+
in each element of the array to indicate for which entries the kernel
161+
should assign interrupts; it is invalid to fill in two entries with the
162162
same number.
163163

164164
4.3.1 pci_enable_msix
@@ -168,10 +168,11 @@ int pci_enable_msix(struct pci_dev *dev, struct msix_entry *entries, int nvec)
168168
Calling this function asks the PCI subsystem to allocate 'nvec' MSIs.
169169
The 'entries' argument is a pointer to an array of msix_entry structs
170170
which should be at least 'nvec' entries in size. On success, the
171-
function will return 0 and the device will have been switched into
172-
MSI-X interrupt mode. The 'vector' elements in each entry will have
173-
been filled in with the interrupt number. The driver should then call
174-
request_irq() for each 'vector' that it decides to use.
171+
device is switched into MSI-X mode and the function returns 0.
172+
The 'vector' member in each entry is populated with the interrupt number;
173+
the driver should then call request_irq() for each 'vector' that it
174+
decides to use. The device driver is responsible for keeping track of the
175+
interrupts assigned to the MSI-X vectors so it can free them again later.
175176

176177
If this function returns a negative number, it indicates an error and
177178
the driver should not attempt to allocate any more MSI-X interrupts for
@@ -181,16 +182,14 @@ below.
181182

182183
This function, in contrast with pci_enable_msi(), does not adjust
183184
dev->irq. The device will not generate interrupts for this interrupt
184-
number once MSI-X is enabled. The device driver is responsible for
185-
keeping track of the interrupts assigned to the MSI-X vectors so it can
186-
free them again later.
185+
number once MSI-X is enabled.
187186

188187
Device drivers should normally call this function once per device
189188
during the initialization phase.
190189

191-
It is ideal if drivers can cope with a variable number of MSI-X interrupts,
190+
It is ideal if drivers can cope with a variable number of MSI-X interrupts;
192191
there are many reasons why the platform may not be able to provide the
193-
exact number a driver asks for.
192+
exact number that a driver asks for.
194193

195194
A request loop to achieve that might look like:
196195

@@ -212,15 +211,15 @@ static int foo_driver_enable_msix(struct foo_adapter *adapter, int nvec)
212211

213212
void pci_disable_msix(struct pci_dev *dev)
214213

215-
This API should be used to undo the effect of pci_enable_msix(). It frees
214+
This function should be used to undo the effect of pci_enable_msix(). It frees
216215
the previously allocated message signaled interrupts. The interrupts may
217216
subsequently be assigned to another device, so drivers should not cache
218217
the value of the 'vector' elements over a call to pci_disable_msix().
219218

220-
A device driver must always call free_irq() on the interrupt(s)
221-
for which it has called request_irq() before calling this function.
222-
Failure to do so will result in a BUG_ON(), the device will be left with
223-
MSI enabled and will leak its vector.
219+
Before calling this function, a device driver must always call free_irq()
220+
on any interrupt for which it previously called request_irq().
221+
Failure to do so results in a BUG_ON(), leaving the device with
222+
MSI-X enabled and thus leaking its vector.
224223

225224
4.3.3 The MSI-X Table
226225

@@ -232,10 +231,10 @@ mask or unmask an interrupt, it should call disable_irq() / enable_irq().
232231
4.4 Handling devices implementing both MSI and MSI-X capabilities
233232

234233
If a device implements both MSI and MSI-X capabilities, it can
235-
run in either MSI mode or MSI-X mode but not both simultaneously.
234+
run in either MSI mode or MSI-X mode, but not both simultaneously.
236235
This is a requirement of the PCI spec, and it is enforced by the
237236
PCI layer. Calling pci_enable_msi() when MSI-X is already enabled or
238-
pci_enable_msix() when MSI is already enabled will result in an error.
237+
pci_enable_msix() when MSI is already enabled results in an error.
239238
If a device driver wishes to switch between MSI and MSI-X at runtime,
240239
it must first quiesce the device, then switch it back to pin-interrupt
241240
mode, before calling pci_enable_msi() or pci_enable_msix() and resuming
@@ -251,7 +250,7 @@ the MSI-X facilities in preference to the MSI facilities. As mentioned
251250
above, MSI-X supports any number of interrupts between 1 and 2048.
252251
In constrast, MSI is restricted to a maximum of 32 interrupts (and
253252
must be a power of two). In addition, the MSI interrupt vectors must
254-
be allocated consecutively, so the system may not be able to allocate
253+
be allocated consecutively, so the system might not be able to allocate
255254
as many vectors for MSI as it could for MSI-X. On some platforms, MSI
256255
interrupts must all be targeted at the same set of CPUs whereas MSI-X
257256
interrupts can all be targeted at different CPUs.
@@ -281,7 +280,7 @@ disabled to enabled and back again.
281280

282281
Using 'lspci -v' (as root) may show some devices with "MSI", "Message
283282
Signalled Interrupts" or "MSI-X" capabilities. Each of these capabilities
284-
has an 'Enable' flag which will be followed with either "+" (enabled)
283+
has an 'Enable' flag which is followed with either "+" (enabled)
285284
or "-" (disabled).
286285

287286

@@ -298,7 +297,7 @@ The PCI stack provides three ways to disable MSIs:
298297

299298
Some host chipsets simply don't support MSIs properly. If we're
300299
lucky, the manufacturer knows this and has indicated it in the ACPI
301-
FADT table. In this case, Linux will automatically disable MSIs.
300+
FADT table. In this case, Linux automatically disables MSIs.
302301
Some boards don't include this information in the table and so we have
303302
to detect them ourselves. The complete list of these is found near the
304303
quirk_disable_all_msi() function in drivers/pci/quirks.c.
@@ -317,7 +316,7 @@ Some bridges allow you to enable MSIs by changing some bits in their
317316
PCI configuration space (especially the Hypertransport chipsets such
318317
as the nVidia nForce and Serverworks HT2000). As with host chipsets,
319318
Linux mostly knows about them and automatically enables MSIs if it can.
320-
If you have a bridge which Linux doesn't yet know about, you can enable
319+
If you have a bridge unknown to Linux, you can enable
321320
MSIs in configuration space using whatever method you know works, then
322321
enable MSIs on that bridge by doing:
323322

@@ -327,7 +326,7 @@ where $bridge is the PCI address of the bridge you've enabled (eg
327326
0000:00:0e.0).
328327

329328
To disable MSIs, echo 0 instead of 1. Changing this value should be
330-
done with caution as it can break interrupt handling for all devices
329+
done with caution as it could break interrupt handling for all devices
331330
below this bridge.
332331

333332
Again, please notify linux-pci@vger.kernel.org of any bridges that need
@@ -336,7 +335,7 @@ special handling.
336335
5.3. Disabling MSIs on a single device
337336

338337
Some devices are known to have faulty MSI implementations. Usually this
339-
is handled in the individual device driver but occasionally it's necessary
338+
is handled in the individual device driver, but occasionally it's necessary
340339
to handle this with a quirk. Some drivers have an option to disable use
341340
of MSI. While this is a convenient workaround for the driver author,
342341
it is not good practise, and should not be emulated.
@@ -350,7 +349,7 @@ for your machine. You should also check your .config to be sure you
350349
have enabled CONFIG_PCI_MSI.
351350

352351
Then, 'lspci -t' gives the list of bridges above a device. Reading
353-
/sys/bus/pci/devices/*/msi_bus will tell you whether MSI are enabled (1)
352+
/sys/bus/pci/devices/*/msi_bus will tell you whether MSIs are enabled (1)
354353
or disabled (0). If 0 is found in any of the msi_bus files belonging
355354
to bridges between the PCI root and the device, MSIs are disabled.
356355

Documentation/SubmittingDrivers

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -130,7 +130,7 @@ Linux kernel master tree:
130130
ftp.??.kernel.org:/pub/linux/kernel/...
131131
?? == your country code, such as "us", "uk", "fr", etc.
132132

133-
http://git.kernel.org/?p=linux/kernel/git/torvalds/linux-2.6.git
133+
http://git.kernel.org/?p=linux/kernel/git/torvalds/linux.git
134134

135135
Linux kernel mailing list:
136136
linux-kernel@vger.kernel.org

Documentation/SubmittingPatches

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -303,7 +303,7 @@ patches that are being emailed around.
303303

304304
The sign-off is a simple line at the end of the explanation for the
305305
patch, which certifies that you wrote it or otherwise have the right to
306-
pass it on as a open-source patch. The rules are pretty simple: if you
306+
pass it on as an open-source patch. The rules are pretty simple: if you
307307
can certify the below:
308308

309309
Developer's Certificate of Origin 1.1

0 commit comments

Comments
 (0)