linux-2.6
17 years agoSCTP: Fix to handle invalid parameter length correctly
Wei Yongjun [Mon, 6 Aug 2007 05:55:58 +0000 (13:55 +0800)] 
SCTP: Fix to handle invalid parameter length correctly

If an INIT with invalid parameter length look like this:
Parameter Type : 1
Parameter Length: 800
and not contain any payload, SCTP will ignore this  parameter and send
back a INIT-ACK.
This patch is fix to handle this invalid parameter length correctly.

Signed-off-by: Wei Yongjun <yjwei@cn.fujitsu.com>
Signed-off-by: Vlad Yasevich <vladislav.yasevich@hp.com>
17 years agoSCTP: Abort on COOKIE-ECHO if backlog is exceeded.
Vlad Yasevich [Thu, 30 Aug 2007 18:10:59 +0000 (03:10 +0900)] 
SCTP: Abort on COOKIE-ECHO if backlog is exceeded.

Currently we abort on the INIT chunk we our backlog is currenlty
exceeded.  Delay this about untill COOKIE-ECHO to give the user
time to accept the socket.  Also, make sure that we treat
sk_max_backlog of 0 as no connections allowed.

Signed-off-by: Vlad Yasevich <vladislav.yasevich@hp.com>
17 years agoSCTP: Correctly disable listening when backlog is 0.
Vlad Yasevich [Thu, 30 Aug 2007 18:03:58 +0000 (14:03 -0400)] 
SCTP: Correctly disable listening when backlog is 0.

Signed-off-by: Vlad Yasevich <vladislav.yasevich@hp.com>
17 years agoSCTP: Do not retransmit chunks that are newer then rtt.
Vlad Yasevich [Fri, 24 Aug 2007 10:37:46 +0000 (19:37 +0900)] 
SCTP: Do not retransmit chunks that are newer then rtt.

When performing a retransmit, do not include the chunk if
it was sent less then 1 rtt ago.  The reason is that we
may receive the SACK very soon and wouldn't retransmit.
Suggested by Randy Stewart.

Signed-off-by: Vlad Yasevich <vladislav.yasevich@hp.com>
17 years agoSCTP: Uncomfirmed transports can't become Inactive
Vlad Yasevich [Fri, 24 Aug 2007 10:30:25 +0000 (19:30 +0900)] 
SCTP: Uncomfirmed transports can't become Inactive

Do not set Unconfirmed transports to Inactive state.  This may
result in an inactive association being destroyed since we start
counting errors on "inactive" transports against the association.
This was found at the SCTP interop event.

Signed-off-by: Vlad Yasevich <vladislav.yasevich@hp.com>
17 years agoSCTP: Pick the correct port when binding to 0.
Vlad Yasevich [Tue, 21 Aug 2007 05:24:30 +0000 (14:24 +0900)] 
SCTP: Pick the correct port when binding to 0.

sctp_bindx() allows the use of unspecified port.  The problem is
that every address we bind to ends up selecting a new port if
the user specified port 0.  This patch allows re-use of the
already selected port when the port from bindx was 0.

Signed-off-by: Vlad Yasevich <vladislav.yasevich@hp.com>
17 years agoSCTP: Use net_ratelimit to suppress error messages print too fast
Wei Yongjun [Mon, 27 Aug 2007 03:19:24 +0000 (11:19 +0800)] 
SCTP: Use net_ratelimit to suppress error messages print too fast

When multi bundling SHUTDOWN-ACK message is received in ESTAB state,
this will cause "sctp protocol violation state" message print many times.
If SHUTDOWN-ACK is bundled 300 times in one packet, message will be
print 300 times. The same problem also exists when received unexpected
HEARTBEAT-ACK message which is bundled message times.

This patch used net_ratelimit() to suppress error messages print too fast.

Signed-off-by: Wei Yongjun <yjwei@cn.fujitsu.com>
Signed-off-by: Vlad Yasevich <vladislav.yasevich@hp.com>
17 years agoSCTP: Fix to encode PROTOCOL VIOLATION error cause correctly
Wei Yongjun [Tue, 21 Aug 2007 07:50:01 +0000 (15:50 +0800)] 
SCTP: Fix to encode PROTOCOL VIOLATION error cause correctly

PROTOCOL VIOLATION error cause in ABORT is bad encode when make abort
chunk. When SCTP encode ABORT chunk with PROTOCOL VIOLATION error cause,
it just add the error messages to PROTOCOL VIOLATION error cause, the
rest four bytes(struct sctp_paramhdr) is just add to the chunk, not
change the length of error cause. This cause the ABORT chunk to be a bad
format. The chunk is like this:

ABORT chunk
  Chunk type: ABORT (6)
  Chunk flags: 0x00
  Chunk length: 72 (*1)
  Protocol violation cause
    Cause code: Protocol violation (0x000d)
    Cause length: 62 (*2)
    Cause information: 5468652063756D756C61746976652074736E2061636B2062...
    Cause padding: 0000
[Needless] 00030010
Chunk Length(*1) = 72 but Cause length(*2) only 62, not include the
extend 4 bytes.
((72 - sizeof(chunk_hdr)) = 68) != (62 +3) / 4 * 4

Signed-off-by: Wei Yongjun <yjwei@cn.fujitsu.com>
Signed-off-by: Vlad Yasevich <vladislav.yasevich@hp.com>
17 years agoMerge branch 'merge' of git://git.kernel.org/pub/scm/linux/kernel/git/paulus/powerpc
Linus Torvalds [Thu, 30 Aug 2007 16:58:46 +0000 (09:58 -0700)] 
Merge branch 'merge' of git://git./linux/kernel/git/paulus/powerpc

* 'merge' of git://git.kernel.org/pub/scm/linux/kernel/git/paulus/powerpc:
  [POWERPC] PS3: Fix bug where the major version part is not compared
  [POWERPC] Update defconfigs
  [POWERPC] spufs: Don't call spu_run_init from spu_reacquire_runnable
  [POWERPC] spufs: Fix update of mailbox status register during backed wbox write
  [POWERPC] spu_manage: fix spu_unit_number for celleb device tree
  [POWERPC] Update defconfigs
  [POWERPC] Flush registers to proper task context

17 years agoxtensa process.c must #include <linux/fs.h>
Adrian Bunk [Wed, 29 Aug 2007 23:29:33 +0000 (01:29 +0200)] 
xtensa process.c must #include <linux/fs.h>

Another fallout from the removal of #include <linux/fs.h> from mm.h

Signed-off-by: Adrian Bunk <bunk@kernel.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
17 years agoFix lguest page-pinning logic ("lguest: bad stack page 0xc057a000")
Rusty Russell [Wed, 29 Aug 2007 20:35:08 +0000 (06:35 +1000)] 
Fix lguest page-pinning logic ("lguest: bad stack page 0xc057a000")

If the stack pointer is 0xc057a000, then the first stack page is at
0xc0579000 (the stack pointer is decremented before use).  Not
calculating this correctly caused guests with CONFIG_DEBUG_PAGEALLOC=y
to be killed with a "bad stack page" message: the initial kernel stack
was just proceeding the .smp_locks section which
CONFIG_DEBUG_PAGEALLOC marks read-only when freeing.

Thanks to Frederik Deweerdt for the bug report!

Signed-off-by: Rusty Russell <rusty@rustcorp.com.au>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
17 years agoSCTP: Fix sctp_addto_chunk() to add pad with correct length
Wei Yongjun [Mon, 6 Aug 2007 05:55:47 +0000 (13:55 +0800)] 
SCTP: Fix sctp_addto_chunk() to add pad with correct length

At function sctp_addto_chunk(), it do pad before add payload to chunk if
chunk length is not 4-byte alignment. But it do pad with a bad length.
This patch fixed this probleam.

Signed-off-by: Wei Yongjun <yjwei@cn.fujitsu.com>
Signed-off-by: Vlad Yasevich <vladislav.yasevich@hp.com>
17 years ago[POWERPC] PS3: Fix bug where the major version part is not compared
Masakazu Mokuno [Wed, 29 Aug 2007 11:30:25 +0000 (20:30 +0900)] 
[POWERPC] PS3: Fix bug where the major version part is not compared

Fix the bug that the major version part of the firmware version number
is ignored in the comparison done by ps3_compare_firmware_version
because the difference of two 64-bit quantities is returned as an int.

Signed-off-by: Masakazu Mokuno <mokuno@sm.sony.co.jp>
Acked-by: Geoff Levand <geoffrey.levand@am.sony.com>
Signed-off-by: Paul Mackerras <paulus@samba.org>
17 years ago[ARM] 4561/1: i.MX/MX1 GPIO parenthes omission and input setup fix
Pavel Pisa [Wed, 29 Aug 2007 22:23:38 +0000 (23:23 +0100)] 
[ARM] 4561/1: i.MX/MX1 GPIO parenthes omission and input setup fix

During GPIO testing on PiMX1 board there has been revealed
problem with some pins input functions. The GIUS bit has
to be set for inputs to work reliably too. It is surprising
that input worked on some inputs with incorrect setup before.
DR is not mandatory, but it ensures stable constant level
on internal traces.

Signed-off-by: Pavel Pisa <pisa@cmp.felk.cvut.cz>
Acked-by: Sascha Hauer <s.hauer@pengutronix.de>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
17 years ago[POWERPC] Update defconfigs
Paul Mackerras [Thu, 30 Aug 2007 06:51:51 +0000 (16:51 +1000)] 
[POWERPC] Update defconfigs

Signed-off-by: Paul Mackerras <paulus@samba.org>
17 years ago[POWERPC] spufs: Don't call spu_run_init from spu_reacquire_runnable
Andre Detsch [Tue, 21 Aug 2007 02:06:22 +0000 (10:06 +0800)] 
[POWERPC] spufs: Don't call spu_run_init from spu_reacquire_runnable

This fixes a major bug which was happening when a SPU thread advances
its execution right after being restored to a SPU.  A potentially
outdated NPC value was being (re)written to the SPU.

So, spu_run_init, in this case, was either not doing anything relevant,
or breaking the execution of the SPU thread.

This fixes a common problem of losing a mailbox write when it was done
to a saved context.

Signed-off-by: Andre Detsch <adetsch@br.ibm.com>
Signed-off-by: Jeremy Kerr <jk@ozlabs.org>
Signed-off-by: Paul Mackerras <paulus@samba.org>
17 years ago[POWERPC] spufs: Fix update of mailbox status register during backed wbox write
Arnd Bergmann [Tue, 21 Aug 2007 02:06:22 +0000 (10:06 +0800)] 
[POWERPC] spufs: Fix update of mailbox status register during backed wbox write

When a process writes into the inbound spu mailbox (wbox) while the
context is saved, we accidentally break the contents of the mb_stat_R
register by clearing other entries of the mailbox status register. This
can cause the user side to hang.

This change fixes the problem by only altering the appropriate bits
of the mailbox status register during a backing-store write.

Signed-off-by: Arnd Bergmann <arnd.bergmann@de.ibm.com>
Signed-off-by: Jeremy Kerr <jk@ozlabs.org>
Signed-off-by: Paul Mackerras <paulus@samba.org>
17 years agoInput: psmouse - make dummy touchkit_ps2_detect() static
Adrian Bunk [Thu, 30 Aug 2007 04:44:33 +0000 (00:44 -0400)] 
Input: psmouse - make dummy touchkit_ps2_detect() static

The dummy touchkit_ps2_detect() for the CONFIG_MOUSE_PS2_TOUCHKIT=n case
shouldn't be a global function.

Signed-off-by: Adrian Bunk <bunk@kernel.org>
Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
17 years agoInput: gscps2 - convert to use kzalloc
Mariusz Kozlowski [Thu, 30 Aug 2007 04:18:00 +0000 (00:18 -0400)] 
Input: gscps2 - convert to use kzalloc

Signed-off-by: Mariusz Kozlowski <m.kozlowski@tuxland.pl>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
17 years agoInput: iforce - fix 'unused variable' warning
Andrew Morton [Thu, 30 Aug 2007 04:04:33 +0000 (00:04 -0400)] 
Input: iforce - fix 'unused variable' warning

drivers/input/joystick/iforce/iforce-packets.c: In function `iforce_get_id_packet':
drivers/input/joystick/iforce/iforce-packets.c:249: warning: unused variable `status'

Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
17 years agoInput: i8042 - fix retrun value of i8042_aux_test_irq
Fernando Luis Vázquez Cao [Thu, 30 Aug 2007 04:04:15 +0000 (00:04 -0400)] 
Input: i8042 - fix retrun value of i8042_aux_test_irq

We should not return IRQ_HANDLED if we didn't handle the interrupt.

Signed-off-by: Fernando Luis Vazquez Cao <fernando@oss.ntt.co.jp>
Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
17 years ago[POWERPC] spu_manage: fix spu_unit_number for celleb device tree
Christian Krafft [Wed, 29 Aug 2007 23:33:53 +0000 (01:33 +0200)] 
[POWERPC] spu_manage: fix spu_unit_number for celleb device tree

This fixes a regression introduced with 2.6.23-rc4 after on some
confusion about the device tree interfaces.

IBM QS21 device trees provide "physical-id", so we changed the code to
run on that and remain compatible with all IBM machines.

However, the Toshiba Celleb device tree provides the "unit-id" property,
which was in the Linux code, but never used in this way on IBM hardware.

Legacy device tree used the reg property for the physical id of an spe.
This patch fixes find_spu_unit_number to look for the spu id in that order.
The length is checked to avoid misinterpretation in case the attributes
unit-id or reg do not contain the id.

Signed-off-by: Christian Krafft <krafft@de.ibm.com>
Signed-off-by: Arnd Bergmann <arnd.bergmann@de.ibm.com>
Cc: Jeremy Kerr <jk@ozlabs.org>
17 years ago[POWERPC] Update defconfigs
Kumar Gala [Wed, 29 Aug 2007 02:46:53 +0000 (21:46 -0500)] 
[POWERPC] Update defconfigs

Signed-off-by: Kumar Gala <galak@kernel.crashing.org>
17 years agoSCTP: Assign stream sequence numbers to the entire message
Vlad Yasevich [Thu, 2 Aug 2007 20:51:42 +0000 (16:51 -0400)] 
SCTP: Assign stream sequence numbers to the entire message

Currently we only assign the sequence number to a packet that
we are about to transmit.  This however breaks the Partial
Reliability extensions, because it's possible for us to
never transmit a packet, i.e. it expires before we get to send
it.  In such cases, if the message contained multiple SCTP
fragments, and we did manage to send the first part of the
message, the Stream sequence numbers would get into invalid
state and cause receiver to stall.

Signed-off-by: Vlad Yasevich <vladislav.yasevich@hp.com>
17 years agoSCTP: properly clean up fragment and ordering queues during FWD-TSN.
Vlad Yasevich [Fri, 13 Jul 2007 21:01:19 +0000 (17:01 -0400)] 
SCTP: properly clean up fragment and ordering queues during FWD-TSN.

When we recieve a FWD-TSN (meaning the peer has abandoned the data),
we need to clean up any partially received messages that may be
hanging out on the re-assembly or re-ordering queues.  This is
a MUST requirement that was not properly done before.

Signed-off-by: Vlad Yasevich <vladislav.yasevich@hp.com.>
17 years ago[POWERPC] Flush registers to proper task context
Kumar Gala [Wed, 29 Aug 2007 02:15:53 +0000 (21:15 -0500)] 
[POWERPC] Flush registers to proper task context

When we flush register state for FP, Altivec, or SPE in flush_*_to_thread
we need to respect the task_struct that the caller has passed to us.

Most cases we are called with current, however sometimes (ptrace) we may
be passed a different task_struct.

This showed up when using gdbserver debugging a simple program that used
floating point. When gdb tried to show the FP regs they all showed up as
0, because the child's FP registers were never properly flushed to memory.

Signed-off-by: Kumar Gala <galak@kernel.crashing.org>
17 years ago[IA64] Clear pending interrupts at CPU boot up time
Kenji Kaneshige [Wed, 22 Aug 2007 10:53:30 +0000 (19:53 +0900)] 
[IA64] Clear pending interrupts at CPU boot up time

The pending interrupts can be remaining at boot up time on some
platform. This will cause spurious interrupts when interrupt is
enabled for the first time. This patch clears IVR at the CPU
initialization to eliminate such spurious interrupts.

Signed-off-by: Kenji Kaneshige <kaneshige.kenji@jp.fujitsu.com>
Signed-off-by: Tony Luck <tony.luck@intel.com>
17 years ago[IA64] Fix unexpected interrupt vector handling
Kenji Kaneshige [Tue, 28 Aug 2007 23:01:21 +0000 (16:01 -0700)] 
[IA64] Fix unexpected interrupt vector handling

Fix handling for spurious interrupts not being mapped to any IRQs.

Currently, spurious interrupts that are not mapped to any IRQs are
handled as IRQ 15 (== IA64_SPURIOUS_VECTOR). But it is not proper
because vector != irq. We need special handlings for such spurious
interrupts not being mapped to any IRQs.

Signed-off-by: Kenji Kaneshige <kaneshige.kenji@jp.fujitsu.com>
Signed-off-by: Tony Luck <tony.luck@intel.com>
17 years ago[PKTGEN]: Fix multiqueue oops.
Robert Olsson [Tue, 28 Aug 2007 22:43:14 +0000 (15:43 -0700)] 
[PKTGEN]: Fix multiqueue oops.

Initially pkt_dev can be NULL this causes netif_subqueue_stopped to
oops. The patch below should cure it. But maybe the pktgen TX logic
should be reworked to better support the new multiqueue support.

Signed-off-by: Robert Olsson <robert.olsson@its.uu.se>
Signed-off-by: David S. Miller <davem@davemloft.net>
17 years ago[BNX2]: Add write posting comment.
Michael Chan [Tue, 28 Aug 2007 22:39:42 +0000 (15:39 -0700)] 
[BNX2]: Add write posting comment.

Add comment to explain why we cannot read back after chip reset
before delaying.

Signed-off-by: Michael Chan <mchan@broadcom.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
17 years ago[ARM] 4557/1: Fix PXA irq gpio initialization
Samuel [Tue, 28 Aug 2007 18:56:34 +0000 (19:56 +0100)] 
[ARM] 4557/1: Fix PXA irq gpio initialization

As pointed out by Jrgen, we are overflowing the number of GPIOs
in pxa_init_irq_gpio(). I'm seeing the same problem on my HTC
Universal PXA270 based PDA.
According to Eric, the function argument is the number of GPIOs,
so we should keep the semantics and reduce the number of
iteration by 1.

Signed-off-by: Samuel Ortiz <sameo@openedhand.com>
Acked-by: Jrgen Schindele <linux@schindele.name>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
17 years ago[BNX2]: Use msleep().
Arjan van de Ven [Tue, 28 Aug 2007 21:34:43 +0000 (14:34 -0700)] 
[BNX2]: Use msleep().

bnx2.c (incorrectly) sets current->state directly to
TASK_UNINTERRUPTIBLE, without going through set_task_state(). However
all the code wants to do is an msleep so just make it do that instead...

Signed-off-by: Arjan van de Ven <arjan@linux.intel.com>
Acked-by: Michael Chan <mchan@broadcom.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
17 years agosched: clean up task_new_fair()
Ingo Molnar [Tue, 28 Aug 2007 10:53:24 +0000 (12:53 +0200)] 
sched: clean up task_new_fair()

cleanup: we have the 'se' and 'curr' entity-pointers already,
no need to use p->se and current->se.

Signed-off-by: Ingo Molnar <mingo@elte.hu>
Signed-off-by: Peter Zijlstra <a.p.zijlstra@chello.nl>
Signed-off-by: Mike Galbraith <efault@gmx.de>
17 years agosched: small schedstat fix
Ingo Molnar [Tue, 28 Aug 2007 10:53:24 +0000 (12:53 +0200)] 
sched: small schedstat fix

small schedstat fix: the cfs_rq->wait_runtime 'sum of all runtimes'
statistics counters missed newly forked tasks and thus had a constant
negative skew. Fix this.

Signed-off-by: Ingo Molnar <mingo@elte.hu>
Signed-off-by: Peter Zijlstra <a.p.zijlstra@chello.nl>
Signed-off-by: Mike Galbraith <efault@gmx.de>
17 years agosched: fix wait_start_fair condition in update_stats_wait_end()
Ingo Molnar [Tue, 28 Aug 2007 10:53:24 +0000 (12:53 +0200)] 
sched: fix wait_start_fair condition in update_stats_wait_end()

Peter Zijlstra noticed the following bug in SCHED_FEAT_SKIP_INITIAL (which
is disabled by default at the moment): it relies on se.wait_start_fair
being 0 while update_stats_wait_end() did not recognize a 0 value,
so instead of 'skipping' the initial interval we gave the new child
a maximum boost of +runtime-limit ...

(No impact on the default kernel, but nice to fix for completeness.)

Signed-off-by: Ingo Molnar <mingo@elte.hu>
Signed-off-by: Peter Zijlstra <a.p.zijlstra@chello.nl>
Signed-off-by: Mike Galbraith <efault@gmx.de>
17 years agosched: call update_curr() in task_tick_fair()
Ting Yang [Tue, 28 Aug 2007 10:53:24 +0000 (12:53 +0200)] 
sched: call update_curr() in task_tick_fair()

update the fair-clock before using it for the key value.

[ mingo@elte.hu: small cleanups. ]

Signed-off-by: Ting Yang <tingy@cs.umass.edu>
Signed-off-by: Ingo Molnar <mingo@elte.hu>
Signed-off-by: Mike Galbraith <efault@gmx.de>
Signed-off-by: Peter Zijlstra <a.p.zijlstra@chello.nl>
17 years agosched: make the scheduler converge to the ideal latency
Ingo Molnar [Tue, 28 Aug 2007 10:53:24 +0000 (12:53 +0200)] 
sched: make the scheduler converge to the ideal latency

de-HZ-ification of the granularity defaults unearthed a pre-existing
property of CFS: while it correctly converges to the granularity goal,
it does not prevent run-time fluctuations in the range of
[-gran ... 0 ... +gran].

With the increase of the granularity due to the removal of HZ
dependencies, this becomes visible in chew-max output (with 5 tasks
running):

 out:  28 . 27. 32 | flu:  0 .  0 | ran:    9 .   13 | per:   37 .   40
 out:  27 . 27. 32 | flu:  0 .  0 | ran:   17 .   13 | per:   44 .   40
 out:  27 . 27. 32 | flu:  0 .  0 | ran:    9 .   13 | per:   36 .   40
 out:  29 . 27. 32 | flu:  2 .  0 | ran:   17 .   13 | per:   46 .   40
 out:  28 . 27. 32 | flu:  0 .  0 | ran:    9 .   13 | per:   37 .   40
 out:  29 . 27. 32 | flu:  0 .  0 | ran:   18 .   13 | per:   47 .   40
 out:  28 . 27. 32 | flu:  0 .  0 | ran:    9 .   13 | per:   37 .   40

average slice is the ideal 13 msecs and the period is picture-perfect 40
msecs. But the 'ran' field fluctuates around 13.33 msecs and there's no
mechanism in CFS to keep that from happening: it's a perfectly valid
solution that CFS finds.

to fix this we add a granularity/preemption rule that knows about
the "target latency", which makes tasks that run longer than the ideal
latency run a bit less. The simplest approach is to simply decrease the
preemption granularity when a task overruns its ideal latency. For this
we have to track how much the task executed since its last preemption.

( this adds a new field to task_struct, but we can eliminate that
  overhead in 2.6.24 by putting all the scheduler timestamps into an
  anonymous union. )

with this change in place, chew-max output is fluctuation-less all
around:

 out:  28 . 27. 39 | flu:  0 .  2 | ran:   13 .   13 | per:   41 .   40
 out:  28 . 27. 39 | flu:  0 .  2 | ran:   13 .   13 | per:   41 .   40
 out:  28 . 27. 39 | flu:  0 .  2 | ran:   13 .   13 | per:   41 .   40
 out:  28 . 27. 39 | flu:  0 .  2 | ran:   13 .   13 | per:   41 .   40
 out:  28 . 27. 39 | flu:  0 .  1 | ran:   13 .   13 | per:   41 .   40
 out:  28 . 27. 39 | flu:  0 .  1 | ran:   13 .   13 | per:   41 .   40

this patch has no impact on any fastpath or on any globally observable
scheduling property. (unless you have sharp enough eyes to see
millisecond-level ruckles in glxgears smoothness :-)

Signed-off-by: Ingo Molnar <mingo@elte.hu>
Signed-off-by: Peter Zijlstra <a.p.zijlstra@chello.nl>
Signed-off-by: Mike Galbraith <efault@gmx.de>
17 years agosched: fix sleeper bonus limit
Mike Galbraith [Tue, 28 Aug 2007 10:53:24 +0000 (12:53 +0200)] 
sched: fix sleeper bonus limit

There is an Amarok song switch time increase (regression) under
hefty load.

What is happening is that sleeper_bonus is never consumed, and only
rarely goes below runtime_limit, so for the most part, Amarok isn't
getting any bonus at all.  We're keeping sleeper_bonus right at
runtime_limit (sched_latency == sched_runtime_limit == 40ms) forever, ie
we don't consume if we're lower that that, and don't add if we're above
it.  One Amarok thread waking (or anybody else) will push us past the
threshold, so the next thread waking gets nada, but will reap pain from
the previous thread waking until we drop back to runtime_limit.  It
looks to me like under load, some random task gets a bonus, and
everybody else pays, whether deserving or not.

This diff fixed the regression for me at any load rate.

Signed-off-by: Mike Galbraith <efault@gmx.de>
Signed-off-by: Ingo Molnar <mingo@elte.hu>
Signed-off-by: Peter Zijlstra <a.p.zijlstra@chello.nl>
17 years agoLinux 2.6.23-rc4 v2.6.23-rc4
Linus Torvalds [Tue, 28 Aug 2007 01:32:35 +0000 (18:32 -0700)] 
Linux 2.6.23-rc4

17 years agodm-mpath-rdac: don't stomp on a requests transfer bit
Andrew Vasquez [Mon, 27 Aug 2007 22:25:01 +0000 (15:25 -0700)] 
dm-mpath-rdac: don't stomp on a requests transfer bit

Without this, we get qla2xxx complaining about "ISP System Error".

What's happening here is the firmware is detecting a Xfer-ready from the
storage when in fact the data-direction for a mode-select should be a
write (DATA_OUT).

The following patch fixes the problem (typo). Verified by Brian, as
well.

Signed-off-by: Andrew Vasquez <andrew.vasquez@qlogic.com>
Verified-by: Brian De Wolf <bldewolf@csupomona.edu>
Signed-off-by: Chandra Seetharaman <sekharan@us.ibm.com>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
17 years agoMerge branch 'master' of master.kernel.org:/pub/scm/linux/kernel/git/davem/sparc-2.6
Linus Torvalds [Mon, 27 Aug 2007 22:06:28 +0000 (15:06 -0700)] 
Merge branch 'master' of /linux/kernel/git/davem/sparc-2.6

* 'master' of master.kernel.org:/pub/scm/linux/kernel/git/davem/sparc-2.6:
  [SPARC32]: Make flush_tlb_kernel_range() an inline function.
  [SERIAL]: Fix 32-bit warnings in sunzilog.c and sunsu.c
  [SPARC32]: Kill unused vars and macros from prom/console.c
  [SPARC32]: Add __cmpdi2() libcall implementation ala. MIPS.
  [VIDEO]: Do not prom_halt() in cg3 and bw2 device probe.
  [SUNVDC]: Use slice 0xff on VD_DISK_TYPE_DISK.

17 years agoMerge branch 'master' of master.kernel.org:/pub/scm/linux/kernel/git/davem/net-2.6
Linus Torvalds [Mon, 27 Aug 2007 22:06:01 +0000 (15:06 -0700)] 
Merge branch 'master' of /linux/kernel/git/davem/net-2.6

* 'master' of master.kernel.org:/pub/scm/linux/kernel/git/davem/net-2.6:
  [NET]: Mark Paul Moore as maintainer of labelled networking.
  [VLAN/BRIDGE]: Fix "skb_pull_rcsum - Fatal exception in interrupt"
  [ISDN]: Get rid of some pointless allocation casts in common and bsd comp.
  [NET]: Avoid pointless allocation casts in BSD compression module
  [IRDA]: Do not do pointless kmalloc return value cast in KingSun driver
  [NET]: Fix crash in dev_mc_sync()/dev_mc_unsync()
  [PPPOL2TP]: Fix endianness annotations.
  [IOAT]: ioatdma needs to to play nice in a multi-dma-client world
  [SLIP]: trivial sparse warning fix
  [EQL]: sparse warning fix
  [NET]: is_power_of_2 in net/core/neighbour.c
  [TCP]: Describe tcp_init_cwnd() thoroughly in a comment.
  [NET]: Fix IP_ADD/DROP_MEMBERSHIP to handle only connectionless
  [KBUILD]: Sanitize tc_ematch headers.
  [IPSEC] AH4: Update IPv4 options handling to conform to RFC 4302.

17 years agofix bogus hotplug cpu warning
Hugh Dickins [Mon, 27 Aug 2007 15:06:19 +0000 (16:06 +0100)] 
fix bogus hotplug cpu warning

Fix bogus DEBUG_PREEMPT warning on x86_64, when cpu brought online after
bootup: current_is_keventd is right to note its use of smp_processor_id
is preempt-safe, but should use raw_smp_processor_id to avoid the warning.

Signed-off-by: Hugh Dickins <hugh@veritas.com>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
17 years agoreverse CONFIG_ACPI_PROC_EVENT default
Hugh Dickins [Mon, 27 Aug 2007 15:04:39 +0000 (16:04 +0100)] 
reverse CONFIG_ACPI_PROC_EVENT default

Sigh.  Again an ACPI assault on the Thinkpad's Fn+F4 to suspend to RAM.
The default and text for CONFIG_THINKPAD_ACPI_INPUT_ENABLED were fixed
in -rc3, but now commit 14e04fb34ffa82ee61ae69f98d8fca12d2e8e31c ("ACPI:
Schedule /proc/acpi/event for removal") introduces the ACPI_PROC_EVENT
config entry, and defaults it to 'n' to disable it again.

Change default to y, and add comment to make it clearer that n is for
future distros.

Signed-off-by: Hugh Dickins <hugh@veritas.com>
Cc: Andrew Morton <akpm@linux-foundation.org>
Cc: Len Brown <len.brown@intel.com>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
17 years agofix maxcpus=N parsing
Hugh Dickins [Mon, 27 Aug 2007 15:02:12 +0000 (16:02 +0100)] 
fix maxcpus=N parsing

Commit 61ec7567db103d537329b0db9a887db570431ff4 ('ACPI: boot correctly
with "nosmp" or "maxcpus=0"') broke 'maxcpus=' handling on x86[-64].

maxcpus=N is now having no effect on x86_64, and freezing bootup on i386
(because of inconsistency with the separate maxcpus parsing down in
arch/i386, I guess).  That's because early_param parsing is a little
different from __setup parsing, and needs the "=" omitted: then it seems
to work as the original commit intended (no mention of IO-APIC in
/proc/interrupts when maxcpus=0).

Signed-off-by: Hugh Dickins <hugh@veritas.com>
Cc: Andrew Morton <akpm@linux-foundation.org>
Cc: Len Brown <len.brown@intel.com>
Cc: Andi Kleen <ak@suse.de>
Cc: Rusty Russell <rusty@rustcorp.com.au>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
17 years agoMerge branch 'upstream' of git://ftp.linux-mips.org/pub/scm/upstream-linus
Linus Torvalds [Mon, 27 Aug 2007 16:42:43 +0000 (09:42 -0700)] 
Merge branch 'upstream' of git://ftp.linux-mips.org/upstream-linus

* 'upstream' of git://ftp.linux-mips.org/pub/scm/upstream-linus: (60 commits)
  [MIPS] Fulong doesn't need ISA DMA.
  [MIPS] IP27: intr_sconnect_level: don't disable interrupts.
  [MIPS] IP27: startup_bridge_irq: connect interrupt.
  [MIPS] IP27: shutdown_bridge_irq: don't free irq.
  [MIPS] Sort out handling of ISA-less PCI systems.
  [MIPS] Add __cmpdi2
  [MIPS] HOTPLUG: Make register_pci_controller __devinit.
  [MIPS] PCI: Remove __devinit attribute from pcibios_fixup_bus.
  [MIPS] PCI: Remove __devinit attribute from pcibios_fixup_bus.
  [MIPS] Delete duplicate inclusion of <linux/delay.h>.
  [MIPS] Polish <asm/edac.h>.
  [MIPS] IP22: Export sgi_gfxaddr for use by the Newport console driver.
  [MIPS] Maintain si_code field properly for FP exceptions
  [MIPS] SMTC: Fix duplicate status dumps on NMI
  [MIPS] Unconditionally writeback and invalidate caches on kexec.
  [PATCH] rtc: Make rtc-rs5c348 driver hotplug-aware
  [MIPS] Fix gcc 3.3 warning.
  [MIPS] Fix invalid semicolon after if statement
  [MIPS] Update Cobalt defconfig
  [MIPS] Update workpad_defconfig
  ...

17 years agoMerge branch 'merge' of git://git.kernel.org/pub/scm/linux/kernel/git/paulus/powerpc
Linus Torvalds [Mon, 27 Aug 2007 16:42:21 +0000 (09:42 -0700)] 
Merge branch 'merge' of git://git./linux/kernel/git/paulus/powerpc

* 'merge' of git://git.kernel.org/pub/scm/linux/kernel/git/paulus/powerpc:
  [POWERPC] Fix SLB initialization at boot time
  [POWERPC] Fix undefined reference to device_power_up/resume
  [POWERPC] cell: Update cell_defconfig for 2.6.23
  [POWERPC] axonram: Do not delete gendisks queue in error path
  [POWERPC] axonram: Module modification for latest firmware API changes
  [POWERPC] cell: Support pinhole-reset on IBM cell blades
  [POWERPC] spu_manage: Use newer physical-id attribute
  [POWERPC] pasemi: Another IOMMU bugfix for 64K PAGE_SIZE

17 years agoMerge branch 'master' of git://git.kernel.org/pub/scm/linux/kernel/git/kyle/parisc-2.6
Linus Torvalds [Mon, 27 Aug 2007 16:30:52 +0000 (09:30 -0700)] 
Merge branch 'master' of git://git./linux/kernel/git/kyle/parisc-2.6

* 'master' of git://git.kernel.org/pub/scm/linux/kernel/git/kyle/parisc-2.6:
  [PARISC] Add NOTES section
  [PARISC] Use compat_sys_getdents
  [PARISC] Do not allow STI_CONSOLE to be modular
  [PARISC] Clean up sti_flush
  [PARISC] Add dummy isa_(bus|virt)_to_(virt|bus) inlines
  [PARISC] Add empty <asm-parisc/vga.h>

17 years ago[PARISC] Add NOTES section
Kyle McMartin [Mon, 27 Aug 2007 03:28:34 +0000 (23:28 -0400)] 
[PARISC] Add NOTES section

Bisected bizarre kernel-space nullptr dereference in udev to commit
18991197b4b588255ccabf472ebc84db7b66a19c, adding the NOTES section fixes
it.

Signed-off-by: Kyle McMartin <kyle@parisc-linux.org>
17 years ago[PARISC] Use compat_sys_getdents
Kyle McMartin [Fri, 29 Jun 2007 07:38:10 +0000 (03:38 -0400)] 
[PARISC] Use compat_sys_getdents

Switch to using the generic compat_sys_getdents instead of a
homebrew one.

Signed-off-by: Kyle McMartin <kyle@parisc-linux.org>
17 years ago[PARISC] Do not allow STI_CONSOLE to be modular
Kyle McMartin [Fri, 29 Jun 2007 06:15:12 +0000 (02:15 -0400)] 
[PARISC] Do not allow STI_CONSOLE to be modular

It doesn't really make much sense, anyways, and would need a pile of
symbols exported.

Signed-off-by: Kyle McMartin <kyle@parisc-linux.org>
17 years ago[PARISC] Clean up sti_flush
Kyle McMartin [Fri, 29 Jun 2007 06:17:50 +0000 (02:17 -0400)] 
[PARISC] Clean up sti_flush

sti_flush is supposed to flush the caches so we can execute the STI rom
we copied to memory. Anything more than flush_icache_range is overkill.

Fixes a missing symbol when built as a module.

Signed-off-by: Kyle McMartin <kyle@parisc-linux.org>
17 years ago[PARISC] Add dummy isa_(bus|virt)_to_(virt|bus) inlines
Kyle McMartin [Fri, 29 Jun 2007 06:21:03 +0000 (02:21 -0400)] 
[PARISC] Add dummy isa_(bus|virt)_to_(virt|bus) inlines

Less painful than fixing up the Kconfig for a pile of drivers to only build
on X86 && ARM && MIPS...

Just make them BUG(), as defining them to be 1:1 with physical memory will
likely HPMC the box anyways.

Signed-off-by: Kyle McMartin <kyle@parisc-linux.org>
17 years ago[PARISC] Add empty <asm-parisc/vga.h>
Kyle McMartin [Thu, 28 Jun 2007 16:12:39 +0000 (12:12 -0400)] 
[PARISC] Add empty <asm-parisc/vga.h>

Signed-off-by: Kyle McMartin <kyle@parisc-linux.org>
17 years ago[SPARC32]: Make flush_tlb_kernel_range() an inline function.
David S. Miller [Sat, 25 Aug 2007 22:21:51 +0000 (15:21 -0700)] 
[SPARC32]: Make flush_tlb_kernel_range() an inline function.

This avoids unused variable warnings in places like mm/vmalloc.c:

mm/vmalloc.c: In function ‘unmap_kernel_range’:
mm/vmalloc.c:75: warning: unused variable ‘start’

caused by it previously being a macro.

Signed-off-by: David S. Miller <davem@davemloft.net>
17 years ago[SERIAL]: Fix 32-bit warnings in sunzilog.c and sunsu.c
David S. Miller [Sat, 25 Aug 2007 22:17:31 +0000 (15:17 -0700)] 
[SERIAL]: Fix 32-bit warnings in sunzilog.c and sunsu.c

resource_size_t can be either a u64 or a u32, and we can't
really know for sure, so when printing such a value out
always use long-long printf formatting and cast the argument
to that type.

Signed-off-by: David S. Miller <davem@davemloft.net>
17 years ago[SPARC32]: Kill unused vars and macros from prom/console.c
David S. Miller [Sat, 25 Aug 2007 22:12:32 +0000 (15:12 -0700)] 
[SPARC32]: Kill unused vars and macros from prom/console.c

This should have been removed during the of_console_device
changes.

Signed-off-by: David S. Miller <davem@davemloft.net>
17 years ago[SPARC32]: Add __cmpdi2() libcall implementation ala. MIPS.
David S. Miller [Sat, 25 Aug 2007 22:10:44 +0000 (15:10 -0700)] 
[SPARC32]: Add __cmpdi2() libcall implementation ala. MIPS.

Device mapper generates calls to this with recent versions
of gcc.

Signed-off-by: David S. Miller <davem@davemloft.net>
17 years ago[VIDEO]: Do not prom_halt() in cg3 and bw2 device probe.
David S. Miller [Sat, 25 Aug 2007 05:33:15 +0000 (22:33 -0700)] 
[VIDEO]: Do not prom_halt() in cg3 and bw2 device probe.

Just give a normal kernel log message of the problem and
return failure.

Based upon a patch from Mark Fortescue.

Signed-off-by: David S. Miller <davem@davemloft.net>
17 years ago[SUNVDC]: Use slice 0xff on VD_DISK_TYPE_DISK.
David S. Miller [Sat, 25 Aug 2007 05:05:44 +0000 (22:05 -0700)] 
[SUNVDC]: Use slice 0xff on VD_DISK_TYPE_DISK.

While debugging issues with the VDS server I made the
driver use partition 2 to get at the whole disk since
this is the "whole disk" partition in the Sun disk
label.

We really should use slice 0xff which really means
the whole physical disk in the VIO disk protocol.
Otherwise things won't work well on a disk image
that doesn't have a proper disk label on it.

Signed-off-by: David S. Miller <davem@davemloft.net>
17 years ago[NET]: Mark Paul Moore as maintainer of labelled networking.
James Morris [Sat, 25 Aug 2007 21:41:28 +0000 (14:41 -0700)] 
[NET]: Mark Paul Moore as maintainer of labelled networking.

Signed-off-by: James Morris <jmorris@namei.org>
Acked-by: Paul Moore <paul.moore@hp.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
17 years ago[VLAN/BRIDGE]: Fix "skb_pull_rcsum - Fatal exception in interrupt"
Evgeniy Polyakov [Sat, 25 Aug 2007 06:36:29 +0000 (23:36 -0700)] 
[VLAN/BRIDGE]: Fix "skb_pull_rcsum - Fatal exception in interrupt"

I tried to preserve bridging code as it was before, but logic is quite
strange - I think we should free skb on error, since it is already
unshared and thus will just leak.

Herbert Xu states:

> + if ((skb = skb_share_check(skb, GFP_ATOMIC)) == NULL)
> + goto out;

If this happens it'll be a double-free on skb since we'll
return NF_DROP which makes the caller free it too.

We could return NF_STOLEN to prevent that but I'm not sure
whether that's correct netfilter semantics.  Patrick, could
you please make a call on this?

Patrick McHardy states:

NF_STOLEN should work fine here.

Signed-off-by: Evgeniy Polyakov <johnpol@2ka.mipt.ru>
Signed-off-by: David S. Miller <davem@davemloft.net>
17 years ago[ISDN]: Get rid of some pointless allocation casts in common and bsd comp.
Jesper Juhl [Sat, 25 Aug 2007 06:25:33 +0000 (23:25 -0700)] 
[ISDN]: Get rid of some pointless allocation casts in common and bsd comp.

vmalloc() returns a void pointer - no need to cast the return value.

Signed-off-by: Jesper Juhl <jesper.juhl@gmail.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
17 years ago[NET]: Avoid pointless allocation casts in BSD compression module
Jesper Juhl [Sat, 25 Aug 2007 06:24:43 +0000 (23:24 -0700)] 
[NET]: Avoid pointless allocation casts in BSD compression module

The general kernel memory allocation functions return void pointers
and there is no need to cast their return values.

Signed-off-by: Jesper Juhl <jesper.juhl@gmail.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
17 years ago[IRDA]: Do not do pointless kmalloc return value cast in KingSun driver
Jesper Juhl [Sat, 25 Aug 2007 06:23:41 +0000 (23:23 -0700)] 
[IRDA]: Do not do pointless kmalloc return value cast in KingSun driver

kmalloc() returns a void pointer, so there is no need to cast it in
 drivers/net/irda/kingsun-sir.c::kingsun_probe().

Signed-off-by: Jesper Juhl <jesper.juhl@gmail.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
17 years ago[NET]: Fix crash in dev_mc_sync()/dev_mc_unsync()
Benjamin Thery [Sat, 25 Aug 2007 06:12:08 +0000 (23:12 -0700)] 
[NET]: Fix crash in dev_mc_sync()/dev_mc_unsync()

This patch fixes a crash that may occur when the routine dev_mc_sync()
deletes an address from the list it is currently going through. It
saves the pointer to the next element before deleting the current one.
The problem may also exist in dev_mc_unsync().

Signed-off-by: Benjamin Thery <benjamin.thery@bull.net>
Acked-by: Patrick McHardy <kaber@trash.net>
Signed-off-by: David S. Miller <davem@davemloft.net>
17 years ago[PPPOL2TP]: Fix endianness annotations.
Al Viro [Sat, 25 Aug 2007 06:04:18 +0000 (23:04 -0700)] 
[PPPOL2TP]: Fix endianness annotations.

{s,d}_{session,tunnel} in pppol2tp_addr are actually host-endian
everywhere.  We might switch them to net-endian, of course, but
that structure is exposed to userland via getname...

Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
Signed-off-by: David S. Miller <davem@davemloft.net>
17 years ago[IOAT]: ioatdma needs to to play nice in a multi-dma-client world
Shannon Nelson [Sat, 25 Aug 2007 06:02:53 +0000 (23:02 -0700)] 
[IOAT]: ioatdma needs to to play nice in a multi-dma-client world

Now that the DMA engine has a multi-client interface, fix the ioatdma
driver to play along.  At the same time, remove a couple of unnecessary
reads and writes.

Signed-off-by: Shannon Nelson <shannon.nelson@intel.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
17 years ago[SLIP]: trivial sparse warning fix
Stephen Hemminger [Sat, 25 Aug 2007 05:38:26 +0000 (22:38 -0700)] 
[SLIP]: trivial sparse warning fix

Function declared static in forward declaration, but not in actual code.

Signed-off-by: Stephen Hemminger <shemminger@linux-foundation.org>
Signed-off-by: David S. Miller <davem@davemloft.net>
17 years ago[EQL]: sparse warning fix
Stephen Hemminger [Sat, 25 Aug 2007 05:37:49 +0000 (22:37 -0700)] 
[EQL]: sparse warning fix

More noodlin on long flights, patch bin. Sparse warning fix for eql.

Signed-off-by: Stephen Hemminger <shemminger@linux-foundation.org>
Signed-off-by: David S. Miller <davem@davemloft.net>
17 years ago[NET]: is_power_of_2 in net/core/neighbour.c
vignesh babu [Sat, 25 Aug 2007 05:27:55 +0000 (22:27 -0700)] 
[NET]: is_power_of_2 in net/core/neighbour.c

Replacing n & (n - 1) for power of 2 check by is_power_of_2(n)

Signed-off-by: vignesh babu <vignesh.babu@wipro.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
17 years ago[TCP]: Describe tcp_init_cwnd() thoroughly in a comment.
David S. Miller [Sat, 25 Aug 2007 05:21:50 +0000 (22:21 -0700)] 
[TCP]: Describe tcp_init_cwnd() thoroughly in a comment.

People often get tripped up by this function and think that
it does not implemented the prescribed algorithms from
RFC2414 and RFC3390, even though it does.

So add a comment to head off such misunderstandings in the
future.

Signed-off-by: David S. Miller <davem@davemloft.net>
17 years ago[NET]: Fix IP_ADD/DROP_MEMBERSHIP to handle only connectionless
Flavio Leitner [Sat, 25 Aug 2007 05:16:39 +0000 (22:16 -0700)] 
[NET]: Fix IP_ADD/DROP_MEMBERSHIP to handle only connectionless

Fix IP[V6]_ADD_MEMBERSHIP and IP[V6]_DROP_MEMBERSHIP to
return -EPROTO for connection oriented sockets.

Signed-off-by: Flavio Leitner <fleitner@redhat.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
17 years ago[KBUILD]: Sanitize tc_ematch headers.
Stephen Hemminger [Wed, 22 Aug 2007 19:36:01 +0000 (12:36 -0700)] 
[KBUILD]: Sanitize tc_ematch headers.

The headers in tc_ematch are used by iproute2, so these headers should
be processed.

Signed-off-by: Stephen Hemminger <shemminger@linux-foundation.org>
Signed-off-by: David S. Miller <davem@davemloft.net>
17 years ago[IPSEC] AH4: Update IPv4 options handling to conform to RFC 4302.
Nick Bowler [Wed, 22 Aug 2007 19:33:51 +0000 (12:33 -0700)] 
[IPSEC] AH4: Update IPv4 options handling to conform to RFC 4302.

In testing our ESP/AH offload hardware, I discovered an issue with how
AH handles mutable fields in IPv4.  RFC 4302 (AH) states the following
on the subject:

        For IPv4, the entire option is viewed as a unit; so even
        though the type and length fields within most options are immutable
        in transit, if an option is classified as mutable, the entire option
        is zeroed for ICV computation purposes.

The current implementation does not zero the type and length fields,
resulting in authentication failures when communicating with hosts
that do (i.e. FreeBSD).

I have tested record route and timestamp options (ping -R and ping -T)
on a small network involving Windows XP, FreeBSD 6.2, and Linux hosts,
with one router.  In the presence of these options, the FreeBSD and
Linux hosts (with the patch or with the hardware) can communicate.
The Windows XP host simply fails to accept these packets with or
without the patch.

I have also been trying to test source routing options (using
traceroute -g), but haven't had much luck getting this option to work
*without* AH, let alone with.

Signed-off-by: Nick Bowler <nbowler@ellipticsemi.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
17 years ago[MIPS] Fulong doesn't need ISA DMA.
Ralf Baechle [Fri, 24 Aug 2007 15:49:23 +0000 (16:49 +0100)] 
[MIPS] Fulong doesn't need ISA DMA.

Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
17 years ago[MIPS] IP27: intr_sconnect_level: don't disable interrupts.
Ralf Baechle [Sun, 26 Aug 2007 23:29:11 +0000 (00:29 +0100)] 
[MIPS] IP27: intr_sconnect_level: don't disable interrupts.

There is no reason to.

Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
17 years ago[MIPS] IP27: startup_bridge_irq: connect interrupt.
Ralf Baechle [Sun, 26 Aug 2007 23:26:58 +0000 (00:26 +0100)] 
[MIPS] IP27: startup_bridge_irq: connect interrupt.

shutdown_bridge_irq disconnects the irq so we need to connect the irq or
requesting the same irq a send time will fail.  This used to make
things like ifconfig eth0 down; ifconfig eth0 up fail on IP27.

Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
17 years ago[MIPS] IP27: shutdown_bridge_irq: don't free irq.
Ralf Baechle [Sun, 26 Aug 2007 23:19:21 +0000 (00:19 +0100)] 
[MIPS] IP27: shutdown_bridge_irq: don't free irq.

Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
17 years ago[MIPS] Sort out handling of ISA-less PCI systems.
Ralf Baechle [Fri, 24 Aug 2007 15:48:30 +0000 (16:48 +0100)] 
[MIPS] Sort out handling of ISA-less PCI systems.

Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
17 years ago[MIPS] Add __cmpdi2
Ralf Baechle [Fri, 24 Aug 2007 12:47:45 +0000 (13:47 +0100)] 
[MIPS] Add __cmpdi2

Certain 32-bit kernel configurations seem to be able to cause references,
this was observed with gcc 4.1.2.

Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
17 years ago[MIPS] HOTPLUG: Make register_pci_controller __devinit.
Ralf Baechle [Fri, 24 Aug 2007 01:13:33 +0000 (02:13 +0100)] 
[MIPS] HOTPLUG: Make register_pci_controller __devinit.

Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
17 years ago[MIPS] PCI: Remove __devinit attribute from pcibios_fixup_bus.
Ralf Baechle [Thu, 23 Aug 2007 13:17:14 +0000 (14:17 +0100)] 
[MIPS] PCI: Remove __devinit attribute from pcibios_fixup_bus.

Since 96bde06a2df1b363206d3cdef53134b84ff37813 several callers of
pcibios_resource_to_bus are no longer marked __devinit resulting in a
pile of modpost warnings if PCI && !HOTPLUG:

  MODPOST vmlinux.o
WARNING: vmlinux.o(.text+0x15dde8): Section mismatch: reference to .init.text:pcibios_resource_to_bus (between 'pci_map_rom' and 'pci_map_rom_copy')
WARNING: vmlinux.o(.text+0x15e140): Section mismatch: reference to .init.text:pcibios_resource_to_bus (between 'pci_update_resource' and 'pci_claim_resource')
WARNING: vmlinux.o(.text+0x15f0cc): Section mismatch: reference to .init.text:pcibios_resource_to_bus (between 'pci_setup_cardbus' and 'pci_bus_assign_resources')
WARNING: vmlinux.o(.text+0x15f0f0): Section mismatch: reference to .init.text:pcibios_resource_to_bus (between 'pci_setup_cardbus' and 'pci_bus_assign_resources')
WARNING: vmlinux.o(.text+0x15f114): Section mismatch: reference to .init.text:pcibios_resource_to_bus (between 'pci_setup_cardbus' and 'pci_bus_assign_resources')
WARNING: vmlinux.o(.text+0x15f138): Section mismatch: reference to .init.text:pcibios_resource_to_bus (between 'pci_setup_cardbus' and 'pci_bus_assign_resources')
WARNING: vmlinux.o(.text+0x15f438): Section mismatch: reference to .init.text:pcibios_resource_to_bus (between 'pci_bus_assign_resources' and 'pbus_size_mem')
WARNING: vmlinux.o(.text+0x15f4f4): Section mismatch: reference to .init.text:pcibios_resource_to_bus (between 'pci_bus_assign_resources' and 'pbus_size_mem')

Removing __devinit from pcibios_resource_to_bus make the same necessary
for pcibios_fixup_device_resources as well.

Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
17 years ago[MIPS] PCI: Remove __devinit attribute from pcibios_fixup_bus.
Ralf Baechle [Thu, 23 Aug 2007 13:12:56 +0000 (14:12 +0100)] 
[MIPS] PCI: Remove __devinit attribute from pcibios_fixup_bus.

Since 96bde06a2df1b363206d3cdef53134b84ff37813 pcibios_fixup_bus's caller
pci_scan_child_bus is no longer marked __devinit resulting in this modpost
warning if PCI && !HOTPLUG:

  MODPOST vmlinux.o
WARNING: vmlinux.o(.text+0x158b9c): Section mismatch: reference to .init.text:pcibios_fixup_bus (between 'pci_scan_child_bus' and 'pci_scan_bus_parented')

Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
17 years ago[MIPS] Delete duplicate inclusion of <linux/delay.h>.
Ralf Baechle [Wed, 22 Aug 2007 21:48:08 +0000 (22:48 +0100)] 
[MIPS] Delete duplicate inclusion of <linux/delay.h>.

Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
17 years ago[MIPS] Polish <asm/edac.h>.
Ralf Baechle [Wed, 22 Aug 2007 21:42:18 +0000 (22:42 +0100)] 
[MIPS] Polish <asm/edac.h>.

Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
17 years ago[MIPS] IP22: Export sgi_gfxaddr for use by the Newport console driver.
Ralf Baechle [Wed, 22 Aug 2007 15:29:56 +0000 (16:29 +0100)] 
[MIPS] IP22: Export sgi_gfxaddr for use by the Newport console driver.

Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
17 years ago[MIPS] Maintain si_code field properly for FP exceptions
Thiemo Seufer [Wed, 22 Aug 2007 00:42:04 +0000 (01:42 +0100)] 
[MIPS] Maintain si_code field properly for FP exceptions

The appended patch adds code to update siginfo_t's si_code field. It
fixes e.g. a floating point overflow regression in the SBCL testsuite.

Signed-off-By: Thiemo Seufer <ths@linux-mips.org>
Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
17 years ago[MIPS] SMTC: Fix duplicate status dumps on NMI
Thiemo Seufer [Mon, 20 Aug 2007 22:43:49 +0000 (23:43 +0100)] 
[MIPS] SMTC: Fix duplicate status dumps on NMI

Also removes the while(1); loop by propagating the ATTRIB_NORET of die()
to nmi_exception_handler.

Signed-off-by: Thiemo Seufer <ths@networkno.de>
Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
17 years ago[MIPS] Unconditionally writeback and invalidate caches on kexec.
Nicolas Schichan [Mon, 20 Aug 2007 13:57:38 +0000 (15:57 +0200)] 
[MIPS] Unconditionally writeback and invalidate caches on kexec.

Signed-off-by: Nicolas Schichan <nschichan@freebox.fr>
Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
17 years ago[PATCH] rtc: Make rtc-rs5c348 driver hotplug-aware
Atsushi Nemoto [Sun, 19 Aug 2007 13:32:10 +0000 (22:32 +0900)] 
[PATCH] rtc: Make rtc-rs5c348 driver hotplug-aware

The rtc-rs5c348 SPI driver name doesn't match its module name, which
prevents it from properly hotplugging.  There is only one in-tree user
of its driver, which is fixed by this patch too.

Signed-off-by: Atsushi Nemoto <anemo@mba.ocn.ne.jp>
Acked-by: David Brownell <david-b@pacbell.net>
Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
17 years ago[MIPS] Fix gcc 3.3 warning.
Ralf Baechle [Thu, 16 Aug 2007 11:10:16 +0000 (12:10 +0100)] 
[MIPS] Fix gcc 3.3 warning.

  CC      arch/mips/kernel/cpu-bugs64.o
arch/mips/kernel/cpu-bugs64.c: In function 'align_mod':
arch/mips/kernel/cpu-bugs64.c:23: warning: asm operand 0 probably doesn't match constraints
arch/mips/kernel/cpu-bugs64.c:23: warning: asm operand 1 probably doesn't match constraints

Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
17 years ago[MIPS] Fix invalid semicolon after if statement
Ilpo Järvinen [Wed, 15 Aug 2007 22:03:01 +0000 (01:03 +0300)] 
[MIPS] Fix invalid semicolon after if statement

Signed-off-by: Ilpo Järvinen <ilpo.jarvinen@helsinki.fi>
Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
17 years ago[MIPS] Update Cobalt defconfig
Yoichi Yuasa [Tue, 7 Aug 2007 14:20:21 +0000 (23:20 +0900)] 
[MIPS] Update Cobalt defconfig

Signed-off-by: Yoichi Yuasa <yoichi_yuasa@tripeaks.co.jp>
Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
17 years ago[MIPS] Update workpad_defconfig
Yoichi Yuasa [Tue, 14 Aug 2007 11:34:52 +0000 (20:34 +0900)] 
[MIPS] Update workpad_defconfig

Signed-off-by: Yoichi Yuasa <yoichi_yuasa@tripeaks.co.jp>
Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
17 years ago[MIPS] Update tb0287_defconfig
Yoichi Yuasa [Tue, 14 Aug 2007 11:33:54 +0000 (20:33 +0900)] 
[MIPS] Update tb0287_defconfig

Signed-off-by: Yoichi Yuasa <yoichi_yuasa@tripeaks.co.jp>
Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
17 years ago[MIPS] Update tb0226_defconfig
Yoichi Yuasa [Tue, 14 Aug 2007 11:32:47 +0000 (20:32 +0900)] 
[MIPS] Update tb0226_defconfig

Signed-off-by: Yoichi Yuasa <yoichi_yuasa@tripeaks.co.jp>
Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
17 years ago[MIPS] Update tb0219_defconfig
Yoichi Yuasa [Tue, 14 Aug 2007 11:31:35 +0000 (20:31 +0900)] 
[MIPS] Update tb0219_defconfig

Signed-off-by: Yoichi Yuasa <yoichi_yuasa@tripeaks.co.jp>
Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
17 years ago[MIPS] Update mpc30x_defconfig
Yoichi Yuasa [Tue, 14 Aug 2007 11:30:21 +0000 (20:30 +0900)] 
[MIPS] Update mpc30x_defconfig

Signed-off-by: Yoichi Yuasa <yoichi_yuasa@tripeaks.co.jp>
Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
17 years ago[MIPS] Update e55_defconfig
Yoichi Yuasa [Tue, 14 Aug 2007 11:29:02 +0000 (20:29 +0900)] 
[MIPS] Update e55_defconfig

Signed-off-by: Yoichi Yuasa <yoichi_yuasa@tripeaks.co.jp>
Signed-off-by: Ralf Baechle <ralf@linux-mips.org>