]> pilppa.com Git - linux-2.6-omap-h63xx.git/log
linux-2.6-omap-h63xx.git
19 years ago[PATCH] Fix SCSI scanning slab corruption
Brian King [Mon, 12 Dec 2005 19:05:08 +0000 (13:05 -0600)]
[PATCH] Fix SCSI scanning slab corruption

There is a double free in the scsi scan code if a LLDD's slave_alloc()
call fails.  There is a direct call to scsi_free_queue and then the
following put_device calls the release function, which also frees the
queue.

Remove the redundant scsi_free_queue.

Signed-off-by: Brian King <brking@us.ibm.com>
Tested-by: Nathan Lynch <ntl@pobox.com>
[ Also removed some strange whitespace artifacts in that area ]
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
19 years agoRevert revert of "[SCSI] fix usb storage oops"
Linus Torvalds [Mon, 12 Dec 2005 19:25:04 +0000 (11:25 -0800)]
Revert revert of "[SCSI] fix usb storage oops"

This reverts commit 1b0997f561bf46689cc6e0903f342e9bf2506bf1, which in
turn reverted 34ea80ec6a02ad02e6b9c75c478c18e5880d6713 (which is thus
re-instated).

Quoth James Bottomley:

  "All it's doing is deferring the device_put() from the
   scsi_put_command() to after the scsi_run_queue(), which doesn't fix
   the sleep while atomic problem of the device release method.  In both
   cases we still get the semaphore in atomic context problem which is
   caused by scsi_reap_target() doing a device_del(), which I assumed
   (wrongly) was valid from atomic context."

who also promised to fix scsi_reap_target().

Signed-off-by: Linus Torvalds <torvalds@osdl.org>
19 years ago[PATCH] md: use correct size of raid5 stripe cache when measuring how full it is
NeilBrown [Mon, 12 Dec 2005 10:39:17 +0000 (02:39 -0800)]
[PATCH] md: use correct size of raid5 stripe cache when measuring how full it is

The raid5 stripe cache was recently changed from fixed size (NR_STRIPES) to
variable size (conf->max_nr_stripes).  However there are two places that still
use the constant and as a result, reducing the size of the stripe cache can
result in a deadlock.

Signed-off-by: Neil Brown <neilb@suse.de>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
19 years ago[PATCH] md: fix a use-after-free bug in raid1
NeilBrown [Mon, 12 Dec 2005 10:39:16 +0000 (02:39 -0800)]
[PATCH] md: fix a use-after-free bug in raid1

Who would submit code with a FIXME like that in it !!!!

Signed-off-by: Neil Brown <neilb@suse.de>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
19 years ago[PATCH] raw driver: Kconfig fix
Andrew Morton [Mon, 12 Dec 2005 08:37:41 +0000 (00:37 -0800)]
[PATCH] raw driver: Kconfig fix

CONFIG_MAX_RAW_DEVS should appear immediately after CONFIG_RAW_DRIVER.

Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
19 years ago[PATCH] ACPI: fix sleeping whilst atomic warnings on resume
Dave Jones [Mon, 12 Dec 2005 08:37:40 +0000 (00:37 -0800)]
[PATCH] ACPI: fix sleeping whilst atomic warnings on resume

This has been broken for months.  On resume, we call acpi_pci_link_set()
with interrupts off, so we get a warning when we try to do a kmalloc of non
atomic memory.  The actual allocation is just 2 long's (plus extra byte for
some reason I can't fathom), so a simple conversion to GFP_ATOMIC is
probably the safest way to fix this.

The error looks like this..

Debug: sleeping function called from invalid context at mm/slab.c:2486
in_atomic():0, irqs_disabled():1
 [<c0143f6c>] kmem_cache_alloc+0x40/0x56
 [<c0206a2e>] acpi_pci_link_set+0x3f/0x17f
 [<c0206f96>] irqrouter_resume+0x1e/0x3c
 [<c0239bca>] __sysdev_resume+0x11/0x6b
 [<c0239e88>] sysdev_resume+0x34/0x52
 [<c023de21>] device_power_up+0x5/0xa

Signed-off-by: Dave Jones <davej@redhat.com>
Cc: "Brown, Len" <len.brown@intel.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
19 years ago[PATCH] fix in __alloc_bootmem_core() when there is no free page in first node's...
Haren Myneni [Mon, 12 Dec 2005 08:37:39 +0000 (00:37 -0800)]
[PATCH] fix in __alloc_bootmem_core() when there is no free page in first node's memory

Hitting BUG_ON() in __alloc_bootmem_core() when there is no free page
available in the first node's memory.  For the case of kdump on PPC64
(Power 4 machine), the captured kernel is used two memory regions - memory
for TCE tables (tce-base and tce-size at top of RAM and reserved) and
captured kernel memory region (crashk_base and crashk_size).  Since we
reserve the memory for the first node, we should be returning from
__alloc_bootmem_core() to search for the next node (pg_dat).

Currently, find_next_zero_bit() is returning the n^th bit (eidx) when there
is no free page.  Then, test_bit() is failed since we set 0xff only for the
actual size initially (init_bootmem_core()) even though rounded up to one
page for bdata->node_bootmem_map.  We are hitting the BUG_ON after failing
to enter second "for" loop.

Signed-off-by: Haren Myneni <haren@us.ibm.com>
Cc: Andy Whitcroft <apw@shadowen.org>
Cc: Dave Hansen <haveblue@us.ibm.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
19 years ago[PATCH] Fix Kconfig of DMA32 for ia64
Yasunori Goto [Mon, 12 Dec 2005 08:37:37 +0000 (00:37 -0800)]
[PATCH] Fix Kconfig of DMA32 for ia64

I realized ZONE_DMA32 has a trivial bug at Kconfig for ia64.  In
include/linux/gfp.h on 2.6.15-rc5-mm1, CONFIG is define like followings.

#ifdef CONFIG_DMA_IS_DMA32
#define __GFP_DMA32 ((__force gfp_t)0x01) /* ZONE_DMA is ZONE_DMA32
*/
       :
       :

So, CONFIG_"ZONE"_DMA_IS_DMA32 is clearly wrong.

Signed-off-by: Yasunori Goto <y-goto@jp.fujitsu.com>
Cc: "Luck, Tony" <tony.luck@intel.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
19 years ago[PATCH] input: fix ucb1x00-ts breakage after conversion to dynamic input_dev allocation
Nicolas Pitre [Mon, 12 Dec 2005 08:37:36 +0000 (00:37 -0800)]
[PATCH] input: fix ucb1x00-ts breakage after conversion to dynamic input_dev allocation

The bd622663192e8ebebb27dc1d9397f352a82d2495 commit broke the UCB1x00
touchscreen driver since the idev structure was assumed to be into the ts
structure, simply casting the former to the later in a couple places.

This patch fixes those, and also cache the idev pointer between multiple
calls to input_report_abs() to avoid growing the compiled code needlessly.

Signed-off-by: Nicolas Pitre <nico@cam.org>
Cc: Dmitry Torokhov <dtor_core@ameritech.net>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
19 years ago[PATCH] broken cast in parport_pc
Dave Jones [Mon, 12 Dec 2005 08:37:35 +0000 (00:37 -0800)]
[PATCH] broken cast in parport_pc

Spotted by a Fedora user.  Compiling with DEBUG_PARPORT set fails due to
the broken cast.

Just remove it.

Signed-off-by: Dave Jones <davej@redhat.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
19 years ago[PATCH] kprobes: increment kprobe missed count for multiprobes
Keshavamurthy Anil S [Mon, 12 Dec 2005 08:37:34 +0000 (00:37 -0800)]
[PATCH] kprobes: increment kprobe missed count for multiprobes

When multiple probes are registered at the same address and if due to some
recursion (probe getting triggered within a probe handler), we skip calling
pre_handlers and just increment nmissed field.

The below patch make sure it walks the list for multiple probes case.
Without the below patch we get incorrect results of nmissed count for
multiple probe case.

Signed-off-by: Anil S Keshavamurthy <anil.s.keshavamurthy@intel.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
19 years ago[PATCH] kprobes: no probes on critical path
Keshavamurthy Anil S [Mon, 12 Dec 2005 08:37:33 +0000 (00:37 -0800)]
[PATCH] kprobes: no probes on critical path

For Kprobes critical path is the path from debug break exception handler
till the control reaches kprobes exception code.  No probes can be
supported in this path as we will end up in recursion.

This patch prevents this by moving the below function to safe __kprobes
section onto which no probes can be inserted.

Signed-off-by: Anil S Keshavamurthy <anil.s.keshavamurthy@intel.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
19 years ago[PATCH] ipmi: fix panic generator ID
Matt Domsch [Mon, 12 Dec 2005 08:37:32 +0000 (00:37 -0800)]
[PATCH] ipmi: fix panic generator ID

The IPMI specifcation says the generator ID is 0x20, but that is for bits
7-1.  Bit 0 is set to specify it is a software event.  The correct value is
0x41.  Without this fix, panic events written into the System Event Log
appear to come from an "unknown" generator, rather than from the kernel.

Signed-off-by: Jordan Hargrave <Jordan_Hargrave@dell.com>
Signed-off-by: Matt Domsch <Matt_Domsch@dell.com>
Acked-by: Corey Minyard <minyard@acm.org>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
19 years ago[PATCH] V4L/DVB: (3151) I2C ID renamed to I2C_DRIVERID_INFRARED
Mauro Carvalho Chehab [Mon, 12 Dec 2005 08:37:31 +0000 (00:37 -0800)]
[PATCH] V4L/DVB: (3151) I2C ID renamed to I2C_DRIVERID_INFRARED

I2C ID renamed to I2C_DRIVERID_INFRARED

Acked-off-by: Jean Delvare <khali@linux-fr.org>
Signed-off-by: Mauro Carvalho Chehab <mchehab@brturbo.com.br>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
19 years ago[PATCH] V4L/DVB: (3113) Convert em28xx to use vm_insert_page instead of remap_pfn_range
Sascha Sommer [Mon, 12 Dec 2005 08:37:30 +0000 (00:37 -0800)]
[PATCH] V4L/DVB: (3113) Convert em28xx to use vm_insert_page instead of remap_pfn_range

Convert em28xx to use vm_insert_page instead of remap_pfn_range

Signed-off-by: Sascha Sommer <saschasommer@freenet.de>
Signed-off-by: Michael Krufky <mkrufky@gmail.com>
Signed-off-by: Mauro Carvalho Chehab <mchehab@brturbo.com.br>
Cc: Hugh Dickins <hugh@veritas.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
19 years ago[PATCH] V4L/DVB: (3135) Fix tuner init for Pinnacle PCTV Stereo
Ricardo Cerqueira [Mon, 12 Dec 2005 08:37:28 +0000 (00:37 -0800)]
[PATCH] V4L/DVB: (3135) Fix tuner init for Pinnacle PCTV Stereo

- The Pinnacle PCTV Stereo needs tda9887 port2 set to 1

- Without this patch, mt20xx tuner is not detected and the board
  doesn't tune.

Signed-off-by: Ricardo Cerqueira <v4l@cerqueira.org>
Signed-off-by: Mauro Carvalho Chehab <mchehab@brturbo.com.br>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
19 years ago[PATCH] V4L/DVB: (3086c) Whitespaces cleanups part 4
Mauro Carvalho Chehab [Mon, 12 Dec 2005 08:37:28 +0000 (00:37 -0800)]
[PATCH] V4L/DVB: (3086c) Whitespaces cleanups part 4

Clean up whitespaces at v4l/dvb files

Signed-off-by: Mauro Carvalho Chehab <mchehab@brturbo.com.br>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
19 years ago[PATCH] V4L/DVB: (3086c) Whitespaces cleanups part 3
Mauro Carvalho Chehab [Mon, 12 Dec 2005 08:37:27 +0000 (00:37 -0800)]
[PATCH] V4L/DVB: (3086c) Whitespaces cleanups part 3

Clean up whitespaces at v4l/dvb files

Signed-off-by: Mauro Carvalho Chehab <mchehab@brturbo.com.br>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
19 years ago[PATCH] V4L/DVB: (3086b) Whitespaces cleanups part 2
Mauro Carvalho Chehab [Mon, 12 Dec 2005 08:37:25 +0000 (00:37 -0800)]
[PATCH] V4L/DVB: (3086b) Whitespaces cleanups part 2

Clean up whitespaces at v4l/dvb files

Signed-off-by: Mauro Carvalho Chehab <mchehab@brturbo.com.br>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
19 years ago[PATCH] V4L/DVB: (3086a) Whitespaces cleanups part 1
Mauro Carvalho Chehab [Mon, 12 Dec 2005 08:37:24 +0000 (00:37 -0800)]
[PATCH] V4L/DVB: (3086a) Whitespaces cleanups part 1

Clean up whitespaces at v4l/dvb files

Signed-off-by: Mauro Carvalho Chehab <mchehab@brturbo.com.br>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
19 years ago[PATCH] mips: setup_zero_pages count 1
Hugh Dickins [Mon, 12 Dec 2005 08:37:23 +0000 (00:37 -0800)]
[PATCH] mips: setup_zero_pages count 1

Page count should be initialized to 1 on each of the MIPS empty zero pages,
to avoid a bad_page warning whenever one of them is freed from all mappings.

Signed-off-by: Hugh Dickins <hugh@veritas.com>
Cc: Ralf Baechle <ralf@linux-mips.org>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
19 years ago[PATCH] Add try_to_freeze to kauditd
Pierre Ossman [Mon, 12 Dec 2005 08:37:22 +0000 (00:37 -0800)]
[PATCH] Add try_to_freeze to kauditd

kauditd was causing suspends to fail because it refused to freeze.  Adding
a try_to_freeze() to its sleep loop solves the issue.

Signed-off-by: Pierre Ossman <drzeus@drzeus.cx>
Acked-by: Pavel Machek <pavel@suse.cz>
Cc: David Woodhouse <dwmw2@infradead.org>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
19 years ago[PATCH] uml: fix compile error for tt
Pekka J Enberg [Mon, 12 Dec 2005 08:37:16 +0000 (00:37 -0800)]
[PATCH] uml: fix compile error for tt

arch/um/kernel/tt/uaccess.c: In function `copy_from_user_tt':
arch/um/kernel/tt/uaccess.c:11: error: `FIXADDR_USER_START' undeclared (first use in this function)
arch/um/kernel/tt/uaccess.c:11: error: (Each undeclared identifier is reported only once
arch/um/kernel/tt/uaccess.c:11: error: for each function it appears in.)

I get the compile error when I disable CONFIG_MODE_SKAS.

Signed-off-by: Pekka Enberg <penberg@cs.helsinki.fi>
Acked-by: Paolo Giarrusso <blaisorblade@yahoo.it>
Cc: Jeff Dike <jdike@addtoit.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
19 years ago[PATCH] inotify: add two inotify_add_watch flags
John McCutchan [Mon, 12 Dec 2005 08:37:14 +0000 (00:37 -0800)]
[PATCH] inotify: add two inotify_add_watch flags

The below patch lets userspace have more control over the inodes that
inotify will watch.  It introduces two new flags.

        IN_ONLYDIR -- only watch the inode if it is a directory.
        This is needed to avoid the race that can occur when we want to be
        sure that we are watching a directory.

        IN_DONT_FOLLOW -- don't follow a symlink.  In combination
        with IN_ONLYDIR we can make sure that we don't watch the target of
        symlinks.

The issues the flags fix came up when writing the gnome-vfs inotify
backend.  Default behaviour is unchanged.

Signed-off-by: John McCutchan <ttb@tentacle.dhs.org>
Acked-by: Robert Love <rml@novell.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
19 years ago[PATCH] cciss: double put_disk()
Jens Axboe [Mon, 12 Dec 2005 08:37:13 +0000 (00:37 -0800)]
[PATCH] cciss: double put_disk()

This undoes the put_disk patch I sent in before.

If I had been paying attention I would have seen that we call put_disk
from free_hba during driver unload.  That's the only time we want to
call it.  If it's called from deregister disk we may remove the
controller (cNd0) unintentionally.

Signed-off-by: Mike Miller <mike.miller@hp.com>
Signed-off-by: Jens Axboe <axboe@suse.de>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
19 years ago[PATCH] kprobes: fix race in aggregate kprobe registration
Keshavamurthy Anil S [Mon, 12 Dec 2005 08:37:12 +0000 (00:37 -0800)]
[PATCH] kprobes: fix race in aggregate kprobe registration

When registering multiple kprobes at the same address, we leave a small
window where the kprobe hlist will not contain a reference to the
registered kprobe, leading to potentially, a system crash if the breakpoint
is hit on another processor.

Patch below now automically relpace the old kprobe with the new
kprobe from the hash list.

Signed-off-by: Anil S Keshavamurthy <anil.s.keshavamurthy@intel.com>
Acked-by: Ananth N Mavinakayanahalli <ananth@in.ibm.com>
Cc: "Paul E. McKenney" <paulmck@us.ibm.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
19 years ago[PATCH] add hlist_replace_rcu()
Ingo Molnar [Mon, 12 Dec 2005 08:37:11 +0000 (00:37 -0800)]
[PATCH] add hlist_replace_rcu()

Add list_replace_rcu: replace old entry by new one.

Signed-off-by: Paul E. McKenney <paulmck@us.ibm.com>
Signed-off-by: Ingo Molnar <mingo@elte.hu>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
19 years ago[PATCH] Add timestamp field to process events
Matt Helsley [Mon, 12 Dec 2005 08:37:10 +0000 (00:37 -0800)]
[PATCH] Add timestamp field to process events

This adds a timestamp field to the events sent via the process event
connector.  The timestamp allows listeners to accurately account the
duration(s) between a process' events and offers strong means with which
to determine the order of events with respect to a given task while also
avoiding the addition of per-task data.

This alters the size and layout of the event structure and hence would
break compatibility if process events connector as it stands in 2.6.15-rc2
were released as a mainline kernel.

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>
19 years ago[PATCH] Add getnstimestamp function
Matt Helsley [Mon, 12 Dec 2005 08:37:09 +0000 (00:37 -0800)]
[PATCH] Add getnstimestamp function

There are several functions that might seem appropriate for a timestamp:

get_cycles()
current_kernel_time()
do_gettimeofday()
<read jiffies/jiffies_64>

Each has problems with combinations of SMP-safety, low resolution, and
monotonicity. This patch adds a new function that returns a monotonic SMP-safe
timestamp with nanosecond resolution where available.

Changes:
Split timestamp into separate patch
Moved to kernel/time.c
Renamed to getnstimestamp
Fixed unintended-pointer-arithmetic bug

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>
19 years ago[PATCH] Fix listxattr() for generic security attributes
Daniel Drake [Mon, 12 Dec 2005 08:37:08 +0000 (00:37 -0800)]
[PATCH] Fix listxattr() for generic security attributes

Commit f549d6c18c0e8e6cf1bf0e7a47acc1daf7e2cec1 introduced a generic
fallback for security xattrs, but appears to include a subtle bug.

Gentoo users with kernels with selinux compiled in, and coreutils compiled
with acl support, noticed that they could not copy files on tmpfs using
'cp'.

cp (compiled with acl support) copies the file, lists the extended
attributes on the old file, copies them all to the new file, and then
exits.  However the listxattr() calls were failing with this odd behaviour:

llistxattr("a.out", (nil), 0)           = 17
llistxattr("a.out", 0x7fffff8c6cb0, 17) = -1 ERANGE (Numerical result out of
range)

I believe this is a simple problem in the logic used to check the buffer
sizes; if the user sends a buffer the exact size of the data, then its ok
:)

This change solves the problem.
More info can be found at http://bugs.gentoo.org/113138

Signed-off-by: Daniel Drake <dsd@gentoo.org>
Acked-by: James Morris <jmorris@namei.org>
Acked-by: Stephen Smalley <sds@tycho.nsa.gov>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
19 years ago[PATCH] Fix RCU race in access of nohz_cpu_mask
Srivatsa Vaddagiri [Mon, 12 Dec 2005 08:37:07 +0000 (00:37 -0800)]
[PATCH] Fix RCU race in access of nohz_cpu_mask

Accessing nohz_cpu_mask before incrementing rcp->cur is racy.  It can cause
tickless idle CPUs to be included in rsp->cpumask, which will extend
graceperiods unnecessarily.

Fix this race.  It has been tested using extensions to RCU torture module
that forces various CPUs to become idle.

Signed-off-by: Srivatsa Vaddagiri <vatsa@in.ibm.com>
Cc: Dipankar Sarma <dipankar@in.ibm.com>
Cc: "Paul E. McKenney" <paulmck@us.ibm.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
19 years ago[PATCH] Fix bug in RCU torture test
Srivatsa Vaddagiri [Mon, 12 Dec 2005 08:37:06 +0000 (00:37 -0800)]
[PATCH] Fix bug in RCU torture test

While doing some test of RCU torture module, I hit a OOPS in rcu_do_batch,
which was trying to processes callback of a module that was just removed.
This is because we weren't waiting long enough for all callbacks to fire.

Signed-off-by: Srivatsa Vaddagiri <vatsa@in.ibm.com>
Cc: Dipankar Sarma <dipankar@in.ibm.com>
Acked-by: "Paul E. McKenney" <paulmck@us.ibm.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
19 years ago[PATCH] add rcu_barrier() synchronization point
Dipankar Sarma [Mon, 12 Dec 2005 08:37:05 +0000 (00:37 -0800)]
[PATCH] add rcu_barrier() synchronization point

This introduces a new interface - rcu_barrier() which waits until all
the RCUs queued until this call have been completed.

Reiser4 needs this, because we do more than just freeing memory object
in our RCU callback: we also remove it from the list hanging off
super-block.  This means, that before freeing reiser4-specific portion
of super-block (during umount) we have to wait until all pending RCU
callbacks are executed.

The only change of reiser4 made to the original patch, is exporting of
rcu_barrier().

Cc: Hans Reiser <reiser@namesys.com>
Cc: Vladimir V. Saveliev <vs@namesys.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
19 years ago[PATCH] ext3: fix mount options documentation
Andreas Gruenbacher [Mon, 12 Dec 2005 08:37:04 +0000 (00:37 -0800)]
[PATCH] ext3: fix mount options documentation

Reported by Jacques de Mer and Daniel Drake <dsd@gentoo.org>.

Signed-off-by: Andreas Gruenbacher <agruen@suse.de>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
19 years ago[PATCH] KERNELRELEASE depends on CONFIG_LOCALVERSION
Andreas Schwab [Mon, 12 Dec 2005 08:37:03 +0000 (00:37 -0800)]
[PATCH] KERNELRELEASE depends on CONFIG_LOCALVERSION

Sam Ravnborg <sam@ravnborg.org> writes:

> Author: Uwe Zeisberger <zeisberg@informatik.uni-freiburg.de>
>
>     [PATCH] kbuild: make kernelrelease in unconfigured kernel prints an error
>
>     Do not include .config for target kernelrelease

This is wrong.  KERNELRELEASE depends on CONFIG_LOCALVERSION, thus you
need .config.

Signed-off-by: Andreas Schwab <schwab@suse.de>
Cc: Sam Ravnborg <sam@ravnborg.org>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
19 years ago[PATCH] x86: fix NMI with CPU hotplug
Shaohua Li [Mon, 12 Dec 2005 08:37:02 +0000 (00:37 -0800)]
[PATCH] x86: fix NMI with CPU hotplug

With CPU hotplug enabled, NMI watchdog stoped working.  It appears the
violation is the cpu_online check in nmi handler.  local ACPI based NMI
watchdog is initialized before we set CPU online for APs.  It's quite
possible a NMI is fired before we set CPU online, and that's what happens
here.

Signed-off-by: Shaohua Li <shaohua.li@intel.com>
Acked-by: Zwane Mwaikambo <zwane@arm.linux.org.uk>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
19 years ago[PATCH] Kprobes: Reference count the modules when probed on it
Mao, Bibo [Mon, 12 Dec 2005 08:37:00 +0000 (00:37 -0800)]
[PATCH] Kprobes: Reference count the modules when probed on it

When a Kprobes are inserted/removed on a modules, the modules must be ref
counted so as not to allow to unload while probes are registered on that
module.

Without this patch, the probed module is free to unload, and when the
probing module unregister the probe, the kpobes code while trying to
replace the original instruction might crash.

Signed-off-by: Anil S Keshavamurthy <anil.s.keshavamurthy@intel.com>
Signed-off-by: Mao Bibo <bibo.mao@intel.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
19 years ago[PATCH] blkmtd: use clear_page_dirty()
Andrew Morton [Mon, 12 Dec 2005 08:36:59 +0000 (00:36 -0800)]
[PATCH] blkmtd: use clear_page_dirty()

SetPageDirty() and ClearPageDirty() are low-level thing which filesystems
shouldn't be using.  They bypass dirty page accounting.

Cc: David Woodhouse <dwmw2@infradead.org>
Acked-by: Thomas Gleixner <tglx@linutronix.de>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
19 years agoAllow arbitrary read-only shared pfn-remapping too
Linus Torvalds [Mon, 12 Dec 2005 04:38:17 +0000 (20:38 -0800)]
Allow arbitrary read-only shared pfn-remapping too

The VM layer (for historical reasons) turns a read-only shared mmap into
a private-like mapping with the VM_MAYWRITE bit clear.  Thus checking
just VM_SHARED isn't actually sufficient.

So use a trivial helper function for the cases where we wanted to inquire
if a mapping was COW-like or not.

Moo!

Signed-off-by: Linus Torvalds <torvalds@osdl.org>
19 years agoMerge master.kernel.org:/pub/scm/linux/kernel/git/davem/net-2.6
Linus Torvalds [Mon, 12 Dec 2005 04:23:58 +0000 (20:23 -0800)]
Merge master.kernel.org:/pub/scm/linux/kernel/git/davem/net-2.6

19 years agoMerge git://git.kernel.org/pub/scm/linux/kernel/git/paulus/powerpc-merge
Linus Torvalds [Mon, 12 Dec 2005 04:23:25 +0000 (20:23 -0800)]
Merge git://git.kernel.org/pub/scm/linux/kernel/git/paulus/powerpc-merge

19 years agoRemove (at least temporarily) the "incomplete PFN mapping" support
Linus Torvalds [Mon, 12 Dec 2005 03:57:52 +0000 (19:57 -0800)]
Remove (at least temporarily) the "incomplete PFN mapping" support

With the previous commit, we can handle arbitrary shared re-mappings
even without this complexity, and since the only known private mappings
are for strange users of /dev/mem (which never create an incomplete one),
there seems to be no reason to support it.

Signed-off-by: Linus Torvalds <torvalds@osdl.org>
19 years agoAllow arbitrary shared PFNMAP's
Linus Torvalds [Mon, 12 Dec 2005 03:46:02 +0000 (19:46 -0800)]
Allow arbitrary shared PFNMAP's

A shared mapping doesn't cause COW-pages, so we don't need to worry
about the whole vm_pgoff logic to decide if a PFN-remapped page has
gone through COW or not.

This makes it possible to entirely avoid the special "partial remapping"
logic for the common case.

Signed-off-by: Linus Torvalds <torvalds@osdl.org>
19 years ago[PATCH] ppc32: set smp_tb_synchronized on UP with SMP kernel
Johannes Berg [Sun, 11 Dec 2005 02:41:50 +0000 (18:41 -0800)]
[PATCH] ppc32: set smp_tb_synchronized on UP with SMP kernel

ppc32 kernel, when built with CONFIG_SMP and booted on a single CPU
machine, will not properly set smp_tb_synchronized, thus causing
gettimeofday() to not use the HW timebase and to be limited to jiffy
resolution.  This, among others, causes unacceptable pauses when launching
X.org.

Signed-Off-By: Johannes Berg <johannes@sipsolutions.net>
Acked-by: Benjamin Herrenschmidt <benh@kernel.crashing.org>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Paul Mackerras <paulus@samba.org>
19 years ago[PATCH] powerpc: Fix clock spreading setting on some powermacs
Benjamin Herrenschmidt [Mon, 12 Dec 2005 02:13:24 +0000 (13:13 +1100)]
[PATCH] powerpc: Fix clock spreading setting on some powermacs

The code that sets the clock spreading feature of the Intrepid ASIC
must not be run on some machine models or those won't boot. This
fixes it.

Signed-off-by: Benjamin Herrenschmidt <benh@kernel.crashing.org>
Signed-off-by: Paul Mackerras <paulus@samba.org>
19 years ago[IPv6] IPsec: fix pmtu calculation of esp
Kazunori MIYAZAWA [Fri, 9 Dec 2005 07:11:42 +0000 (23:11 -0800)]
[IPv6] IPsec: fix pmtu calculation of esp

It is a simple bug which uses the wrong member.

This bug does not seriously affect ordinary use of IPsec.
But it is important to pass IPv6 ready logo phase-2
conformance test of IPsec SGW.

Signed-off-by: Kazunori MIYAZAWA <miyazawa@linux-ipv6.org>
Signed-off-by: David S. Miller <davem@davemloft.net>
19 years ago[PATCH] powerpc: Fix SLB flushing path in hugepage
David Gibson [Fri, 9 Dec 2005 05:45:17 +0000 (16:45 +1100)]
[PATCH] powerpc: Fix SLB flushing path in hugepage

On ppc64, when opening a new hugepage region, we need to make sure any
old normal-page SLBs for the area are flushed on all CPUs.  There was
a bug in this logic - after putting the new hugepage area masks into
the thread structure, we copied it into the paca (read by the SLB miss
handler) only on one CPU, not on all.  This could cause incorrect SLB
entries to be loaded when a multithreaded program was running
simultaneously on several CPUs.  This patch corrects the error,
copying the context information into the PACA on all CPUs using the mm
in question before flushing any existing SLB entries.

Signed-off-by: David Gibson <david@gibson.dropbear.id.au>
Signed-off-by: Paul Mackerras <paulus@samba.org>
19 years ago[PATCH] powerpc: Add missing icache flushes for hugepages
David Gibson [Fri, 9 Dec 2005 03:20:52 +0000 (14:20 +1100)]
[PATCH] powerpc: Add missing icache flushes for hugepages

On most powerpc CPUs, the dcache and icache are not coherent so
between writing and executing a page, the caches must be flushed.
Userspace programs assume pages given to them by the kernel are icache
clean, so we must do this flush between the kernel clearing a page and
it being mapped into userspace for execute.  We were not doing this
for hugepages, this patch corrects the situation.

We use the same lazy mechanism as we use for normal pages, delaying
the flush until userspace actually attempts to execute from the page
in question.

Tested on G5.

Signed-off-by: David Gibson <david@gibson.dropbear.id.au>
Signed-off-by: Paul Mackerras <paulus@samba.org>
19 years ago[PATCH] powerpc: Set cache info defaults
Olof Johansson [Fri, 9 Dec 2005 01:40:17 +0000 (19:40 -0600)]
[PATCH] powerpc: Set cache info defaults

Cache info is setup by walking the device tree in initialize_cache_info().
However, icache_flush_range might be called before that, in
slb_initialize()->patch_slb_encoding, which modifies the load immediate
instructions used with SLB fault code.

Not only that, but depending on memory layout, we might take SLB faults
during unflatten_device_tree. So that fault will load an SLB entry that
might not contain the right LLP flags for the segment.

Either we can walk the flattened device tree to setup cache info, or
we can pick the known defaults that are known to work. Doing it in the
flattened device tree is hairier since we need to know the machine type
to know what property to look for, etc, etc.

For now, it's just easier to go with the defaults. Worst thing that
happens from it is that we might waste a few cycles doing too small
dcbst/icbi increments.

Signed-off-by: Olof Johansson <olof@lixom.net>
Signed-off-by: Paul Mackerras <paulus@samba.org>
19 years ago[PATCH] Fix windfarm model-id table
Michal Ostrowski [Thu, 8 Dec 2005 05:56:17 +0000 (16:56 +1100)]
[PATCH] Fix windfarm model-id table

model_id fields of wf_smu_sys_all_params should match the model ID
they are supposed to represent (as commented). Fixes windfarm on some
iMac 8,1 models.

Signed-off-by: Michal Ostrowski <mostrows at watson ibm com>
Acked-by: Benjamin Herrenschmidt <benh@kernel.crashing.org>
Signed-off-by: Paul Mackerras <paulus@samba.org>
19 years ago[NET]: Fix NULL pointer deref in checksum debugging.
Stephen Hemminger [Thu, 8 Dec 2005 23:21:39 +0000 (15:21 -0800)]
[NET]: Fix NULL pointer deref in checksum debugging.

The problem I was seeing turned out to be that skb->dev is NULL when
the checksum is being completed in user context. This happens because
the reference to the device is dropped (to allow it to be released
when packets are in the queue).

Because skb->dev was NULL, the netdev_rx_csum_fault was panicing on
deref of dev->name. How about this?

Signed-off-by: Stephen Hemminger <shemminger@osdl.org>
Signed-off-by: David S. Miller <davem@davemloft.net>
19 years ago[PATCH] powerpc: Remove debug code in hash path
Benjamin Herrenschmidt [Thu, 8 Dec 2005 05:53:34 +0000 (16:53 +1100)]
[PATCH] powerpc: Remove debug code in hash path

Some debug code wasn't properly removed from the initial 64k pages
patch, and while it's harmless, it's also slowing down significantly a
very hot code path, thus it should really be removed.

Signed-off-by: Benjamin Herrenschmidt <benh@kernel.crashing.org>
Signed-off-by: Paul Mackerras <paulus@samba.org>
19 years ago[PATCH] powerpc: Fix a huge page bug
Benjamin Herrenschmidt [Thu, 8 Dec 2005 05:51:44 +0000 (16:51 +1100)]
[PATCH] powerpc: Fix a huge page bug

The 64k pages patch changed the meaning of one argument passed to the
low level hash functions (from "large" it became "psize" or page size
index), but one of the call sites wasn't properly updated, causing
potential random weird problems with huge pages. This fixes it.

Signed-off-by: Benjamin Herrenschmidt <benh@kernel.crashing.org>
Signed-off-by: Paul Mackerras <paulus@samba.org>
19 years ago[PATCH] powerpc/pseries: boot failures on numa if no memory on node
Mike Kravetz [Wed, 7 Dec 2005 21:07:23 +0000 (13:07 -0800)]
[PATCH] powerpc/pseries: boot failures on numa if no memory on node

This bug exists in the current code and prevents machines from booting
with numa enabled if there is a node that does not contain memory.
Workaround is to boot with 'numa=off'.  Looks like a simple typo.

Signed-off-by: Mike Kravetz <kravetz@us.ibm.com>
Signed-off-by: Paul Mackerras <paulus@samba.org>
19 years ago[TG3]: remove warning on race
Stephen Hemminger [Wed, 7 Dec 2005 01:36:44 +0000 (17:36 -0800)]
[TG3]: remove warning on race

[ Move assosciated code comment to the correct spot, and
  update driver version and release date -DaveM ]

Signed-off-by: Stephen Hemminger <shemminger@osdl.org>
Signed-off-by: David S. Miller <davem@davemloft.net>
19 years ago[AF_PACKET]: Convert PACKET_MMAP over to vm_insert_page().
David S. Miller [Wed, 7 Dec 2005 00:38:35 +0000 (16:38 -0800)]
[AF_PACKET]: Convert PACKET_MMAP over to vm_insert_page().

So we can properly use __GFP_COMP and avoid the use of
PG_reserved pages.

With extremely helpful review from Hugh Dickins.

Signed-off-by: David S. Miller <davem@davemloft.net>
19 years ago[TCP] Vegas: timestamp before clone
David S. Miller [Wed, 7 Dec 2005 00:24:52 +0000 (16:24 -0800)]
[TCP] Vegas: timestamp before clone

We have to store the congestion control timestamp on the SKB before we
clone it, not after.  Else we get no timestamping information at all.

tcp_transmit_skb() has been reworked so that we can do the timestamp
still in one spot, instead of at all the call sites.

Problem discovered, and initial fix, from Tom Young
<tyo@ee.unimelb.edu.au>.

Signed-off-by: David S. Miller <davem@davemloft.net>
19 years ago[TCP] Vegas: Remove extra call to tcp_vegas_rtt_calc
Thomas Young [Wed, 7 Dec 2005 00:17:11 +0000 (16:17 -0800)]
[TCP] Vegas: Remove extra call to tcp_vegas_rtt_calc

Remove unneeded call to tcp_vegas_rtt_calc. The more accurate
microsecond value has already been registered prior to calling
tcp_vegas_cong_avoid.

Signed-off-by: Thomas Young <tyo@ee.mu.oz.au>
Signed-off-by: David S. Miller <davem@davemloft.net>
19 years ago[TCP] Vegas: stop resetting rtt every ack
Thomas Young [Wed, 7 Dec 2005 00:16:34 +0000 (16:16 -0800)]
[TCP] Vegas: stop resetting rtt every ack

Move the resetting of rtt measurements to inside the once per RTT
block of code.

Signed-off-by: Thomas Young <tyo@ee.mu.oz.au>
Signed-off-by: David S. Miller <davem@davemloft.net>
19 years ago[DECNET]: add memory buffer settings
Steven Whitehouse [Mon, 5 Dec 2005 21:42:06 +0000 (13:42 -0800)]
[DECNET]: add memory buffer settings

The patch (originally from Steve) simply adds memory buffer settings to
DECnet similar to those in TCP.

Signed-off-by: Patrick Caulfield <patrick@tykepenguin.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
19 years ago[NET]: make function pointer argument parseable by kernel-doc
Martin Waitz [Mon, 5 Dec 2005 21:40:12 +0000 (13:40 -0800)]
[NET]: make function pointer argument parseable by kernel-doc

When a function takes a function pointer as argument it should use the 'return
(*pointer)(params...)' syntax used everywhere else in the kernel as this is
recognized by kernel-doc.

Signed-off-by: Martin Waitz <tali@admingilde.org>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: David S. Miller <davem@davemloft.net>
19 years ago[NETFILTER]: Don't use conntrack entry after dropping the reference
Patrick McHardy [Mon, 5 Dec 2005 21:38:16 +0000 (13:38 -0800)]
[NETFILTER]: Don't use conntrack entry after dropping the reference

Signed-off-by: Patrick McHardy <kaber@trash.net>
Signed-off-by: David S. Miller <davem@davemloft.net>
19 years ago[NETFILTER]: Fix unbalanced read_unlock_bh in ctnetlink
Patrick McHardy [Mon, 5 Dec 2005 21:37:33 +0000 (13:37 -0800)]
[NETFILTER]: Fix unbalanced read_unlock_bh in ctnetlink

NFA_NEST calls NFA_PUT which jumps to nfattr_failure if the skb has no
room left. We call read_unlock_bh at nfattr_failure for the NFA_PUT inside
the locked section, so move NFA_NEST inside the locked section too.

Signed-off-by: Patrick McHardy <kaber@trash.net>
Signed-off-by: David S. Miller <davem@davemloft.net>
19 years ago[NETFILTER]: Wait for untracked references in nf_conntrack module unload
Patrick McHardy [Mon, 5 Dec 2005 21:36:50 +0000 (13:36 -0800)]
[NETFILTER]: Wait for untracked references in nf_conntrack module unload

Noticed by Pablo Neira <pablo@eurodev.net>.

Signed-off-by: Patrick McHardy <kaber@trash.net>
Signed-off-by: David S. Miller <davem@davemloft.net>
19 years ago[NETFILTER]: Mark ctnetlink as EXPERIMENTAL
Patrick McHardy [Mon, 5 Dec 2005 21:36:25 +0000 (13:36 -0800)]
[NETFILTER]: Mark ctnetlink as EXPERIMENTAL

Should have been marked EXPERIMENTAL from the beginning, as the current
bunch of fixes show.

Signed-off-by: Patrick McHardy <kaber@trash.net>
Signed-off-by: David S. Miller <davem@davemloft.net>
19 years ago[NETFILTER]: Fix CTA_PROTO_NUM attribute size in ctnetlink
Patrick McHardy [Mon, 5 Dec 2005 21:34:51 +0000 (13:34 -0800)]
[NETFILTER]: Fix CTA_PROTO_NUM attribute size in ctnetlink

CTA_PROTO_NUM is a u_int8_t.

Signed-off-by: Patrick McHardy <kaber@trash.net>
Signed-off-by: David S. Miller <davem@davemloft.net>
19 years ago[NETFILTER]: Fix ip_conntrack_flush abuse in ctnetlink
Patrick McHardy [Mon, 5 Dec 2005 21:33:50 +0000 (13:33 -0800)]
[NETFILTER]: Fix ip_conntrack_flush abuse in ctnetlink

ip_conntrack_flush() used to be part of ip_conntrack_cleanup(), which needs
to drop _all_ references on module unload. Table flushed using ctnetlink
just needs to clean the table and doesn't need to flush the event cache or
wait for any references attached to skbs. Move everything but pure table
flushing back to ip_conntrack_cleanup().

Signed-off-by: Patrick McHardy <kaber@trash.net>
Signed-off-by: David S. Miller <davem@davemloft.net>
19 years ago[NETFILTER]: nfnetlink: Fix calculation of minimum message length
Yasuyuki Kozakai [Mon, 5 Dec 2005 21:33:26 +0000 (13:33 -0800)]
[NETFILTER]: nfnetlink: Fix calculation of minimum message length

At least, valid nfnetlink message should have nlmsghdr and nfgenmsg.

Signed-off-by: Yasuyuki Kozakai <yasuyuki.kozakai@toshiba.co.jp>
Signed-off-by: Patrick McHardy <kaber@trash.net>
Signed-off-by: David S. Miller <davem@davemloft.net>
19 years ago[NETFILTER]: nf_conntrack: Fix missing check for ICMPv6 type
Yasuyuki Kozakai [Mon, 5 Dec 2005 21:32:50 +0000 (13:32 -0800)]
[NETFILTER]: nf_conntrack: Fix missing check for ICMPv6 type

This makes nf_conntrack_icmpv6 check that ICMPv6 type isn't < 128
to avoid accessing out of array valid_new[] and invmap[].

Signed-off-by: Yasuyuki Kozakai <yasuyuki.kozakai@toshiba.co.jp>
Signed-off-by: Patrick McHardy <kaber@trash.net>
Signed-off-by: David S. Miller <davem@davemloft.net>
19 years ago[NETFILTER]: Fix incorrect argument to ip_nat_initialized() in ctnetlink
Pablo Neira Ayuso [Mon, 5 Dec 2005 21:32:14 +0000 (13:32 -0800)]
[NETFILTER]: Fix incorrect argument to ip_nat_initialized() in ctnetlink

ip_nat_initialized() takes enum ip_nat_manip_type as it's second argument,
not a hook number.

Noticed and initial patch by Marcus Sundberg <marcus@ingate.com>.

Signed-off-by: Pablo Neira Ayuso <pablo@netfilter.org>
Signed-off-by: Patrick McHardy <kaber@trash.net>
Signed-off-by: David S. Miller <davem@davemloft.net>
19 years ago[PATCH] powerpc: remove redundant code in stab init
Olof Johansson [Tue, 29 Nov 2005 20:04:17 +0000 (14:04 -0600)]
[PATCH] powerpc: remove redundant code in stab init

There's never been a hardware platform that has both pSeries/RPA LPAR
hypervisor and stab (pre-POWER4 segment management). This removes
the redundant code in stab_initalize().

Signed-off-by: Olof Johansson <olof@lixom.net>
Signed-off-by: Paul Mackerras <paulus@samba.org>
19 years agoppc: Build in all three of powermac, PREP and CHRP support
Paul Mackerras [Mon, 5 Dec 2005 03:39:53 +0000 (14:39 +1100)]
ppc: Build in all three of powermac, PREP and CHRP support

This reverts commit da0825fd201a03294dbf7f8f030676d608da122c, making
it so that if you select CONFIG_PPC_MULTIPLATFORM you get support
for PMAC, PREP and CHRP built in.

The reason for not allowing PMAC, PREP and CHRP to be selected
individually for ARCH=ppc is that there is too much interdependency
between them in the platform support code.  For example, CHRP uses
the PMAC nvram code.

Configuring with ARCH=powerpc does allow you to select support for
PMAC and CHRP separately.  Support for PREP is not there yet but
should be there soon.

Signed-off-by: Paul Mackerras <paulus@samba.org>
19 years agopowerpc/pseries: Optimize IOMMU setup
Paul Mackerras [Mon, 5 Dec 2005 03:19:10 +0000 (14:19 +1100)]
powerpc/pseries: Optimize IOMMU setup

The previous commit will use the page-at-a-time hypervisor call for
setting up IOMMU entries when we are using 64k pages and setting up
one 64k page, even though that means 16 calls to the hypervisor, since
the hypervisor still works on 4k pages.  This optimizes this case by
using the multi-page IOMMU setup hypervisor call instead.

Signed-off-by: Paul Mackerras <paulus@samba.org>
19 years ago[PATCH] V4L/DVB (3087) fix analog NTSC for pcHDTV 3000
Mauro Carvalho Chehab [Sun, 4 Dec 2005 14:41:54 +0000 (12:41 -0200)]
[PATCH] V4L/DVB (3087) fix analog NTSC for pcHDTV 3000

- fix analog NTSC for pcHDTV 3000
- Fix regression: broken analog NTSC for DViCO FusionHDTV3 Gold-T
- add tda9887 to card struct, required for both cards.

Signed-off-by: Michael Krufky <mkrufky@m1k.net>
Signed-off-by: Mauro Carvalho Chehab <mchehab@brturbo.com.br>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
19 years agoLinux v2.6.15-rc5 v2.6.15-rc5
Linus Torvalds [Sun, 4 Dec 2005 05:10:42 +0000 (21:10 -0800)]
Linux v2.6.15-rc5

Hey, for no other reason than the fact that I'll be off-line for a
week.

Of course, I could force everybody to just use git (and when I'm emperor
of the world, don't think I won't!), but it seems some people want to
just test official releases.  Even if they are just -rc's.

By the time I'm back, Andrew will have fixed all my bugs, and I'll
release it as 2.6.15 and take all the credit.

Mwahahahaaa

Signed-off-by: Linus Torvalds <torvalds@osdl.org>
19 years agoLink USB drivers later in the kernel
Linus Torvalds [Sun, 4 Dec 2005 04:50:51 +0000 (20:50 -0800)]
Link USB drivers later in the kernel

We want to link the "regular" SCSI drivers before the USB storage
driver, since historically we've always detected internal SCSI disks
before the external USB storage modules.

The link order matters for initcall ordering, and this got broken by
mistake by commit 7586269c0b52970f60bb69fcb86e765fc1d72309 which moved
the USB host controller PCI quirk handling around.

Signed-off-by: Linus Torvalds <torvalds@osdl.org>
19 years agoMake vm_insert_page() available to NVidia module
Linus Torvalds [Sun, 4 Dec 2005 04:48:11 +0000 (20:48 -0800)]
Make vm_insert_page() available to NVidia module

It used to use remap_pfn_range(), which wasn't GPL-only either, and the
new interface is actually simpler and does more checking, so we
shouldn't unnecessarily discourage people from switching over.

Signed-off-by: Linus Torvalds <torvalds@osdl.org>
19 years ago[PATCH] Fix up per-cpu page batch sizes
Nick Piggin [Sun, 4 Dec 2005 02:55:25 +0000 (13:55 +1100)]
[PATCH] Fix up per-cpu page batch sizes

The code to clamp batch sizes to 2^n - 1 went missing and an extra
check got added, which must have been a hunk of the "higer order pcp
batch refills" work sneaking in.

Signed-off-by: Nick Piggin <npiggin@suse.de>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
19 years ago[PATCH] libata: fix ata_scsi_pass_thru error handling
Tejun Heo [Fri, 2 Dec 2005 02:49:11 +0000 (11:49 +0900)]
[PATCH] libata: fix ata_scsi_pass_thru error handling

This patch makes ata_scsi_pass_thru() properly set result code and
sense data on translation failures.

Signed-off-by: Tejun Heo <htejun@gmail.com>
Signed-off-by: Jeff Garzik <jgarzik@pobox.com>
19 years agoNFSv4: Fix an Oops in the synchronous write path
Trond Myklebust [Sat, 3 Dec 2005 20:20:21 +0000 (15:20 -0500)]
NFSv4: Fix an Oops in the synchronous write path

 - Missing initialisation of attribute bitmask in _nfs4_proc_write()
 - On success, _nfs4_proc_write() must return number of bytes written.
 - Missing post_op_update_inode() in _nfs4_proc_write()
 - Missing initialisation of attribute bitmask in _nfs4_proc_commit()
 - Missing post_op_update_inode() in _nfs4_proc_commit()

Signed-off-by: Trond Myklebust <Trond.Myklebust@netapp.com>
19 years agoNFS: Fix post-op attribute revalidation...
Trond Myklebust [Sat, 3 Dec 2005 20:20:17 +0000 (15:20 -0500)]
NFS: Fix post-op attribute revalidation...

  - Missing nfs_mark_for_revalidate in nfs_proc_link()
  - Missing nfs_mark_for_revalidate in nfs_rename()

Signed-off-by: Trond Myklebust <Trond.Myklebust@netapp.com>
19 years agoNFS: use set_page_writeback() in the appropriate places
Trond Myklebust [Sat, 3 Dec 2005 20:20:14 +0000 (15:20 -0500)]
NFS: use set_page_writeback() in the appropriate places

 Ensure that we use set_page_writeback() in the appropriate places
 to help the VM in keeping its page radix_tree in sync.

Signed-off-by: Trond Myklebust <Trond.Myklebust@netapp.com>
19 years agoSUNRPC: Fix Oopsable condition in rpc_pipefs
Trond Myklebust [Sat, 3 Dec 2005 20:20:10 +0000 (15:20 -0500)]
SUNRPC: Fix Oopsable condition in rpc_pipefs

 The elements on rpci->in_upcall are tracked by the filp->private_data,
 which will ensure that they get released when the file is closed.

 The exception is if rpc_close_pipes() gets called first, since that
 sets rpci->ops to NULL.

Signed-off-by: Trond Myklebust <Trond.Myklebust@netapp.com>
19 years agoNFS: Fix a few further cache consistency regressions
Trond Myklebust [Sat, 3 Dec 2005 20:20:07 +0000 (15:20 -0500)]
NFS: Fix a few further cache consistency regressions

 Steve Dickson writes:
 Doing the following:
 1. On server:
 $ mkdir ~/t
 $ echo Hello > ~/t/tmp

 2. On client, wait for a string to appear in this file:
 $ until grep -q foo t/tmp ; do echo -n . ; sleep 1 ; done

 3. On server, create a *new* file with the same name containing that
 string:
 $ mv ~/t/tmp ~/t/tmp.old; echo foo > ~/t/tmp

 will show how the client will never (and I mean never ;-) ) see
 the updated file.

 The problem is that we do not update nfsi->cache_change_attribute when the
 file changes on the server (we only update it when our client makes the
 changes). This again means that functions like nfs_check_verifier() will
 fail to register when the parent directory has changed and should trigger
 a dentry lookup revalidation.

Signed-off-by: Trond Myklebust <Trond.Myklebust@netapp.com>
19 years agoNFS: Fix cache consistency regression
Steve Dickson [Wed, 30 Nov 2005 14:25:33 +0000 (09:25 -0500)]
NFS: Fix cache consistency regression

 Make sure cache_change_attribute is initialized to jiffies
 so when the mtime changes on directory, the directory
 will be refreshed.

 Signed-off by: Steve Dickson <steved@redhat.com>
Signed-off-by: Trond Myklebust <Trond.Myklebust@netapp.com>
19 years agoMerge master.kernel.org:/pub/scm/linux/kernel/git/davem/net-2.6
Linus Torvalds [Sat, 3 Dec 2005 07:09:38 +0000 (23:09 -0800)]
Merge master.kernel.org:/pub/scm/linux/kernel/git/davem/net-2.6

19 years agoAdd missing "local_irq_enable()" to C2/C3 exit logic
Linus Torvalds [Sat, 3 Dec 2005 07:09:06 +0000 (23:09 -0800)]
Add missing "local_irq_enable()" to C2/C3 exit logic

Silly bug crept in with the C2/C3 TIF_POLLING_NRFLAG fixes.

Signed-off-by: Linus Torvalds <torvalds@osdl.org>
19 years ago[IPV6]: Load protocol module dynamically.
YOSHIFUJI Hideaki [Sat, 3 Dec 2005 04:56:57 +0000 (20:56 -0800)]
[IPV6]: Load protocol module dynamically.

[ Modified to match inet_create() bug fix by Herbert Xu -DaveM ]

Signed-off-by: YOSHIFUJI Hideaki <yoshfuji@linux-ipv6.org>
Signed-off-by: David S. Miller <davem@davemloft.net>
19 years ago[IPV4] Fix EPROTONOSUPPORT error in inet_create
Herbert Xu [Sat, 3 Dec 2005 04:43:26 +0000 (20:43 -0800)]
[IPV4] Fix EPROTONOSUPPORT error in inet_create

There is a coding error in inet_create that causes it to always return
ESOCKTNOSUPPORT.  It should return EPROTONOSUPPORT when there are
protocols registered for a given socket type but none of them match
the requested protocol.

This is based on a patch by Jayachandran C.

Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au>
Signed-off-by: David S. Miller <davem@davemloft.net>
19 years ago[IGMP]: workaround for IGMP v1/v2 bug
David Stevens [Sat, 3 Dec 2005 04:32:59 +0000 (20:32 -0800)]
[IGMP]: workaround for IGMP v1/v2 bug

From: David Stevens <dlstevens@us.ibm.com>

As explained at:

http://www.cs.ucsb.edu/~krishna/igmp_dos/

With IGMP version 1 and 2 it is possible to inject a unicast
report to a client which will make it ignore multicast
reports sent later by the router.

The fix is to only accept the report if is was sent to a
multicast or unicast address.

Signed-off-by: David S. Miller <davem@davemloft.net>
19 years ago[SCTP]: Fix getsockname for sctp when an ipv6 socket accepts a connection from
Neil Horman [Sat, 3 Dec 2005 04:32:29 +0000 (20:32 -0800)]
[SCTP]: Fix getsockname for sctp when an ipv6 socket accepts a connection from
an ipv4 socket.

Signed-off-by: Neil Horman <nhorman@tuxdriver.com>
Signed-off-by: Sridhar Samudrala <sri@us.ibm.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
19 years ago[SCTP]: Return socket errors only if the receive queue is empty.
Neil Horman [Sat, 3 Dec 2005 04:30:06 +0000 (20:30 -0800)]
[SCTP]: Return socket errors only if the receive queue is empty.

This patch fixes an issue where it is possible to get valid data after
a ENOTCONN error. It returns socket errors only after data queued on
socket receive queue is consumed.

Signed-off-by: Neil Horman <nhorman@tuxdriver.com>
Signed-off-by: Sridhar Samudrala <sri@us.ibm.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
19 years agoRevert "[SCSI] fix usb storage oops"
Linus Torvalds [Fri, 2 Dec 2005 23:54:37 +0000 (15:54 -0800)]
Revert "[SCSI] fix usb storage oops"

This reverts commit 34ea80ec6a02ad02e6b9c75c478c18e5880d6713.

It does a put_device() from softirq context, which is bad since it gets
a semaphore for reading.

Signed-off-by: Linus Torvalds <torvalds@osdl.org>
19 years agoMerge master.kernel.org:/pub/scm/linux/kernel/git/jejb/scsi-rc-fixes-2.6
Linus Torvalds [Fri, 2 Dec 2005 22:32:44 +0000 (14:32 -0800)]
Merge master.kernel.org:/pub/scm/linux/kernel/git/jejb/scsi-rc-fixes-2.6

19 years ago[PATCH] Fix TIF_POLLING_NRFLAG in ACPI idle routines
Nick Piggin [Fri, 2 Dec 2005 01:44:19 +0000 (12:44 +1100)]
[PATCH] Fix TIF_POLLING_NRFLAG in ACPI idle routines

Commit 64c7c8f88559624abdbe12b5da6502e8879f8d28 broke the ACPI C2 and C3
sleep states, because it left TIF_POLLING_NRFLAG active even though
those states do not actually poll the reschedule flag at all.  As a
result, the CPU wouldn't get sent an IPI when it was to be woken up, and
would only notice that it had runnable processes on the next timer tick.

Signed-off-by: Linus Torvalds <torvalds@osdl.org>
19 years ago[SCSI] sg: fix a bug in st_map_user_pages failure path
Hugh Dickins [Fri, 2 Dec 2005 15:58:09 +0000 (15:58 +0000)]
[SCSI] sg: fix a bug in st_map_user_pages failure path

sg's st_map_user_pages is modelled on an earlier version of st's
sgl_map_user_pages, and has the same bug: if get_user_pages got some but
not all of the pages, then those got were released, but the positive res
code returned implied that they were still to be freed.

Signed-off-by: Hugh Dickins <hugh@veritas.com>
Signed-off-by: Douglas Gilbert <dougg@torque.net>
Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com>
19 years ago[SCSI] sg and st unmap_user_pages allow PageReserved
Hugh Dickins [Fri, 2 Dec 2005 15:59:59 +0000 (15:59 +0000)]
[SCSI] sg and st unmap_user_pages allow PageReserved

2.6.15-rc1 made sg's st_unmap_user_pages and st's sgl_unmap_user_pages
BUG on a PageReserved page.  But that's wrong: they could be unmapping
the ZERO_PAGE, which is marked PG_reserved; and perhaps others (while
get_user_pages is still permitted on VM_PFNMAP areas - that may change).

More change is needed here: sg claims to dirty even pages written from,
and st claims not to dirty even pages read into; and SetPageDirty is not
adequate for this nowadays.  Fixes to those follow in a later patch: for
the moment just fix the 2.6.15 regression.

Signed-off-by: Hugh Dickins <hugh@veritas.com>
Acked-by: Nick Piggin <npiggin@suse.de>
Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com>
19 years ago[PATCH] powerpc: correct the NR_CPUS description text
Olaf Hering [Thu, 1 Dec 2005 20:10:10 +0000 (21:10 +0100)]
[PATCH] powerpc: correct the NR_CPUS description text

Update the help text to match the allowed range.

Signed-off-by: Olaf Hering <olh@suse.de>
Signed-off-by: Paul Mackerras <paulus@samba.org>
19 years ago[PATCH] powerpc/pseries: Fix TCE building with 64k pagesize
Michal Ostrowski [Fri, 2 Dec 2005 02:09:13 +0000 (13:09 +1100)]
[PATCH] powerpc/pseries: Fix TCE building with 64k pagesize

Must adjust tcenum and npages by TCE_PAGE_FACTOR to convert between
64KB pages and TCE (4K) pages.  (This is done in other places, except
for this one location.)

Signed-off-by: Michal Ostrowski <mostrows at watson ibm com>
Signed-off-by: Benjamin Herrenschmidt <benh@kernel.crashing.org>
Signed-off-by: Paul Mackerras <paulus@samba.org>
19 years agoMerge master.kernel.org:/pub/scm/linux/kernel/git/davem/net-2.6
Linus Torvalds [Thu, 1 Dec 2005 23:54:00 +0000 (15:54 -0800)]
Merge master.kernel.org:/pub/scm/linux/kernel/git/davem/net-2.6