Andrew Morton [Tue, 10 Aug 2004 13:00:41 +0000 (09:00 -0400)]
[PATCH] wrong mac address with netgear FA311 ethernet card
From: Mathieu LESNIAK <maverick@eskuel.net>
This patch corrects a problem with Netgear FA311
ethernet card (a cheap one). Without it, the MAC address is byte swapped
ie :
HWaddr 02:00:07:E3:E9:F5
instead of :
HWaddr 00:02:E3:07:F5:E9
(the correct MAC address vendor code for Netgear/LiteOn is 00:02:E3)
Simon Kelley [Tue, 10 Aug 2004 13:00:21 +0000 (09:00 -0400)]
[PATCH] Atmel wireless bigendian fix.
The following patch adds a couple of missing byteswaps and allows the
Atmel wireless driver to work in WEP mode on big-endian CPUs. (tested
on powerPC).
* Change the "version" OID to what it should be.
* Fix memory leaks - mgt_get_request always returns
* allocated memory for non-int OIDS (with an exception -
* keep reading). If the caller checks the return and itself
* returns, then it must free memory.
* However, it is possible to return from mgt_get_request
* early (!priv->mib). In this case, weird things can happen
* in isl_ioctl. Quick fix, at least to force an oops, is
* to set the union value to NULL. The real fix is to
* recode all mgt_get_request calls in isl_ioctl.
* We are handing back HANDLED even though the IRQ is not for us.
We also change device state.
This is plainly wrong.
AFAICT we also need to take the spin lock early.
Tested/running on UP/SMP for about a week now.
(Discovered on one of my lappies that had the X driver on the same IRQ)
(Proposed on Prism54 Devel with no objections)
* It seems that Viro patched prism54 with the following patch set :
http://www.kernel.org/pub/linux/kernel/v2.6/testing/cset/
cset-viro@www.linux.org.uk[torvalds]|ChangeSet|20040727040034|54764.txt
* I do not see any indication in any mailing list of this.
It would be nice if we could be informed of such changes :-)
Roger Luethi [Tue, 10 Aug 2004 02:57:16 +0000 (19:57 -0700)]
[PATCH] via-rhine: Really call rhine_power_init()
Without this patch, mainline via-rhine cannot wake the chip if some other
driver puts it to D3. The problem has hit quite a few people already.
This is a fix for the heisenbug with via-rhine refusing to work
sometimes. Patch "[9/9] Restructure reset code" contained a change made
necessary by patch [8/9]. Mainline merged [8/9] for 2.6.8 and is still
missing the fix, while -mm got it with [9/9].
Jesper Juhl provided crucial test data when no one else was able to
reproduce the symptoms.
Signed-off-by: Roger Luethi <rl@hellgate.ch> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
David S. Miller [Mon, 9 Aug 2004 14:28:42 +0000 (07:28 -0700)]
[SPARC64]: Fix spitfire bugs in tlb flush and copy_page changes.
- VISEntry clobbers %g3, so have to do %asi stuff
after we invoke it.
- Need to or in 0x10 to TLB flush addresses when
flushing in secondary context
- Context register restore using wrong address register
- Spitfire not so tolerant of membar in delay slot.
[BRIDGE]: Fix problems with filtering and defragmentation.
Dave, this patch from Bart De Schuymer <bdschuym@pandora.be> fixes problems
when using filtering and defragmentation. The bridge needs to enforce the
MTU restriction after going through the filtering chain not before, because
the incoming filter may have reassembled an IP packet, that then needs to
be fragmented on the output chain.
Signed-off-by: Stephen Hemminger <shemminger@osdl.org> Signed-off-by: David S. Miller <davem@redhat.com>
[IPSEC]: Add missing flow_cache_genid update to xfrm_policy_delete()
Signed-off-by: Eugene Surovegin <ebs@ebshome.net> Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au> Signed-off-by: David S. Miller <davem@redhat.com>
If you rmmod a network device that is in a vlan, the system hangs waiting
for the refcount to go to zero, because it is -1. The problem is that the
vlan notifier does an extra dev_put in NETDEV_UNREGISTER case of notifier.
Signed-off-by: Stephen Hemminger <shemminger@osdl.org> Signed-off-by: David S. Miller <davem@redhat.com>
Linus Torvalds [Mon, 9 Aug 2004 09:09:47 +0000 (02:09 -0700)]
Fix up sound driver proc-reading interfaces.
The old ones were not only hard to use, they were in fact
impossible or a low-level sound driver to get right, since
the core sound code didn't even export all the necessary
information.
Add the file offset to the /proc read interfaces, and make
them simpler to use. The core now does a offset updates, and
sanity-checks the values so that the low-level drivers don't
need to worry.
Anton Blanchard [Mon, 9 Aug 2004 06:56:59 +0000 (23:56 -0700)]
[PATCH] [ppc64] Fix SLB castout issue
The SLB rewrite removed a fix for a hard to hit bug, but the SFS guys
managed to hit it straight away. We need to check both r1 and PACAKSAVE
or else we could cast our kernel segment out when on the irq or softirq
stack.
David S. Miller [Mon, 9 Aug 2004 06:45:00 +0000 (23:45 -0700)]
[SPARC64]: Fix up copy_page just like clear_page.
- Do not save/restore existing TLB entries, that is
expensive, complicated, and does not really help
performance much at all.
- Only one unrolled loop for cheetah copy code.
- For spitfire, use %asi register for block commit
handling so we do not need two copies of the code.
Jens Axboe [Mon, 9 Aug 2004 03:28:06 +0000 (20:28 -0700)]
[PATCH] adjust SG reserved size automatically
The block layer SG should have the identical behaviour as SCSI sg when
it comes to SG_SET_RESERVED_SIZE - allow caller to specify a large
amount, truncate to largest we support, and return that with
SG_GET_RESERVED_SIZE. Currently we fail with -EINVAL if the value is
too large, I think the SCSI sg behaviour is more sane to use. This
one-liner fixes it up, please apply for 2.6.8.
Russell King [Sun, 8 Aug 2004 17:04:49 +0000 (18:04 +0100)]
[ARM] Fix sparse warnings in nwfpe.
This fixes sparse warnings in fpa11_cpdt (coprocessor data transfer)
instruction emulation. Note that pointers need to be cast to unsigned
long not unsigned int, so convert user registers to be unsigned long
type.
David S. Miller [Sun, 8 Aug 2004 12:55:28 +0000 (05:55 -0700)]
[SPARC64]: Make clear_user_page more leight weight.
- Do not save/restore existing TLB entries, that is
expensive, complicated, and does not really help
performance much at all.
- Only one block store per loop iteration, doing more
does not make things run any faster.
David S. Miller [Sun, 8 Aug 2004 12:53:23 +0000 (05:53 -0700)]
[SPARC64]: Always record actual PC when kernel profiling.
We used to play games reporting the callers
PC in certain functions such as the rwlock
and atomic_t routines. If anything, somethin
like this should be optional, not by default.
Linus Torvalds [Sun, 8 Aug 2004 07:07:55 +0000 (00:07 -0700)]
Remove ESPIPE logic from drivers, letting the VFS layer handle it instead.
This cleans up and simplifies drivers, and also allows us future
simplification in the VFS layer, since it removes knowledge about
internal VFS layer handling of "f_pos".
Linus Torvalds [Sat, 7 Aug 2004 16:43:47 +0000 (09:43 -0700)]
Make sysctl pass the pos pointer around properly.
Nobody ever fixed the big FIXME in sysctl - but we really need
to pass around the proper "loff_t *" to all the sysctl functions
if we want them to be well-behaved wrt the file pointer position.
This is all preparation for making direct f_pos accesses go
away.
Alexander Viro [Sat, 7 Aug 2004 12:15:08 +0000 (05:15 -0700)]
[PATCH] mpoa patch done right
- conversion to seq_file, overflow fixes
- qos_parse sanitized (3 sscanf calls instead of insane manual parsing)
leaks plugged
code cleaned up
We still have serious races, but they are general problem in atm code - it
has no locking whatsoever for any of the lists (mpcs, qos_head, per-client
lists).
Some new sysfs macros declare a store_purr() function that never gets used,
which makes a compiler warning happen. Suppress the warning with the used
attribute.
Signed-off-by: Dave Hansen <haveblue@us.ibm.com> Signed-off-by: Anton Blanchard <anton@samba.org> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
Anton Blanchard [Sat, 7 Aug 2004 07:57:15 +0000 (00:57 -0700)]
[PATCH] ppc64: set SMT thread priority to medium for all exceptions
We need to set the thread priority to medium when entering all exceptions.
We may have been executing in low priority (eg the idle loop), but
definitely do not want to remain in that priority for the duration of the
exception (eg a device interrupt).
Signed-off-by: Anton Blanchard <anton@samba.org> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
Anton Blanchard [Sat, 7 Aug 2004 07:57:04 +0000 (00:57 -0700)]
[PATCH] ppc64: avoid speculative execution after rfid
Due to speculative execution, a CPU may execute some instructions after the
rfid. This makes profiles confusing, since profiling ticks could end up in
those instructions following the rfid that are never executed.
Add a branch to self after each rfid to avoid this.
Signed-off-by: Anton Blanchard <anton@samba.org> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
Anton Blanchard [Sat, 7 Aug 2004 07:56:42 +0000 (00:56 -0700)]
[PATCH] ppc64: various XICS fixes
- Remove unused includes.
- Be consistent about printing irq numbers, avoid a mix of decimal and
hexadecimal.
- Remove prototypes from xics.c, they should be in xics.h.
- Remove infinite loop on failure, and instead use panic. Panic has a chance to
log the error message on the LED panel and reboot the box, a while(1) loop
does not.
- xics isnt compiled for iseries any more, so no need for the
CONFIG_PPC_PSERIES hack.
Signed-off-by: Anton Blanchard <anton@samba.org> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
John Engel [Sat, 7 Aug 2004 07:56:31 +0000 (00:56 -0700)]
[PATCH] ppc64: 32-bit ptrace geteventmsg fix
Here's a fix for the 32-bit PTRACE_GETEVENTMSG ptrace call that handles the
passing of a 32-bit user address. Please apply, thanks.
Signed-off-by: John Engel <jhe@us.ibm.com> Signed-off-by: Anton Blanchard <anton@samba.org> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
Paul Mackerras [Sat, 7 Aug 2004 07:56:22 +0000 (00:56 -0700)]
[PATCH] ppc64: pci_dn cleanups
This patch just cleans up arch/ppc64/kernel/pci_dn.c a bit, including:
- remove it from the iSeries build completely
- small changes to Makefile
- remove the "post" parameter from traverse_pci_devices as
noone used it
- make traverse_all_pci_devices static
- remove CONFIG_PPC_PSERIES tests as we no longer build for iSeries
- some reformatting (closer to "standard")
- remove some of pointer casts
This has been built (with default config) on pSeries and pmac and built and
run on iSeries.
Signed-off-by: Stephen Rothwell <sfr@canb.auug.org.au> Signed-off-by: Paul Mackerras <paulus@samba.org> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
Thomas Spatzier [Sat, 7 Aug 2004 07:55:59 +0000 (00:55 -0700)]
[PATCH] s390: qeth performance.
qeth network driver performance improvements. The ping time on the
HiperSockets interface drops from 250 usecs to 50 usecs and the 1 bytes
request/response test improves from 70000 to 110000 transactions.
Signed-off-by: Martin Schwidefsky <schwidefsky@de.ibm.com> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
Cornelia Huck [Sat, 7 Aug 2004 07:55:13 +0000 (00:55 -0700)]
[PATCH] s390: common i/o layer changes.
common i/o layer changes:
- Set state of a disconnected device to offline before calling
ccw_device_online, otherwise the device doesn't come up again.
- Check for channel end when trying to find out if basic sense
was successful.
- Fix error handling in new_channel_path.
Signed-off-by: Martin Schwidefsky <schwidefsky@de.ibm.com> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
[PATCH] sparc32: gcc-3.3 macro parenthesization fix for memcpy.S
From: Art Haas <ahaas@airmail.net>
The 1.3->1.4 changes to the arch/sparc/lib/copy_user.S file added parenthesis
to a number of macros within that file. The BK changlog associated with this
change indicate the change was to make the file work with gcc-3.3.
When looking at the changes made, I see that similar macros exist in memcpy.S
as well, so would a patch adding parens to that file be worthwhile? Also,
just what was the problem with gcc-3.3 that was resolved by adding the
parenthesis? Macro mis-expansion I'm guessing.
Signed-off-by: Art Haas <ahaas@airmail.net> Signed-off-by: William Irwin <wli@holomorphy.com> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
cache_decay_ticks needs to be defined in order for the kernel to link. This
placeholder is inaccurate, however, other, more grave SMP issues need to be
addressed first.
Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org>