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.
Alexander Viro [Thu, 3 Jun 2004 11:19:22 +0000 (04:19 -0700)]
[PATCH] sparse: wavefront annotation
Both ALSA and OSS drivers + wavefront ioctl structure annotated. NB:
both should be switched to generic firmware loading - as it is, they are
using a homegrown and rather ugly variant
Alexander Viro [Thu, 3 Jun 2004 11:18:29 +0000 (04:18 -0700)]
[PATCH] sparse: sound/core/pcm* annotation
The tricky part here was an iterator that used to take a callback and
argument for that callback as parameters. Iterator itself didn't care
what type that argument had been; it's entirely up to callback. The
thing is, two callbacks expect (and get) char __user * while other two
expect (and also get) char __user **.
Iterator used to use void * as "opaque data"; I've switched it to
unsigned long. Note that there was nothing that said "it's a pointer" -
use of callback that would take e.g. int is also perfectly legitimate.
Alexander Viro [Thu, 3 Jun 2004 09:47:28 +0000 (02:47 -0700)]
[PATCH] sparse: msnd sound fix
msnd_pinnacle/msnd_classic do copy_{to,from}_user under a spinlock.
Taken out of spinlock (into a temp. buffer). Calls of msnd_fifo_{read,write}
always go from kernel buffer now, so we can drop the 'int user' argument in
them _and_ simplify error handling - all errors were from copy_..._user() and
now these are called directly by dsp_read()/dsp_write().
Alexander Viro [Thu, 3 Jun 2004 09:47:17 +0000 (02:47 -0700)]
[PATCH] sparse: sound sb fix
In some cases snd_sb_csp_load() did kmalloc() and copy_from_user()
under a spinlock. Split into snd_sb_csp_load() and snd_sb_csp_load_user() -
ther former always from kernel pointer, the latter - from userland.
snd_sb_csp_load_user() doesn't take any locks itself, it just
does kmalloc, copy_from_user and calls snd_sb_csp_load() to do the rest.
Russell King [Thu, 3 Jun 2004 18:01:25 +0000 (19:01 +0100)]
[ARM] Don't include lubbock.h in asm/arch/hardware.h
Since asm/arch/hardware.h is included (indirectly) by most kernel
files, we don't want all these files depending on the individual
machine support files, especially as only five files really require
the header.
Instead, explicitly include lubbock.h into files as necessary.
Paul Mackerras [Thu, 3 Jun 2004 08:06:05 +0000 (01:06 -0700)]
[PATCH] ppc32: Fix locks.c properly this time
When I moved the exports into arch/ppc/lib/locks.c, I forgot to
include module.h, so it doesn't compile (with CONFIG_SMP +
CONFIG_SPINLOCK_DEBUG). This patch fixes it.
Signed-off-by: Paul Mackerras <paulus@samba.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
Paul Mackerras [Thu, 3 Jun 2004 01:22:18 +0000 (18:22 -0700)]
[PATCH] ppc32: Reduce WARN_ON(0) to nothing
The last patch I sent means that we have WARN_ON(0) in a couple of
places when CONFIG_PREEMPT=n. This patch makes that reduce to
nothing (rather than a conditional trap on a 0 value), and also makes
BUG_ON(0) reduce to nothing for completeness.
Signed-off-by: Paul Mackerras <paulus@samba.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
Paul Mackerras [Thu, 3 Jun 2004 01:22:08 +0000 (18:22 -0700)]
[PATCH] ppc32: Fix preemptible check
Ben H added a check in a couple of places to make sure that we had
preemption disabled when we call enable_kernel_{fp,altivec}.
Unfortunately the check he used trips in the case when
CONFIG_PREEMPT=n. This patch fixes it by defining a preemptible()
macro (which reduces to 0 when CONFIG_PREEMPT=n) and doing
WARN_ON(preemptible()).
Signed-off-by: Paul Mackerras <paulus@samba.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
Paul Mackerras [Thu, 3 Jun 2004 01:21:57 +0000 (18:21 -0700)]
[PATCH] ppc32: Make ppc32 PCI code more robust
The main thrust of this patch is to make the ppc32 PCI code more
robust by checking for bus->resource[] being NULL before using it. We
can legitimately get elements of bus->resource being NULL and I have
actually hit that on some machines. This patch also allows resources
starting at 0 to be accepted as assigned (we can and do get PCI
resources starting at 0 in I/O space on PPC machines) and provides a
sensible default for the case where Open Firmware doesn't give us a
bus-range property for a PCI bridge.
Signed-off-by: Paul Mackerras <paulus@samba.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org>