Skip to content

Commit

Permalink
---
Browse files Browse the repository at this point in the history
yaml
---
r: 56561
b: refs/heads/master
c: 21051ba
h: refs/heads/master
i:
  56559: c15829b
v: v3
  • Loading branch information
Trond Myklebust authored and Trond Myklebust committed May 14, 2007
1 parent c3c207a commit 1a53883
Show file tree
Hide file tree
Showing 306 changed files with 2,817 additions and 3,758 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: d3a36fb82a0864a85e238ac946817030a18c5f9a
refs/heads/master: 21051ba6259c519e20a7d575ddceb16e84ad2a5d
123 changes: 45 additions & 78 deletions trunk/Documentation/DocBook/kernel-locking.tmpl
Original file line number Diff line number Diff line change
Expand Up @@ -551,12 +551,10 @@
<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 @@ -578,128 +576,97 @@

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

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

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

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

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

<row>
<entry>Timer A</entry>
<entry>SLI</entry>
<entry>SLI</entry>
<entry>SL</entry>
<entry>SL</entry>
<entry>SL</entry>
<entry>SL</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>None</entry>
</row>

<row>
<entry>Timer B</entry>
<entry>SLI</entry>
<entry>SLI</entry>
<entry>SL</entry>
<entry>SL</entry>
<entry>SL</entry>
<entry>SL</entry>
<entry>SL</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>None</entry>
</row>

<row>
<entry>User Context A</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>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>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>
</row>
<row>
<entry>SL</entry>
<entry>spin_lock</entry>
</row>
<row>
<entry>SLBH</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>
</row>
<row>
<entry>DI</entry>
<entry>down_interruptible</entry>
<entry>None</entry>
</row>

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

</sect1>
</chapter>

Expand Down
25 changes: 13 additions & 12 deletions trunk/Documentation/feature-removal-schedule.txt
Original file line number Diff line number Diff line change
Expand Up @@ -328,20 +328,21 @@ Who: Adrian Bunk <bunk@stusta.de>

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

What: libata spindown skipping and warning
What: libata.spindown_compat module parameter
When: Dec 2008
Why: Some halt(8) implementations synchronize caches for and spin
down libata disks because libata didn't use to spin down disk on
system halt (only synchronized caches).
Spin down on system halt is now implemented. sysfs node
/sys/class/scsi_disk/h:c:i:l/manage_start_stop is present if
spin down support is available.
Why: halt(8) synchronizes caches for and spins down libata disks
because libata didn't use to spin down disk on system halt
(only synchronized caches).
Spin down on system halt is now implemented and can be tested
using sysfs node /sys/class/scsi_disk/h:c:i:l/manage_start_stop.
Because issuing spin down command to an already spun down disk
makes some disks spin up just to spin down again, libata tracks
device spindown status to skip the extra spindown command and
warn about it.
This is to give userspace tools the time to get updated and will
be removed after userspace is reasonably updated.
makes some disks spin up just to spin down again, the old
behavior needs to be maintained till userspace tool is updated
to check the sysfs node and not to spin down disks with the
node set to one.
This module parameter is to give userspace tool the time to
get updated and should be removed after userspace is
reasonably updated.
Who: Tejun Heo <htejun@gmail.com>

---------------------------
Expand Down
8 changes: 2 additions & 6 deletions trunk/Documentation/gpio.txt
Original file line number Diff line number Diff line change
Expand Up @@ -111,9 +111,7 @@ setting up a platform_device using the GPIO, is mark its direction:

The return value is zero for success, else a negative errno. It should
be checked, since the get/set calls don't have error returns and since
misconfiguration is possible. You should normally issue these calls from
a task context. However, for spinlock-safe GPIOs it's OK to use them
before tasking is enabled, as part of early board setup.
misconfiguration is possible. (These calls could sleep.)

For output GPIOs, the value provided becomes the initial output value.
This helps avoid signal glitching during system startup.
Expand Down Expand Up @@ -199,9 +197,7 @@ However, many platforms don't currently support this mechanism.

Passing invalid GPIO numbers to gpio_request() will fail, as will requesting
GPIOs that have already been claimed with that call. The return value of
gpio_request() must be checked. You should normally issue these calls from
a task context. However, for spinlock-safe GPIOs it's OK to request GPIOs
before tasking is enabled, as part of early board setup.
gpio_request() must be checked. (These calls could sleep.)

These calls serve two basic purposes. One is marking the signals which
are actually in use as GPIOs, for better diagnostics; systems may have
Expand Down
2 changes: 1 addition & 1 deletion trunk/Documentation/networking/netdevices.txt
Original file line number Diff line number Diff line change
Expand Up @@ -49,7 +49,7 @@ dev->hard_start_xmit:
for this and return -1 when the spin lock fails.
The locking there should also properly protect against
set_multicast_list
Context: Process with BHs disabled or BH (timer).
Context: BHs disabled
Notes: netif_queue_stopped() is guaranteed false
Interrupts must be enabled when calling hard_start_xmit.
(Interrupts must also be enabled when enabling the BH handler.)
Expand Down
17 changes: 5 additions & 12 deletions trunk/Documentation/vm/slabinfo.c
Original file line number Diff line number Diff line change
Expand Up @@ -242,9 +242,6 @@ void decode_numa_list(int *numa, char *t)

memset(numa, 0, MAX_NODES * sizeof(int));

if (!t)
return;

while (*t == 'N') {
t++;
node = strtoul(t, &t, 10);
Expand Down Expand Up @@ -389,9 +386,7 @@ void report(struct slabinfo *s)
{
if (strcmp(s->name, "*") == 0)
return;

printf("\nSlabcache: %-20s Aliases: %2d Order : %2d Objects: %d\n",
s->name, s->aliases, s->order, s->objects);
printf("\nSlabcache: %-20s Aliases: %2d Order : %2d\n", s->name, s->aliases, s->order);
if (s->hwcache_align)
printf("** Hardware cacheline aligned\n");
if (s->cache_dma)
Expand Down Expand Up @@ -796,11 +791,11 @@ void totals(void)

store_size(b1, total_size);store_size(b2, total_waste);
store_size(b3, total_waste * 100 / total_used);
printf("Memory used: %6s # Loss : %6s MRatio:%6s%%\n", b1, b2, b3);
printf("Memory used: %6s # Loss : %6s MRatio: %6s%%\n", b1, b2, b3);

store_size(b1, total_objects);store_size(b2, total_partobj);
store_size(b3, total_partobj * 100 / total_objects);
printf("# Objects : %6s # PartObj: %6s ORatio:%6s%%\n", b1, b2, b3);
printf("# Objects : %6s # PartObj: %6s ORatio: %6s%%\n", b1, b2, b3);

printf("\n");
printf("Per Cache Average Min Max Total\n");
Expand All @@ -823,7 +818,7 @@ void totals(void)
store_size(b1, avg_ppart);store_size(b2, min_ppart);
store_size(b3, max_ppart);
store_size(b4, total_partial * 100 / total_slabs);
printf("%%PartSlab%10s%% %10s%% %10s%% %10s%%\n",
printf("%%PartSlab %10s%% %10s%% %10s%% %10s%%\n",
b1, b2, b3, b4);

store_size(b1, avg_partobj);store_size(b2, min_partobj);
Expand All @@ -835,7 +830,7 @@ void totals(void)
store_size(b1, avg_ppartobj);store_size(b2, min_ppartobj);
store_size(b3, max_ppartobj);
store_size(b4, total_partobj * 100 / total_objects);
printf("%% PartObj%10s%% %10s%% %10s%% %10s%%\n",
printf("%% PartObj %10s%% %10s%% %10s%% %10s%%\n",
b1, b2, b3, b4);

store_size(b1, avg_size);store_size(b2, min_size);
Expand Down Expand Up @@ -1105,8 +1100,6 @@ void output_slabs(void)
ops(slab);
else if (show_slab)
slabcache(slab);
else if (show_report)
report(slab);
}
}

Expand Down
5 changes: 2 additions & 3 deletions trunk/MAINTAINERS
Original file line number Diff line number Diff line change
Expand Up @@ -2689,13 +2689,13 @@ L: i2c@lm-sensors.org
S: Maintained

PARALLEL PORT SUPPORT
L: linux-parport@lists.infradead.org (subscribers-only)
L: linux-parport@lists.infradead.org
S: Orphan

PARIDE DRIVERS FOR PARALLEL PORT IDE DEVICES
P: Tim Waugh
M: tim@cyberelk.net
L: linux-parport@lists.infradead.org (subscribers-only)
L: linux-parport@lists.infradead.org
W: http://www.torque.net/linux-pp.html
S: Maintained

Expand Down Expand Up @@ -3267,7 +3267,6 @@ W: http://tpmdd.sourceforge.net
P: Marcel Selhorst
M: tpm@selhorst.net
W: http://www.prosec.rub.de/tpm/
L: tpmdd-devel@lists.sourceforge.net
S: Maintained

Telecom Clock Driver for MCPL0010
Expand Down
2 changes: 0 additions & 2 deletions trunk/arch/arm/kernel/stacktrace.c
Original file line number Diff line number Diff line change
@@ -1,4 +1,3 @@
#include <linux/module.h>
#include <linux/sched.h>
#include <linux/stacktrace.h>

Expand Down Expand Up @@ -31,7 +30,6 @@ int walk_stackframe(unsigned long fp, unsigned long low, unsigned long high,

return 0;
}
EXPORT_SYMBOL(walk_stackframe);

#ifdef CONFIG_STACKTRACE
struct stack_trace_data {
Expand Down
15 changes: 0 additions & 15 deletions trunk/arch/avr32/boards/atstk1000/atstk1000.h

This file was deleted.

Loading

0 comments on commit 1a53883

Please sign in to comment.