Lennert Buytenhek [Wed, 23 Nov 2005 11:49:51 +0000 (12:49 +0100)]
[PATCH] pm3386: add hook for setting carrier
Add a pm3386 hook for disabling/enabling the SERDES carrier, so that
we can disable it when the interface is administratively downed, and
enable it when it is upped.
Signed-off-by: Lennert Buytenhek <buytenh@wantstofly.org>
Signed-off-by: Jeff Garzik <jgarzik@pobox.com>
Lennert Buytenhek [Wed, 23 Nov 2005 11:49:47 +0000 (12:49 +0100)]
[PATCH] pm3386: add hook for setting MAC address
When we reset the pm3386, it loses its internally stored MAC addresses
that were programmed into it by the bootloader (and are used by the
hardware for the generation of PAUSE frames.) Add a hook to allow
setting these addresses so that we can program them back by hand.
Signed-off-by: Lennert Buytenhek <buytenh@wantstofly.org>
Signed-off-by: Jeff Garzik <jgarzik@pobox.com>
Lennert Buytenhek [Wed, 23 Nov 2005 11:49:43 +0000 (12:49 +0100)]
[PATCH] ixp2000: report MAC addresses for each port on init
After initialising, report the MAC address that we're using for
each port.
Signed-off-by: Lennert Buytenhek <buytenh@wantstofly.org>
Signed-off-by: Jeff Garzik <jgarzik@pobox.com>
Lennert Buytenhek [Wed, 23 Nov 2005 11:49:40 +0000 (12:49 +0100)]
[PATCH] enp2611: report link up/down events
Report carrier going up/down.
Signed-off-by: Lennert Buytenhek <buytenh@wantstofly.org>
Signed-off-by: Jeff Garzik <jgarzik@pobox.com>
Lennert Buytenhek [Wed, 23 Nov 2005 11:49:35 +0000 (12:49 +0100)]
[PATCH] enp2611: use 'dev' in link status timer
We assign nds[i] to a local variable 'dev', which we never use
afterwards. Use the local variable instead.
Signed-off-by: Lennert Buytenhek <buytenh@wantstofly.org>
Signed-off-by: Jeff Garzik <jgarzik@pobox.com>
Lennert Buytenhek [Wed, 23 Nov 2005 11:49:30 +0000 (12:49 +0100)]
[PATCH] enp2611: don't check netif_running() in link status timer
Even after an interface has gone !netif_running(), we still want to
catch the 'carrier went down' event for our internal bookkeeping.
Signed-off-by: Lennert Buytenhek <buytenh@wantstofly.org>
Signed-off-by: Jeff Garzik <jgarzik@pobox.com>
Lennert Buytenhek [Wed, 23 Nov 2005 11:49:25 +0000 (12:49 +0100)]
[PATCH] ixp2000: use netif_rx_schedule_test
The sky2 driver introduced netif_rx_schedule_test(). This is
exactly what we need, so remove our local version of this function
(which was called netif_rx_schedule_prep_notup) and use the generic
one instead.
Signed-off-by: Lennert Buytenhek <buytenh@wantstofly.org>
Signed-off-by: Jeff Garzik <jgarzik@pobox.com>
Lennert Buytenhek [Wed, 23 Nov 2005 11:49:21 +0000 (12:49 +0100)]
[PATCH] caleb/pm3386: include proper header files
Make caleb.c and pm3386.c include their own header files, to catch
incorrect prototype definitions.
Signed-off-by: Lennert Buytenhek <buytenh@wantstofly.org>
Signed-off-by: Jeff Garzik <jgarzik@pobox.com>
Lennert Buytenhek [Wed, 23 Nov 2005 11:49:15 +0000 (12:49 +0100)]
[PATCH] pm3386: remove unnecessary udelays
Remove a number of unnecessary udelay() calls.
Signed-off-by: Lennert Buytenhek <buytenh@wantstofly.org>
Signed-off-by: Jeff Garzik <jgarzik@pobox.com>
Lennert Buytenhek [Wed, 23 Nov 2005 11:49:10 +0000 (12:49 +0100)]
[PATCH] pm3386: zero stats properly
Zero our stats structure properly.
Signed-off-by: Lennert Buytenhek <buytenh@wantstofly.org>
Signed-off-by: Jeff Garzik <jgarzik@pobox.com>
Lennert Buytenhek [Wed, 23 Nov 2005 11:49:05 +0000 (12:49 +0100)]
[PATCH] ixp2000: register netdevices last
Do not register our netdevices with the kernel until we've actually
finished setting up the hardware and microcode.
Signed-off-by: Lennert Buytenhek <buytenh@wantstofly.org>
Signed-off-by: Jeff Garzik <jgarzik@pobox.com>
shemminger@osdl.org [Thu, 24 Nov 2005 06:00:54 +0000 (22:00 -0800)]
[PATCH] sk98lin: remove /proc interface
Remove device specific proc interface. It doesn't handle
renames correctly; it ain't worth fixing.
Signed-off-by: Stephen Hemminger <shemminger@osdl.org>
Signed-off-by: Jeff Garzik <jgarzik@pobox.com>
shemminger@osdl.org [Thu, 24 Nov 2005 06:00:53 +0000 (22:00 -0800)]
[PATCH] sk98lin: remove redundant fields in device info
Shrink size of per device data by removing redundant fields
or things that are only used at boot up.
Signed-off-by: Stephen Hemminger <shemminger@osdl.org>
Signed-off-by: Jeff Garzik <jgarzik@pobox.com>
shemminger@osdl.org [Thu, 24 Nov 2005 06:00:52 +0000 (22:00 -0800)]
[PATCH] sk98lin: allow ethtool checksum on/off per port
Allow control of checksumming parameters via ethtool.
Signed-off-by: Stephen Hemminger <shemminger@osdl.org>
Signed-off-by: Jeff Garzik <jgarzik@pobox.com>
Jeff Garzik [Thu, 1 Dec 2005 07:22:47 +0000 (02:22 -0500)]
Merge branch 'upstream-fixes'
shemminger@osdl.org [Thu, 24 Nov 2005 06:00:51 +0000 (22:00 -0800)]
[PATCH] sk98lin: avoid message confusion with skge
Avoid possible confusion between skge and sk98lin driver by
tagging messages properly.
Signed-off-by: Stephen Hemminger <shemminger@osdl.org>
Signed-off-by: Jeff Garzik <jgarzik@pobox.com>
shemminger@osdl.org [Thu, 24 Nov 2005 06:00:50 +0000 (22:00 -0800)]
[PATCH] sk98lin: add permanent address support
Add permanent address and link status support via ethtool.
Signed-off-by: Stephen Hemminger <shemminger@osdl.org>
Signed-off-by: Jeff Garzik <jgarzik@pobox.com>
shemminger@osdl.org [Thu, 24 Nov 2005 06:00:49 +0000 (22:00 -0800)]
[PATCH] sk98lin: fix checksumming code
Remove code from sk98lin that does it's own checksum validation.
This code is incorrect when dealing with nested protocols like
VLAN's, and it is better to use regular receive code path to
handle hardware checksum.
Signed-off-by: Stephen Hemminger <shemminger@osdl.org>
Signed-off-by: Jeff Garzik <jgarzik@pobox.com>
shemminger@osdl.org [Wed, 30 Nov 2005 19:45:23 +0000 (11:45 -0800)]
[PATCH] sky2: update version number
Update version number and print version in boot message.
Signed-off-by: Stephen Hemminger <shemminger@osdl.org>
Signed-off-by: Jeff Garzik <jgarzik@pobox.com>
shemminger@osdl.org [Wed, 30 Nov 2005 19:45:22 +0000 (11:45 -0800)]
[PATCH] sky2: use pci_register_driver
Switch to using pci_register_driver as per current convention.
Signed-off-by: Stephen Hemminger <shemminger@osdl.org>
Signed-off-by: Jeff Garzik <jgarzik@pobox.com>
shemminger@osdl.org [Wed, 30 Nov 2005 19:45:21 +0000 (11:45 -0800)]
[PATCH] sky2: remove pci-express hacks
Eliminate special case tuning for PCI-Express. This code
causes receive hangs and doesn't help performance much anyway.
Signed-off-by: Stephen Hemminger <shemmnger@osdl.org>
Signed-off-by: Jeff Garzik <jgarzik@pobox.com>
shemminger@osdl.org [Wed, 30 Nov 2005 19:45:20 +0000 (11:45 -0800)]
[PATCH] sky2: byteorder annotation
Use byteorder annotation for hardware structures
Signed-off-by: Stephen Hemminger <shemminger@osdl.org>
Signed-off-by: Jeff Garzik <jgarzik@pobox.com>
shemminger@osdl.org [Wed, 30 Nov 2005 19:45:19 +0000 (11:45 -0800)]
[PATCH] sky2: dual port tx completion
Sometimes on dual port cards, one tx complete may cover both
ports. To handle that rearrange poll routine to lookup at
end.
Signed-off-by: Stephen Hemminger <shemminger@osdl.org>
Signed-off-by: Jeff Garzik <jgarzik@pobox.com>
shemminger@osdl.org [Wed, 30 Nov 2005 19:45:18 +0000 (11:45 -0800)]
[PATCH] sky2: race with MTU change
Avoid possible race conditions when doing MTU and change and shutdown.
Signed-off-by: Stephen Hemminger <shemminger@osdl.org>
Signed-off-by: Jeff Garzik <jgarzik@pobox.com>
shemminger@osdl.org [Wed, 30 Nov 2005 19:45:17 +0000 (11:45 -0800)]
[PATCH] sky2: change netif_rx_schedule_test to __netif_schedule_prep
I didn't like the name netif_rx_schedule_test(), in earlier patches
and changed to __netif_rx_schedule_prep to be more consistent.
Signed-off-by: Stephen Hemminger <shemminger@osdl.org>
Signed-off-by: Jeff Garzik <jgarzik@pobox.com>
shemminger@osdl.org [Wed, 30 Nov 2005 19:45:16 +0000 (11:45 -0800)]
[PATCH] sky2: handle DMA boundary crossing
Handle the case of DMA spanning 32 bit boundary.
Signed-off-by: Stephen Hemminger <shemminger@osdl.org>
Signed-off-by: Jeff Garzik <jgarzik@pobox.com>
shemminger@osdl.org [Wed, 30 Nov 2005 19:45:15 +0000 (11:45 -0800)]
[PATCH] sky2: add Yukon-EC ultra support
Add support for Yukon-EC Ultra chip as implemented in SysKonnect's
driver version 8.26.
Signed-off-by: Stephen Hemminger <shemminger@osdl.org>
Signed-off-by: Jeff Garzik <jgarzik@pobox.com>
shemminger@osdl.org [Wed, 30 Nov 2005 19:45:14 +0000 (11:45 -0800)]
[PATCH] sky2: improve receive performance
Changes to receive side processing:
* bigger receive ring
* clean up polling loop
Signed-off-by: Stephen Hemminger <shemminger@osdl.org>
Signed-off-by: Jeff Garzik <jgarzik@pobox.com>
shemminger@osdl.org [Wed, 30 Nov 2005 19:45:13 +0000 (11:45 -0800)]
[PATCH] sky2: fix receive flush/pause issues
Fix issues with pause and flush. This code works on
all chip versions tested.
Signed-off-by: Stephen Hemminger <shemminger@osdl.org>
Signed-off-by: Jeff Garzik <jgarzik@pobox.com>
shemminger@osdl.org [Wed, 30 Nov 2005 19:45:12 +0000 (11:45 -0800)]
[PATCH] sky2: add MII support
Add MII ioctl interface to sky2.
Signed-off-by: Stephen Hemminger <shemminger@osdl.org>
Signed-off-by: Jeff Garzik <jgarzik@pobox.com>
shemminger@osdl.org [Wed, 30 Nov 2005 19:45:11 +0000 (11:45 -0800)]
[PATCH] sky2: eliminate special case for EC-A1
Eliminate special case for EC-A1. The overhead isn't so
great that having config option is worth it.
Signed-off-by: Stephen Hemminger <shemminger@osdl.org>
Signed-off-by: Jeff Garzik <jgarzik@pobox.com>
Jesse Brandeburg [Wed, 30 Nov 2005 03:23:59 +0000 (19:23 -0800)]
[PATCH] e1000: fix for dhcp issue
Parse outgoing packets in e1000_transfer_dhcp_info as raw packet even if
protocol bits are set. pump, for instance causes kernel panic on some
systems, if parsed via udp header.
Thanks to Derrell Lipman <Derrell.Lipman@BacklotTech.com> for reporting and
testing.
Signed-off-by: Jesse Brandeburg <jesse.brandeburg@intel.com>
Cc: Jeff Garzik <jgarzik@pobox.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Jeff Garzik <jgarzik@pobox.com>
Jeff Garzik [Thu, 1 Dec 2005 07:08:27 +0000 (02:08 -0500)]
Merge branch 'for-jeff' of git://electric-eye.fr.zoreil.com/home/romieu/linux-2.6
Jeff Garzik [Thu, 1 Dec 2005 06:54:02 +0000 (01:54 -0500)]
Merge branch 'master'
Linus Torvalds [Thu, 1 Dec 2005 06:25:15 +0000 (22:25 -0800)]
Linux v2.6.15-rc4
Steve French [Wed, 30 Nov 2005 23:56:59 +0000 (15:56 -0800)]
Merge ... /linux/kernel/git/torvalds/linux-2.6.git
Francois Romieu [Wed, 30 Nov 2005 21:35:39 +0000 (22:35 +0100)]
b44: increase version number
Signed-off-by: Francois Romieu <romieu@fr.zoreil.com>
Francois Romieu [Wed, 30 Nov 2005 21:32:13 +0000 (22:32 +0100)]
b44: early return in dev->do_ioctl when the device is not up
The device has not gone through a whole reset/init sequence until the
device is up. Accessing the mii interface before this point is not
safe.
Signed-off-by: Francois Romieu <romieu@fr.zoreil.com>
Mark Lord [Wed, 30 Nov 2005 21:30:23 +0000 (22:30 +0100)]
b44: missing netif_wake_queue() in b44_open()
This patch fixes a problem plaguing Dell notebooks with built-in b44
ethernet: The driver refuses to transmit packets of any kind until after
the first 5-second tx_timeout occurs. This bug causes DHCP negotiation to
fail (timeout) during installation of Ubuntu Linux.
Signed-off-by: Mark Lord <lkml@rtr.ca>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Linus Torvalds [Wed, 30 Nov 2005 18:22:30 +0000 (10:22 -0800)]
Revert "[PATCH] pci_ids.h: remove duplicate entries"
This reverts commit
c9d6073fb3cda856132dd544d537679f9715436c.
It was totally bogus.
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
Linus Torvalds [Wed, 30 Nov 2005 17:35:19 +0000 (09:35 -0800)]
VM: add "vm_insert_page()" function
This is what a lot of drivers will actually want to use to insert
individual pages into a user VMA. It doesn't have the old PageReserved
restrictions of remap_pfn_range(), and it doesn't complain about partial
remappings.
The page you insert needs to be a nice clean kernel allocation, so you
can't insert arbitrary page mappings with this, but that's not what
people want.
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
Linus Torvalds [Wed, 30 Nov 2005 16:49:20 +0000 (08:49 -0800)]
Merge /pub/scm/linux/kernel/git/gregkh/usb-2.6
Egbert Eich [Wed, 30 Nov 2005 14:32:59 +0000 (15:32 +0100)]
[PATCH] SiS DRM: Fix possible NULL dereference
This fixes a NULL pointer reference in DRM. The SiS driver tries to
allocate a big chunk of memory, but the return value is never checked.
Reported in Novell bugzilla #132271:
https://bugzilla.novell.com/show_bug.cgi?id=132271
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
Steve French [Wed, 30 Nov 2005 06:38:43 +0000 (22:38 -0800)]
[CIFS] For previous fix, mode on mkdir needed S_IFDIR left out.
Signed-off-by: Steve French <sfrench@us.ibm.com>
David Brownell [Mon, 28 Nov 2005 16:40:38 +0000 (08:40 -0800)]
[PATCH] USB: ehci fixups
Rename the EHCI "reset" routine so it better matches what it does (setup);
and move the one-time data structure setup earlier, before doing anything
that implicitly relies on it having been completed already.
From: David Brownell <david-b@pacbell.net>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
Benjamin Herrenschmidt [Thu, 24 Nov 2005 22:59:46 +0000 (09:59 +1100)]
[PATCH] USB: Fix USB suspend/resume crasher (#2)
This patch closes the IRQ race and makes various other OHCI & EHCI code
path safer vs. suspend/resume.
I've been able to (finally !) successfully suspend and resume various
Mac models, with or without USB mouse plugged, or plugging while asleep,
or unplugging while asleep etc... all without a crash.
Alan, please verify the UHCI bit I did, I only verified that it builds.
It's very simple so I wouldn't expect any issue there. If you aren't
confident, then just drop the hunks that change uhci-hcd.c
I also made the patch a little bit more "safer" by making sure the store
to the interrupt register that disables interrupts is not posted before
I set the flag and drop the spinlock.
Without this patch, you cannot reliably sleep/wakeup any recent Mac, and
I suspect PCs have some more sneaky issues too (they don't frankly crash
with machine checks because x86 tend to silently swallow PCI errors but
that won't last afaik, at least PCI Express will blow up in those
situations, but the USB code may still misbehave).
Signed-off-by: Benjamin Herrenschmidt <benh@kernel.crashing.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
Dave Jones [Mon, 28 Nov 2005 18:44:52 +0000 (13:44 -0500)]
[PATCH] Additional device ID for Conexant AccessRunner USB driver
Reported as working in Fedora bugzilla by Petr.
From: Petr Tuma <petr.tuma@mff.cuni.cz>
Signed-off-by: Dave Jones <davej@redhat.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
Alan Stern [Mon, 28 Nov 2005 20:22:55 +0000 (15:22 -0500)]
[PATCH] USB: documentation update
This patch (as611) fixes a minor mistake and misspelling in the USB
documentation.
Signed-off-by: Alan Stern <stern@rowland.harvard.edu>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
Grant Coady [Thu, 24 Nov 2005 09:41:06 +0000 (20:41 +1100)]
[PATCH] pci_ids.h: remove duplicate entries
G'day Albert, Andrew,
commit
4fb80634d30f5e639a92b78c8f215f96a61ba8c7
Author: Albert Lee <albertcc@tw.ibm.com>
Date: Thu May 12 15:49:21 2005 -0400
duplicates symbols already appearing in pci_ids.h, appended patch
removes them again :o)
From: Grant Coady <gcoady@gmail.com>
pci_ids: commit
4fb80634d30f5e639a92b78c8f215f96a61ba8c7 duplicated a
couple existing symbols in pci_ids.h, remove them.
Signed-off-by: Grant Coady <gcoady@gmail.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
Jean Delvare [Tue, 29 Nov 2005 21:27:14 +0000 (22:27 +0100)]
[PATCH] hwmon: w83792d fix unused fan pins
1. This patch add check for fan4,5,6,7 and do not create device file
if their pins are not configured as fan.
2. Fix the issue that can not set fan divisor to 128.
3. Fix the index out of bounds bug in w83792d_detect function.
Signed-off-by: Yuan Mu <ymu@winbond.com.tw>
Signed-off-by: Jean Delvare <khali@linux-fr.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
Steve French [Wed, 30 Nov 2005 05:22:19 +0000 (21:22 -0800)]
[CIFS] Missing parenthesis and typo in previous fix
Signed-off-by: Steve French <sfrench@us.ibm.com>
Steve French [Wed, 30 Nov 2005 04:56:07 +0000 (20:56 -0800)]
Merge ... /linux/kernel/git/torvalds/linux-2.6.git
Steve French [Wed, 30 Nov 2005 04:55:11 +0000 (20:55 -0800)]
[CIFS] Fix umount --force to wake up the pending response queue, not just
the request queue. Also periodically wakeup response_q so threads can
check if stuck requests have timed out. Workaround Windows server illegal smb
length on transact2 findfirst response.
Signed-off-by: Steve French <sfrench@us.ibm.com>
Steve French [Wed, 30 Nov 2005 04:20:10 +0000 (20:20 -0800)]
[CIFS] Fix missing permission check on setattr when noperm mount option is
disabled. Also set mode, uid, gid better on mkdir and create for the
case when Unix Extensions is not enabled and setuids is enabled. This is
necessary to fix the hole in which chown could be allowed for non-root
users in some cases if root mounted, and also to display the mode and uid
properly in some cases.
Signed-off-by: Steve French <sfrench@us.ibm.com>
Linus Torvalds [Wed, 30 Nov 2005 04:17:08 +0000 (20:17 -0800)]
Merge /linux/kernel/git/paulus/powerpc-merge
Mark Fortescue [Wed, 30 Nov 2005 03:34:44 +0000 (19:34 -0800)]
[PATCH] fbdev: cg3fb: Kconfig fix
A cut and past error regarding the CG3 frame buffer needs to be fixed. It
also affects Creator/Creator3D/Elite3D.
Signed-off-by: Antonino Daplas <adaplas@pol.net>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
Antonino A. Daplas [Wed, 30 Nov 2005 03:34:43 +0000 (19:34 -0800)]
[PATCH] fbdev: cirrusfb: Driver cleanup and bug fixes
- pseudo_palette is only 16 entries long
- the pseudo_palette, if using the generic drawing functions, must always be
u32 regardless of bpp
- the fillrect accelerator is using region->color regardless of the visual.
region->color is the index to the pseudo_palette if visual is truecolor
Signed-off-by: Antonino Daplas <adaplas@pol.net>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
Shaohua Li [Wed, 30 Nov 2005 03:34:42 +0000 (19:34 -0800)]
[PATCH] setting irq affinity is broken in ia32 with MSI enabled
Setting irq affinity stops working when MSI is enabled. With MSI, move_irq
is empty, so we can't change irq affinity. It appears a typo in Ashok's
original commit for this issue. X86_64 actually is using move_native_irq.
Signed-off-by: Shaohua Li <shaohua.li@intel.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
Roman Zippel [Wed, 30 Nov 2005 03:34:41 +0000 (19:34 -0800)]
[PATCH] hfsplus: don't modify journaled volume
Access to a journaled HFS+ volume is not officially supported under Linux, so
mount such a volume read-only, but users can override this behaviour using the
"force" mount option.
The minimum requirement to relax this check is to at least check that the
journal is empty and so nothing needs to be replayed to make sure the volume
is consistent.
Signed-off-by: Roman Zippel <zippel@linux-m68k.org>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
Jeff Mahoney [Wed, 30 Nov 2005 03:34:39 +0000 (19:34 -0800)]
[PATCH] reiserfs: handle cnode allocation failure gracefully
If an external device is used for a journal, by default it will use the
entire device. The reiserfs journal code allocates structures per journal
block when it mounts the file system. If the journal device is too large,
and memory cannot be allocated for the structures, it will continue and
ultimately panic when it can't pull one off the free list.
This patch handles the allocation failure gracefully and prints an error
message at mount time.
Changes: Updated error message to be more descriptive to the user.
Discussed and approved on ReiserFS Mailing List, Nov 28.
Signed-off-by: Jeff Mahoney <jeffm@suse.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
Paolo Galtieri [Wed, 30 Nov 2005 03:34:38 +0000 (19:34 -0800)]
[PATCH] ppc: fix floating point register corruption
I recently discovered a bug on PPC which causes the floating point
registers to get corrupted when CONFIG_PREEMPT=y.
The problem occurred while running a multi threaded Java application that
does floating point. The problem could be reproduced in anywhere from 2 to
6 hours. With the patch I have included below it ran for over a week
without failure.
Signed-off-by: Paolo Galtieri <pgaltieri@mvista.com>
Cc: Kumar Gala <galak@gate.crashing.org>
Cc: Matt Porter <mporter@kernel.crashing.org>
Cc: Tom Rini <trini@kernel.crashing.org>
Cc: Benjamin Herrenschmidt <benh@kernel.crashing.org>
Cc: Paul Mackerras <paulus@samba.org>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
Pavel Machek [Wed, 30 Nov 2005 03:34:37 +0000 (19:34 -0800)]
[PATCH] fix swsusp on machines not supporting S4
Fix swsusp on machines not supporting S4. With recent changes, it is not
possible to trigger it using /sys filesystem. Swsusp does not really need
any support from low-level code, it is possible to reboot or halt at the
end of suspend.
Signed-off-by: Pavel Machek <pavel@suse.cz>
Cc: "Brown, Len" <len.brown@intel.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
Thierry Vignaud [Wed, 30 Nov 2005 03:34:35 +0000 (19:34 -0800)]
[PATCH] fix rebooting on HP nc6120 laptop
Anne NICOLAS <anne.nicolas@mandriva.com> and Andres Kaaber
<andres.kaaber@rescue.ee> reported their HP laptop didn't reboot smoothly.
Signed-off-by: Thierry Vignaud <tvignaud@mandriva.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
David Gibson [Wed, 30 Nov 2005 03:34:32 +0000 (19:34 -0800)]
[PATCH] Fix crash when ptrace poking hugepage areas
set_page_dirty() will not cope with being handed a page * which is part of
a compound page, but not the master page in that compound page. This case
can occur via access_process_vm() if you attemp to write to another
process's hugepage memory area using ptrace() (causing an oops or hang).
This patch fixes the bug by only calling set_page_dirty() from
access_process_vm() if the page is not a compound page. We already use a
similar fix in bio_set_pages_dirty() for the case of direct io to
hugepages.
Signed-off-by: David Gibson <david@gibson.dropbear.id.au>
Acked-by: William Irwin <wli@holomorphy.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
Matt Helsley [Wed, 30 Nov 2005 03:34:31 +0000 (19:34 -0800)]
[PATCH] process events connector: uid_t gid_t size issues
The uid_t and gid_t fields appear to present a 32/64-bit userspace/kernel
problem for some archs.
This patch addresses the problem by fixing the size to the largest size for
uid_t/gid_t used in the kernel. This preserves the total size of the event
structure while ensuring that the layouts of the ID change event match in
32 and 64-bit kernels and applications.
Signed-off-by: Matt Helsley <matthltc@us.ibm.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
Olaf Hering [Tue, 29 Nov 2005 13:04:05 +0000 (14:04 +0100)]
[PATCH] powerpc: prevent stack corruption in call_prom_ret
Use the correct pointer to clear the memory of the return values,
to prevent stack corruption in the callers stackframe.
Signed-off-by: Olaf Hering <olh@suse.de>
Signed-off-by: Paul Mackerras <paulus@samba.org>
Paul Mackerras [Wed, 30 Nov 2005 02:20:54 +0000 (13:20 +1100)]
powerpc: Fix bug causing FP registers corruption on UP + preempt
This fixes a bug noticed by Paolo Galtieri and fixed for ARCH=ppc in
the previous commit (ppc: fix floating point register corruption).
This fixes the arch/powerpc code by adding preempt_disable/enable,
and also cleans it up a bit by pulling out the code that discards
any lazily-switched CPU register state into a new function, rather
than having that code repeated in three places.
Signed-off-by: Paul Mackerras <paulus@samba.org>
Paolo Galtieri [Tue, 29 Nov 2005 22:26:47 +0000 (14:26 -0800)]
[PATCH] ppc: fix floating point register corruption
I recently discovered a bug on PPC which causes the floating point
registers to get corrupted when CONFIG_PREEMPT=y.
The problem occurred while running a multi threaded Java application that
does floating point. The problem could be reproduced in anywhere from 2 to
6 hours. With the patch I have included below it ran for over a week
without failure.
Signed-off-by: Paolo Galtieri <pgaltieri@mvista.com>
Cc: Kumar Gala <galak@gate.crashing.org>
Cc: Matt Porter <mporter@kernel.crashing.org>
Cc: Tom Rini <trini@kernel.crashing.org>
Cc: Benjamin Herrenschmidt <benh@kernel.crashing.org>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Paul Mackerras <paulus@samba.org>
Linus Torvalds [Wed, 30 Nov 2005 01:32:08 +0000 (17:32 -0800)]
Merge /pub/scm/linux/kernel/git/davem/net-2.6
Trond Myklebust [Wed, 30 Nov 2005 00:27:22 +0000 (19:27 -0500)]
[PATCH] VM: Fix typos in get_locked_pte
Signed-off-by: Trond Myklebust <Trond.Myklebust@netapp.com>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
Adrian Bunk [Wed, 30 Nov 2005 00:28:56 +0000 (16:28 -0800)]
[IPV6]: make two functions static
This patch makes two needlessly global functions static.
Signed-off-by: Adrian Bunk <bunk@stusta.de>
Signed-off-by: David S. Miller <davem@davemloft.net>
Adrian Bunk [Wed, 30 Nov 2005 00:28:18 +0000 (16:28 -0800)]
[NETFILTER] ipv4: small cleanups
This patch contains the following cleanups:
- make needlessly global code static
- ip_conntrack_core.c: ip_conntrack_flush() -> ip_conntrack_flush(void)
Signed-off-by: Adrian Bunk <bunk@stusta.de>
Signed-off-by: David S. Miller <davem@davemloft.net>
Adrian Bunk [Wed, 30 Nov 2005 00:27:20 +0000 (16:27 -0800)]
[IPV4]: make two functions static
This patch makes two needlessly global functions static.
Signed-off-by: Adrian Bunk <bunk@stusta.de>
Signed-off-by: David S. Miller <davem@davemloft.net>
Arjan van de Ven [Wed, 30 Nov 2005 00:21:38 +0000 (16:21 -0800)]
[NET]: Add const markers to various variables.
the patch below marks various variables const in net/; the goal is to
move them to the .rodata section so that they can't false-share
cachelines with things that get written to, as well as potentially
helping gcc a bit with optimisations. (these were found using a gcc
patch to warn about such variables)
Signed-off-by: Arjan van de Ven <arjan@infradead.org>
Signed-off-by: David S. Miller <davem@davemloft.net>
Chas Williams [Wed, 30 Nov 2005 00:17:11 +0000 (16:17 -0800)]
[ATM]: [adummy] dummy ATM driver (similar to net/dummy)
Signed-off-by: Chas Williams <chas@cmf.nrl.navy.mil>
Signed-off-by: David S. Miller <davem@davemloft.net>
Stanislaw Gruszka [Wed, 30 Nov 2005 00:16:41 +0000 (16:16 -0800)]
[ATM]: deregistration removes device from atm_devs list immediately
atm_dev_deregister() removes device from atm_dev list immediately to
prevent operations on a phantom device. Decision to free device based
only on ->refcnt now. Remove shutdown_atm_dev() use atm_dev_deregister()
instead. atm_dev_deregister() also asynchronously releases all vccs
related to device.
Signed-off-by: Stanislaw Gruszka <stf_xl@wp.pl>
Signed-off-by: Chas Williams <chas@cmf.nrl.navy.mil>
Signed-off-by: David S. Miller <davem@davemloft.net>
Stanislaw Gruszka [Wed, 30 Nov 2005 00:16:21 +0000 (16:16 -0800)]
[ATM]: avoid race conditions related to atm_devs list
Use semaphore to protect atm_devs list, as no one need access to it from
interrupt context. Avoid race conditions between atm_dev_register(),
atm_dev_lookup() and atm_dev_deregister(). Fix double spin_unlock() bug.
Signed-off-by: Stanislaw Gruszka <stf_xl@wp.pl>
Signed-off-by: Chas Williams <chas@cmf.nrl.navy.mil>
Signed-off-by: David S. Miller <davem@davemloft.net>
Mitchell Blank Jr [Wed, 30 Nov 2005 00:15:59 +0000 (16:15 -0800)]
[ATM]: [lanai] kill lanai_ioctl() which just contains some old debugging code
Signed-off-by: Mitchell Blank Jr <mitch@sfgoth.com>
Signed-off-by: Chas Williams <chas@cmf.nrl.navy.mil>
Signed-off-by: David S. Miller <davem@davemloft.net>
Chas Williams [Wed, 30 Nov 2005 00:15:38 +0000 (16:15 -0800)]
[ATM]: linux/config.h only needed for #ifdef __KERNEL__ section
Signed-off-by: Chas Williams <chas@cmf.nrl.navy.mil>
Signed-off-by: David S. Miller <davem@davemloft.net>
Mitchell Blank Jr [Wed, 30 Nov 2005 00:15:18 +0000 (16:15 -0800)]
[ATM]: attempt to autoload atm drivers
From: Mitchell Blank Jr <mitch@sfgoth.com>
Signed-off-by: Chas Williams <chas@cmf.nrl.navy.mil>
Signed-off-by: David S. Miller <davem@davemloft.net>
Jan Pieter [Wed, 30 Nov 2005 00:14:58 +0000 (16:14 -0800)]
[ATM]: drivers/atm/atmdev_init.c no longer necessary
From: Jan Pieter <pptp@jp.dhs.org>
Signed-off-by: Chas Williams <chas@cmf.nrl.navy.mil>
Signed-off-by: David S. Miller <davem@davemloft.net>
Dave Jones [Wed, 30 Nov 2005 00:14:33 +0000 (16:14 -0800)]
[ATM]: [lanai] lanai missing unregister
Signed-off-by: Dave Jones <davej@redhat.com>
Signed-off-by: Chas Williams <chas@cmf.nrl.navy.mil>
Signed-off-by: David S. Miller <davem@davemloft.net>
Mitchell Blank Jr [Wed, 30 Nov 2005 00:14:12 +0000 (16:14 -0800)]
[ATM]: [lanai] better constification
Signed-off-by: Mitchell Blank Jr <mitch@sfgoth.com>
Signed-off-by: Chas Williams <chas@cmf.nrl.navy.mil>
Signed-off-by: David S. Miller <davem@davemloft.net>
Mitchell Blank Jr [Wed, 30 Nov 2005 00:13:55 +0000 (16:13 -0800)]
[ATM]: atm_pcr_goal() doesn't modify its argument's contents -- mark it as const
Signed-off-by: Mitchell Blank Jr <mitch@sfgoth.com>
Signed-off-by: Chas Williams <chas@cmf.nrl.navy.mil>
Signed-off-by: David S. Miller <davem@davemloft.net>
Mitchell Blank Jr [Wed, 30 Nov 2005 00:13:32 +0000 (16:13 -0800)]
[ATM]: always return the first interface for ATM_ITF_ANY
From: Mitchell Blank Jr <mitch@sfgoth.com>
Signed-off-by: Chas Williams <chas@cmf.nrl.navy.mil>
Signed-off-by: David S. Miller <davem@davemloft.net>
Mike Stroyan [Wed, 30 Nov 2005 00:12:55 +0000 (16:12 -0800)]
[IPV4] tcp/route: Another look at hash table sizes
The tcp_ehash hash table gets too big on systems with really big memory.
It is worse on systems with pages larger than 4KB. It wastes memory that
could be better used. It also makes the netstat command slow because reading
/proc/net/tcp and /proc/net/tcp6 needs to go through the full hash table.
The default value should not be larger for larger page sizes. It seems
that the effect of page size is an unintended error dating back a long
time. I also wonder if the default value really should be a larger
fraction of memory for systems with more memory. While systems with
really big ram can afford more space for hash tables, it is not clear to
me that they benefit from increasing the allocation ratio for this table.
The amount of memory allocated is determined by net/ipv4/tcp.c:tcp_init and
mm/page_alloc.c:alloc_large_system_hash.
tcp_init calls alloc_large_system_hash passing parameters-
bucketsize=sizeof(struct tcp_ehash_bucket)
numentries=thash_entries
scale=(num_physpages >= 128 * 1024) ? (25-PAGE_SHIFT) : (27-PAGE_SHIFT)
limit=0
On i386, PAGE_SHIFT is 12 for a page size of 4K
On ia64, PAGE_SHIFT defaults to 14 for a page size of 16K
The num_physpages test above makes the allocation take a larger fraction
of the total memory on systems with larger memory. The threshold size
for a i386 system is 512MB. For an ia64 system with 16KB pages the
threshold is 2GB.
For smaller memory systems-
On i386, scale = (27 - 12) = 15
On ia64, scale = (27 - 14) = 13
For larger memory systems-
On i386, scale = (25 - 12) = 13
On ia64, scale = (25 - 14) = 11
For the rest of this discussion, I'll just track the larger memory case.
The default behavior has numentries=thash_entries=0, so the allocated
size is determined by either scale or by the default limit of 1/16 of
total memory.
In alloc_large_system_hash-
| numentries = (flags & HASH_HIGHMEM) ? nr_all_pages : nr_kernel_pages;
| numentries += (1UL << (20 - PAGE_SHIFT)) - 1;
| numentries >>= 20 - PAGE_SHIFT;
| numentries <<= 20 - PAGE_SHIFT;
At this point, numentries is pages for all of memory, rounded up to the
nearest megabyte boundary.
| /* limit to 1 bucket per 2^scale bytes of low memory */
| if (scale > PAGE_SHIFT)
| numentries >>= (scale - PAGE_SHIFT);
| else
| numentries <<= (PAGE_SHIFT - scale);
On i386, numentries >>= (13 - 12), so numentries is 1/8196 of
bytes of total memory.
On ia64, numentries <<= (14 - 11), so numentries is 1/2048 of
bytes of total memory.
| log2qty = long_log2(numentries);
|
| do {
| size = bucketsize << log2qty;
bucketsize is 16, so size is 16 times numentries, rounded
down to a power of two.
On i386, size is 1/512 of bytes of total memory.
On ia64, size is 1/128 of bytes of total memory.
For smaller systems the results are
On i386, size is 1/2048 of bytes of total memory.
On ia64, size is 1/512 of bytes of total memory.
The large page effect can be removed by just replacing
the use of PAGE_SHIFT with a constant of 12 in the calls to
alloc_large_system_hash. That makes them more like the other uses of
that function from fs/inode.c and fs/dcache.c
Signed-off-by: David S. Miller <davem@davemloft.net>
Linus Torvalds [Tue, 29 Nov 2005 22:23:38 +0000 (14:23 -0800)]
Merge /pub/scm/linux/kernel/git/davem/sparc-2.6
Linus Torvalds [Tue, 29 Nov 2005 22:23:21 +0000 (14:23 -0800)]
Merge branch 'release' of git://git./linux/kernel/git/aegl/linux-2.6
Linus Torvalds [Tue, 29 Nov 2005 22:21:57 +0000 (14:21 -0800)]
Revert "[PATCH] drivers/message/fusion/mptbase.c: make code static"
This reverts commit
252ac865535e1ea9cc2d28be83f477d8d8b961a2.
It impacts the LSI customers using the mptstm target mode drivers
(source tar-ball at
ftp://ftp.lsil.com/HostAdapterDrivers/linux/Fusion-MPT/mptstm-1.00.13-src.tar.gz
for those who care).
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
Hugh Dickins [Tue, 29 Nov 2005 16:55:48 +0000 (16:55 +0000)]
[PATCH] pfnmap: do_no_page BUG_ON again
Use copy_user_highpage directly instead of cow_user_page in do_no_page:
in the immediately following page_cache_release, and elsewhere, it is
assuming that new_page is normal. If any VM_PFNMAP driver can get to
do_no_page, it's just a BUG (but not in the case of do_anonymous_page).
Signed-off-by: Hugh Dickins <hugh@veritas.com>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
Hugh Dickins [Tue, 29 Nov 2005 16:54:51 +0000 (16:54 +0000)]
[PATCH] pfnmap: remove src_page from do_wp_page
Clean away do_wp_page's "src_page": cow_user_page makes it unnecessary.
Signed-off-by: Hugh Dickins <hugh@veritas.com>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
Linus Torvalds [Tue, 29 Nov 2005 22:07:55 +0000 (14:07 -0800)]
cow_user_page: fix page alignment
High Dickins points out that the user virtual address passed to the page
fault handler isn't necessarily page-aligned.
Also, add a comment on why the copy could fail for the user address case.
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
Linus Torvalds [Tue, 29 Nov 2005 22:03:14 +0000 (14:03 -0800)]
VM: add common helper function to create the page tables
This logic was duplicated four times, for no good reason.
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
David S. Miller [Tue, 29 Nov 2005 21:59:03 +0000 (13:59 -0800)]
[SPARC64]: Fix >8K I/O mappings.
Increment the PFN field of the PTE so that the tests
on vm_pfn in mm/memory.c match up. The TLB ignores these
lower bits for larger page sizes, so it's OK to set things
like this.
Signed-off-by: David S. Miller <davem@davemloft.net>
Linus Torvalds [Tue, 29 Nov 2005 21:04:07 +0000 (13:04 -0800)]
Merge /pub/scm/linux/kernel/git/tglx/mtd-2.6
Christoph Hellwig [Tue, 29 Nov 2005 20:36:16 +0000 (21:36 +0100)]
[PATCH] fix megaraid.c locking
This fixes locking in megaraid.c, namely:
(1) make sure megaraid_queue release the adapter lock by changing the
code to have a single return
(2) remove the errornous scsi_assign_lock call
Testing by Burton Windle.
Signed-off-by: Christoph Hellwig <hch@lst.de>
Acked-by: Burton Windle <bwindle@fint.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
Linus Torvalds [Tue, 29 Nov 2005 21:01:56 +0000 (13:01 -0800)]
Support strange discontiguous PFN remappings
These get created by some drivers that don't generally even want a pfn
remapping at all, but would really mostly prefer to just map pages
they've allocated individually instead.
For now, create a helper function that turns such an incomplete PFN
remapping call into a loop that does that explicit mapping. In the long
run we almost certainly want to export a totally different interface for
that, though.
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
Ben Collins [Tue, 29 Nov 2005 19:45:26 +0000 (11:45 -0800)]
[PATCH] Fix missing pfn variables caused by vm changes
I image this showed up because of "unused var..." when the changes
occured, because flush_cache_page() is a noop in most places. This
showed up for me on parisc however, where flush_cache_page() is a real
function.
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
Adrian Bunk [Tue, 29 Nov 2005 14:49:38 +0000 (14:49 +0000)]
[MTD] Make functions static, include header files with prototypes
This patch contains the following possible cleanups:
- every file should #include the headers containing the prototypes for
it's global functions
- make needlessly global functions static
Signed-off-by: Adrian Bunk <bunk@stusta.de>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
Richard Purdie [Tue, 29 Nov 2005 14:28:31 +0000 (14:28 +0000)]
[MTD] chips: make sharps driver usable again
Update the pre-CFI Sharp driver sharps.c so it compiles. map_read32 /
map_write32 no longer exist in the kernel so the driver is totally broken
as it stands. The replacement functions use different parameters resulting
in the other changes.
Change collie to use this driver until someone works out why the cfi driver
fails on that machine.
Signed-off-by: Richard Purdie <rpurdie@rpsys.net>
Tested-by: Pavel Machek <pavel@suse.cz>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Thomas Gleixner <tglx@linutronix.de>