Gary Hade [Fri, 4 Jun 2004 09:11:10 +0000 (02:11 -0700)]
[PATCH] ia64: Fix early serial console setup regression on the IBM x450 and x455
This patch removes the ACPI LEGACY_DEVICES IA-PC boot architecture
flag as a condition for early serial console setup. This flag may not
be set on some systems (e.g. IBM x450 and x455) where early serial
console setup is possible.
Signed-off-by: Gary Hade <garyhade@us.ibm.com> Signed-off-by: David Mosberger <davidm@hpl.hp.com>
Alex Williamson [Fri, 4 Jun 2004 09:08:45 +0000 (02:08 -0700)]
[PATCH] ia64: setup cpu_to_node for cpus not present
In latest linux-2.5 bitkeeper, if you turn on CONFIG_HOTPLUG_CPU w/
an NR_CPUS greater than physically presents CPUs, you'll end up taking
an MCA in __alloc_percpu(). kmem_cache_alloc_node() gets called with a
node value of -1. It seems other architectures are defaulting the
cpu_to_node map to zero for possible, but not present cpus. Here's a
trivial patch that does the same for ia64.
Signed-off-by: David Mosberger <davidm@hpl.hp.com>
Alexander Viro [Fri, 4 Jun 2004 07:10:51 +0000 (00:10 -0700)]
[PATCH] sparse: the rest of ifr_data cleanups and annotations
The rest of ->ifr_data cleanups. A bunch of drivers use address
of ifr->ifr_ifru, but spell that as &ifr->ifr_data, which expands to
&ifr->ifr_ifru.ifru_data. ifr_ifru is a union and in effect they sneak in
a private field into that union; ifr_ifru.ifru_data is a field in that
union and it has nothing to do with the things they want to do. Cleaned
up by explicit use of &ifr->ifr_ifru.
Several places where we really use ->ifr_data (i.e. use its value
and use it as __user pointer) annotated.
Alexander Viro [Fri, 4 Jun 2004 07:10:38 +0000 (00:10 -0700)]
[PATCH] sparse: if_mii() helper (from jgarzik)
From: Jeff Garzik
Jeff's patch adds a helper for obtaining mii_ioctl_data from ifreq
and switches drivers to it. It's almost a "move common expression into
inline helper", except that instead of
(struct mii_ioctl_data *)&rq->ifr_ifru.ifru_data
it does
(struct mii_ioctl_data *)&rq->ifr_ifru
- pointer to union instead of pointer to a field of union that has nothing
to do with mii_ioctl_data *and* adds confusion by being a pointer itself.
Alexander Viro [Thu, 3 Jun 2004 17:38:18 +0000 (10:38 -0700)]
[PATCH] sparse: ->ifr_data fixes
b44.c: ->ioctl() is broken, since it uses &ifr->ifr_data instead of
ifr->ifr_data itself. Surprise, surprise, copy_from_user() on that address
doesn't do any good...
baycom_epp.c: does get_user() of the first word of structure, then
immediately does copy_from_user() on the entire thing and completely ignores
the value read by get_user() (it uses the same value in copied structure
instead). Bogus get_user() call removed.
Paul Mackerras [Thu, 3 Jun 2004 15:43:54 +0000 (08:43 -0700)]
[PATCH] ppc64: don't clear MSR.RI in do_hash_page_DSI
Some code that is used on iSeries (do_hash_page_DSI in head.S) was
clearing the RI (recoverable interrupt) bit in the MSR when it
shouldn't. We were getting SLB miss interrupts following that which
were panicking because they appeared to have occurred at a bad place.
This patch fixes the problem. In fact it isn't necessary for
do_hash_page_DSI to do anything to RI, so the patch changes the code
to not set or clear it.
Signed-off-by: Paul Mackerras <paulus@samba.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
skb_checksum_help() has been changed to perform an skb_copy() if needed
(e.g. the original problem case where bcast/mcast was cloning packets for
transmission over loopback, changing ip_summed).
Because of the above, the output path has been modified to take into
account the fact that an skb may need to be changed in some places. There
are some minor changes in the routing code to take care of the now
different input and output function prototypes. The ipv6 fragmentation
code has been modified to detect a changed skb.
The rest of the patch (probably the bulk of it) is simply the result of
changing to double skb pointers.
I've tested this with ipv4, ipv6, ipsec (including xfrm bundles), NAT and
the original DHCP test case. Everything seems to be working ok.
Signed-off-by: James Morris <jmorris@redhat.com> Signed-off-by: David S. Miller <davem@redhat.com>
Alexander Viro [Thu, 3 Jun 2004 14:37:55 +0000 (07:37 -0700)]
[PATCH] sparse: net/bridge annotation
net/bridge partially annotated.
There are nasty problems with net/bridge/netfilter/* and they'll need to
be dealt with at some point - it mixes kernel and userland pointers a
lot and while it seems to avoid obvious breakage, it's not a nice code.
Alexander Viro [Thu, 3 Jun 2004 14:37:33 +0000 (07:37 -0700)]
[PATCH] sparse: econet annotation
econet partially annotated.
It's still badly broken - it mixes userland and kernel chunks in the
same iovec, then does set_fs(KERNEL_FS) and sends that to
sock_sendmsg(). Do we still want to support that protocol family,
anyway?
Dave Jones [Fri, 4 Jun 2004 00:46:25 +0000 (01:46 +0100)]
[CPUFREQ] Remove bogus longhaul v4
The code only supports 3 versions, so numbering them 1,2 and 4
doesn't make a lot of sense. Signed-off-by: Dave Jones <davej@redhat.com>
Dave Jones [Fri, 4 Jun 2004 00:44:00 +0000 (01:44 +0100)]
[CPUFREQ] Move longhaul multiplier debug printk to somewhere more useful.
If we abort due to a reserved FSB being found, we probably want to know the multipliers.
Dave Jones [Fri, 4 Jun 2004 00:29:42 +0000 (01:29 +0100)]
[CPUFREQ] Remove lots of redundant code from longhaul driver.
The recent Nehemiah changes introduced lots of stuff that does
a whole lot of nothing. Nuke it.