]> err.no Git - linux-2.6/log
linux-2.6
17 years ago[PATCH] GPIO API: PXA wrapper cleanup
Philipp Zabel [Tue, 20 Feb 2007 21:58:15 +0000 (13:58 -0800)]
[PATCH] GPIO API: PXA wrapper cleanup

Based on the discussion last december (http://lkml.org/lkml/2006/12/20/242),
this patch:

  - moves the PXA_LAST_GPIO check into pxa_gpio_mode
  - fixes comment and includes in gpio.h
  - replaces the gpio_set/get_value macros with inline
    functions and adds a non-inline version to avoid
    code explosion when gpio is not a constant.

Signed-off-by: Philipp Zabel <philipp.zabel@gmail.com>
Signed-off-by: David Brownell <dbrownell@users.sourceforge.net>
Signed-off-by: Nicolas Pitre <nico@cam.org>
Cc: Russell King <rmk@arm.linux.org.uk>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
17 years ago[PATCH] at91_rtc updates
David Brownell [Tue, 20 Feb 2007 21:58:14 +0000 (13:58 -0800)]
[PATCH] at91_rtc updates

Various bug fixes to the at91rm9200 RTC:

 - alarm:  setalarm() should pay attention to the "enabled" flag

 - init:  cleaner handling of the wakeup flags, which cpu init should
   really have set up.  Doing it here is just a workaround.

 - linkage:  since the at91_rtc driver probe() routine is in the init
   section, it should use platform_driver_probe() instead of leaving
   that pointer around in the driver struct after init section removal.

 - linkage:  likewise, remove() belongs in the exit section.

Among other things, the init and alarm changes ensure that this driver
handles the new sysfs "wakealarm" attribute properly.

Signed-off-by: David Brownell <dbrownell@users.sourceforge.net>
Cc: Alessandro Zummo <a.zummo@towertech.it>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
17 years ago[PATCH] rtc-sa1100 rtc_wklarm.enabled bugfixes
David Brownell [Tue, 20 Feb 2007 21:58:13 +0000 (13:58 -0800)]
[PATCH] rtc-sa1100 rtc_wklarm.enabled bugfixes

Some rtc-sa1100 bugfixes:

 - The read_alarm() method reports the rtc_wkalrm.enabled field properly.
   This patch is already in the handhelds.org tree.

 - And the set_alarm() method now handles that flag correctly, rather than
   making mismatched {en,dis}able_irq_wake() calls, which trigger runtime
   warning messages.  (Those calls are best made in suspend/resume methods.)

Note that while this SA1100/PXA RTC is fully capable of waking those ARM
processors from sleep states, that mechanism isn't properly supported on
either processor family, or in this driver.  Some boards have board-specific
PM glue providing partial workarounds for the weak generic PM support.

Signed-off-by: David Brownell <dbrownell@users.sourceforge.net>
Cc: Alessandro Zummo <a.zummo@towertech.it>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
17 years ago[PATCH] update Doc/oops-tracing.txt for TAINT_USER
Randy Dunlap [Tue, 20 Feb 2007 21:58:12 +0000 (13:58 -0800)]
[PATCH] update Doc/oops-tracing.txt for TAINT_USER

Add TAINT_USER description to Tainted flags in oops-tracing.txt.

Signed-off-by: Randy Dunlap <randy.dunlap@oracle.com>
Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
17 years ago[PATCH] Missing __user in pointer referenced within copy_from_user
Glauber de Oliveira Costa [Tue, 20 Feb 2007 21:58:12 +0000 (13:58 -0800)]
[PATCH] Missing __user in pointer referenced within copy_from_user

Pointers to user data should be marked with a __user hint.  This one is
missing.

Signed-off-by: Glauber de Oliveira Costa <gcosta@redhat.com>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
17 years ago[PATCH] genalloc warning fixes
Andrew Morton [Tue, 20 Feb 2007 21:58:12 +0000 (13:58 -0800)]
[PATCH] genalloc warning fixes

lib/genalloc.c: In function 'gen_pool_alloc':
lib/genalloc.c:151: warning: passing argument 2 of '__set_bit' from incompatible pointer type
lib/genalloc.c: In function 'gen_pool_free':
lib/genalloc.c:190: warning: passing argument 2 of '__clear_bit' from incompatible pointer type

Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
17 years ago[PATCH] affs: implement ->drop_inode
Christoph Hellwig [Tue, 20 Feb 2007 21:58:11 +0000 (13:58 -0800)]
[PATCH] affs: implement ->drop_inode

affs wants to truncate the inode when the last user goes away, currently it
does that through a potentially racy i_count check in ->put_inode.  But we
already have a method that's called just after the we dropped the last
reference, ->drop_inode.  This patch implements affs_drop_inode to take
advantage of this.

Signed-off-by: Christoph Hellwig <hch@lst.de>
Cc: Roman Zippel <zippel@linux-m68k.org>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
17 years ago[PATCH] autofs4: check for directory re-create in lookup
Ian Kent [Tue, 20 Feb 2007 21:58:10 +0000 (13:58 -0800)]
[PATCH] autofs4: check for directory re-create in lookup

This problem was identified and fixed some time ago by Jeff Moyer but it fell
through the cracks somehow.

It is possible that a user space application could remove and re-create a
directory during a request.  To avoid returning a failure from lookup
incorrectly when our current dentry is unhashed we need to check if another
positive, hashed dentry matching this one exists and if so return it instead
of a fail.

Signed-off-by: Jeff Moyer <jmoyer@redhat.com>
Signed-off-by: Ian Kent <raven@themaw.net>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
17 years ago[PATCH] autofs4: fix another race between mount and expire
Ian Kent [Tue, 20 Feb 2007 21:58:10 +0000 (13:58 -0800)]
[PATCH] autofs4: fix another race between mount and expire

Jeff Moyer has identified a race between mount and expire.

What happens is that during an expire the situation can arise that a directory
is removed and another lookup is done before the expire issues a completion
status to the kernel module.  In this case, since the the lookup gets a new
dentry, it doesn't know that there is an expire in progress and when it posts
its mount request, matches the existing expire request and waits for its
completion.  ENOENT is then returned to user space from lookup (as the dentry
passed in is now unhashed) without having performed the mount request.

The solution used here is to keep track of dentrys in this unhashed state and
reuse them, if possible, in order to preserve the flags.  Additionally, this
infrastructure will provide the framework for the reintroduction of caching of
mount fails removed earlier in development.

Signed-off-by: Ian Kent <raven@themaw.net>
Acked-by: Jeff Moyer <jmoyer@redhat.com>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
17 years ago[PATCH] autofs4: header file update
Ian Kent [Tue, 20 Feb 2007 21:58:09 +0000 (13:58 -0800)]
[PATCH] autofs4: header file update

The current header file definitions for autofs version 5 have caused a couple
of problems for application builds downstream.

This fixes the problem by separating the definitions.

Signed-off-by: Ian Kent <raven@themaw.net>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
17 years ago[PATCH] fs: fix nobh data leak
Nick Piggin [Tue, 20 Feb 2007 21:58:09 +0000 (13:58 -0800)]
[PATCH] fs: fix nobh data leak

nobh_prepare_write leaks data similarly to how simple_prepare_write did. Fix
by not marking the page uptodate until nobh_commit_write time. Again, this
could break weird use-cases, but none appear to exist in the tree.

We can safely remove the set_page_dirty, because as the comment says,
nobh_commit_write does set_page_dirty. If a filesystem wants to allocate
backing store for a page dirtied via mmap, page_mkwrite is the suggested
approach.

Signed-off-by: Nick Piggin <npiggin@suse.de>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
17 years ago[PATCH] fs: fix libfs data leak
Nick Piggin [Tue, 20 Feb 2007 21:58:08 +0000 (13:58 -0800)]
[PATCH] fs: fix libfs data leak

simple_prepare_write leaks uninitialised kernel data.  This happens because
the it leaves an uninitialised "hole" over the part of the page that the
write is expected to go to.  This is fine, but it then marks the page
uptodate, which means a concurrent read can come in and copy the
uninitialised memory into userspace before it written to.

Fix it by simply marking it uptodate in simple_commit_write instead, after
the hole has been filled in.  This could theoretically break an fs that
uses simple_prepare_write and not simple_commit_write, and that relies on
the incorrect simple_prepare_write behaviour.  Luckily, none of those
exists in the tree.

Signed-off-by: Nick Piggin <npiggin@suse.de>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
17 years ago[PATCH] loosen dependancy on rtc cmos
Dave Jones [Tue, 20 Feb 2007 21:58:07 +0000 (13:58 -0800)]
[PATCH] loosen dependancy on rtc cmos

This option is useful for all of the X86 subarchs afaik (and especially
X86_GENERICARCH).

Signed-off-by: Dave Jones <davej@redhat.com>
Acked-by: David Brownell <david-b@pacbell.net>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
17 years ago[PATCH] PPC64 Kdump documentation update
Simon Horman [Tue, 20 Feb 2007 21:58:07 +0000 (13:58 -0800)]
[PATCH] PPC64 Kdump documentation update

Patch from Mohan Kumar M to add the ppc64 portions of the kdump
documentation.

http://thread.gmane.org/gmane.linux.kernel/481689/focus=3375

Cc: Mohan Kumar M <mohan@in.ibm.com>
Cc: Vivek Goyal <vgoyal@in.ibm.com>
Signed-off-by: Simon Horman <horms@verge.net.au>
Cc: Paul Mackerras <paulus@samba.org>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
17 years ago[PATCH] Update OSDL/Linux-Foundation maintainer addresses
Simon Horman [Tue, 20 Feb 2007 21:58:06 +0000 (13:58 -0800)]
[PATCH] Update OSDL/Linux-Foundation maintainer addresses

The patch below updates MAINTAIER address
  Individuals (Only Andrew :): osdl.org -> linux-foundation.org
  Lists:                       osdl.org -> lists.osdl.org

I assume the latter will change at some stage, but at least
with this change the osdl/linux-foundation lists are consistent.

Signed-off-by: Simon Horman <horms@verge.net.au>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
17 years ago[PATCH] 8250: Fix GCC4 signed/unsigned mismatch warning
Thomas Koeller [Tue, 20 Feb 2007 21:58:05 +0000 (13:58 -0800)]
[PATCH] 8250: Fix GCC4 signed/unsigned mismatch warning

Signed-off-by: Thomas Koeller <thomas.koeller@baslerweb.com>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
17 years ago[PATCH] cdrom: use unsigned bitfields
Randy Dunlap [Tue, 20 Feb 2007 21:58:05 +0000 (13:58 -0800)]
[PATCH] cdrom: use unsigned bitfields

Fix 23 of these sparse warnings on x86_64 allmodconfig:
include/linux/cdrom.h:942:19: error: dubious bitfield without explicit
`signed' or `unsigned'

Signed-off-by: Randy Dunlap <randy.dunlap@oracle.com>
Cc: Jens Axboe <axboe@suse.de>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
17 years ago[PATCH] tty: use NULL for ptrs
Randy Dunlap [Tue, 20 Feb 2007 21:58:05 +0000 (13:58 -0800)]
[PATCH] tty: use NULL for ptrs

Fix sparse warning in tty_io:
drivers/char/tty_io.c:1536:34: warning: Using plain integer as NULL pointer

Signed-off-by: Randy Dunlap <randy.dunlap@oracle.com>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
17 years ago[PATCH] kernel-doc: include struct short description in title output
Randy Dunlap [Tue, 20 Feb 2007 21:58:04 +0000 (13:58 -0800)]
[PATCH] kernel-doc: include struct short description in title output

Output of a function or struct in html mode needs to include the short
description from the function/struct name line in the output title line.

Signed-off-by: Randy Dunlap <randy.dunlap@oracle.com>
Acked-by: Johannes Berg <johannes@sipsolutions.net>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
17 years ago[PATCH] mfd: SM501 core driver
Ben Dooks [Tue, 20 Feb 2007 21:58:01 +0000 (13:58 -0800)]
[PATCH] mfd: SM501 core driver

This driver provides the core functionality of the SM501, which is a
multi-function chip including two framebuffers, video acceleration, USB,
and many other peripheral blocks.

The driver exports a number of entries for the peripheral drivers to use.

Signed-off-by: Ben Dooks <ben-linux@fluff.org>
Signed-off-by: Vincent Sanders <vince@arm.linux.org.uk>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
17 years ago[PATCH] lockdep: debug_locks check after check_chain_key
Jarek Poplawski [Tue, 20 Feb 2007 21:58:00 +0000 (13:58 -0800)]
[PATCH] lockdep: debug_locks check after check_chain_key

In __lock_acquire check_chain_key can turn off debug_locks, so check is
needed to assure proper return code.

Signed-off-by: Jarek Poplawski <jarkao2@o2.pl>
Cc: Ingo Molnar <mingo@elte.hu>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
17 years ago[PATCH] cfag12864b: fix crash when built-in and no parport present
Miguel Ojeda [Tue, 20 Feb 2007 21:58:00 +0000 (13:58 -0800)]
[PATCH] cfag12864b: fix crash when built-in and no parport present

The problem comes when ks0108/cfag12864b are built-in and no parallel port is
present.  ks0108_init() is called first, as it should be, but fails to load
(as there is no parallel port to use).

After that, cfag12864b_init() gets called, without knowing anything about
ks0108 failed, and calls ks0108_writecontrol(), which dereferences an
uninitialized pointer.

Init order is OK, I think.  The problem is how to stop cfag12864b_init() being
called if ks0108 failed to load.  modprobe does it for us, but, how when
built-in?

Signed-off-by: Miguel Ojeda Sandonis <maxextreme@gmail.com>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
17 years ago[PATCH] ext[234]: update documentation
Aneesh Kumar K.V [Tue, 20 Feb 2007 21:57:58 +0000 (13:57 -0800)]
[PATCH] ext[234]: update documentation

Signed-off-by: "Aneesh Kumar K.V" <aneesh.kumar@gmail.com>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
17 years ago[PATCH] mwave: interesting flags savings
Alexey Dobriyan [Tue, 20 Feb 2007 21:57:57 +0000 (13:57 -0800)]
[PATCH] mwave: interesting flags savings

Flags from spin_lock_irqsave() are saved into global variable and restored
from it.  My gut feeling this is very racy.

Signed-off-by: Alexey Dobriyan <adobriyan@gmail.com>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
17 years ago[PATCH] pktcdvd: Correctly set cmd_len field in pkt_generic_packet
Gerhard Dirschl [Tue, 20 Feb 2007 21:57:56 +0000 (13:57 -0800)]
[PATCH] pktcdvd: Correctly set cmd_len field in pkt_generic_packet

Fixes http://bugzilla.kernel.org/show_bug.cgi?id=7810 - a silly
copy-paste bug introduced by the latest change.

Signed-off-by: Gerhard Dirschl <gd@spherenet.de>
Cc: Peter Osterlund <petero2@telia.com>
Cc: <stable@kernel.org>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
17 years ago[PATCH] fault injection: split up stacktrace filter Kconfig option
Akinobu Mita [Tue, 20 Feb 2007 21:57:56 +0000 (13:57 -0800)]
[PATCH] fault injection: split up stacktrace filter Kconfig option

There is no prompt for CONFIG_STACKTRACE, so FAULT_INJECTION cannot be
selected without LOCKDEP enabled.  (found by Paolo 'Blaisorblade'
Giarrusso)

In order to fix such broken Kconfig dependency, this patch splits up the
stacktrace filter support for fault injection by new Kconfig option, which
enables to use fault injection on the architecture which doesn't have
general stacktrace support.

Cc: "Paolo 'Blaisorblade' Giarrusso" <blaisorblade@yahoo.it>
Signed-off-by: Akinobu Mita <akinobu.mita@gmail.com>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
17 years ago[PATCH] FAT: DIO-write fallback to normal buffered
OGAWA Hirofumi [Tue, 20 Feb 2007 21:57:55 +0000 (13:57 -0800)]
[PATCH] FAT: DIO-write fallback to normal buffered

If the DIO write on FAT is expanding the size, it will be fail by -EINVAL,
because FAT can't handle it now.

This patch fallback it to the normal buffered-write and would return
success.

Signed-off-by: OGAWA Hirofumi <hirofumi@mail.parknet.co.jp>
Acked-by: Jan Kara <jack@suse.cz>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
17 years ago[PATCH] kprobes: list all active probes in the system
Srinivasa Ds [Tue, 20 Feb 2007 21:57:54 +0000 (13:57 -0800)]
[PATCH] kprobes: list all active probes in the system

This patch lists all active probes in the system by scanning through
kprobe_table[].  It takes care of aggregate handlers and prints the type of
the probe.  Letter "k" for kprobes, "j" for jprobes, "r" for kretprobes.
It also lists address of the instruction,its symbolic name(function name +
offset) and the module name.  One can access this file through
/sys/kernel/debug/kprobes/list.

Output looks like this
=====================
llm40:~/a # cat /sys/kernel/debug/kprobes/list
c0169ae3  r  sys_read+0x0
c0169ae3  k  sys_read+0x0
c01694c8  k  vfs_write+0x0
c0167d20  r  sys_open+0x0
f8e658a6  k  reiserfs_delete_inode+0x0  reiserfs
c0120f4a  k  do_fork+0x0
c0120f4a  j  do_fork+0x0
c0169b4a  r  sys_write+0x0
c0169b4a  k  sys_write+0x0
c0169622  r  vfs_read+0x0
=================================

[akpm@linux-foundation.org: cleanup]
[ananth@in.ibm.com: sparc build fix]
Signed-off-by: Srinivasa DS <srinivasa@in.ibm.com>
Cc: Prasanna S Panchamukhi <prasanna@in.ibm.com>
Cc: Ananth N Mavinakayanahalli <ananth@in.ibm.com>
Cc: Anil S Keshavamurthy <anil.s.keshavamurthy@intel.com>
Signed-off-by: Ananth N Mavinakayanahalli <ananth@in.ibm.com>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
17 years ago[PATCH] fs: fix __block_write_full_page error case buffer submission
Nick Piggin [Tue, 20 Feb 2007 21:57:54 +0000 (13:57 -0800)]
[PATCH] fs: fix __block_write_full_page error case buffer submission

Andrew noticed that unlocking the page before submitting all buffers for
writeout could cause problems if the IO completes before we've finished
messing around with the page buffers, and they subsequently get freed.

Even if there were no bug, it is a good idea to bring the error case
into line with the common case here.

Signed-off-by: Nick Piggin <npiggin@suse.de>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
17 years ago[PATCH] shm: make sysv ipc shared memory use stacked files
Eric W. Biederman [Tue, 20 Feb 2007 21:57:53 +0000 (13:57 -0800)]
[PATCH] shm: make sysv ipc shared memory use stacked files

The current ipc shared memory code runs into several problems because it
does not quite use files like the rest of the kernel.  With the option of
backing ipc shared memory with either hugetlbfs or ordinary shared memory
the problems got worse.  With the added support for ipc namespaces things
behaved so unexpected that we now have several bad namespace reference
counting bugs when using what appears at first glance to be a reasonable
idiom.

So to attack these problems and hopefully make the code more maintainable
this patch simply uses the files provided by other parts of the kernel and
builds it's own files out of them.  The shm files are allocated in do_shmat
and freed when their reference count drops to zero with their last unmap.
The file and vm operations that we don't want to implement or we don't
implement completely we just delegate to the operations of our backing
file.

This means that we now get an accurate shm_nattch count for we have a
hugetlbfs inode for backing store, and the shm accounting of last attach
and last detach time work as well.

This means that getting a reference to the ipc namespace when we create the
file and dropping the referenece in the release method is now safe and
correct.

This means we no longer need a special case for clearing VM_MAYWRITE
as our file descriptor now only has write permissions when we have
requested write access when calling shmat.  Although VM_SHARED is now
cleared as well which I believe is harmless and is mostly likely a
minor bug fix.

By using the same set of operations for both the hugetlb case and regular
shared memory case shmdt is not simplified and made slightly more correct
as now the test "vma->vm_ops == &shm_vm_ops" is 100% accurate in spotting
all shared memory regions generated from sysvipc shared memory.

Signed-off-by: Eric W. Biederman <ebiederm@xmission.com>
Cc: Michal Piotrowski <michal.k.k.piotrowski@gmail.com>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
17 years ago[PATCH] slab: reduce size of alien cache to cover only possible nodes
Christoph Lameter [Tue, 20 Feb 2007 21:57:52 +0000 (13:57 -0800)]
[PATCH] slab: reduce size of alien cache to cover only possible nodes

The alien cache is a per cpu per node array allocated for every slab on the
system.  Currently we size this array for all nodes that the kernel does
support.  For IA64 this is 1024 nodes.  So we allocate an array with 1024
objects even if we only boot a system with 4 nodes.

This patch uses "nr_node_ids" to determine the number of possible nodes
supported by a hardware configuration and only allocates an alien cache
sized for possible nodes.

The initialization of nr_node_ids occurred too late relative to the bootstrap
of the slab allocator and so I moved the setup_nr_node_ids() into
free_area_init_nodes().

Signed-off-by: Christoph Lameter <clameter@sgi.com>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
17 years ago[PATCH] Convert highest_possible_processor_id to nr_cpu_ids
Christoph Lameter [Tue, 20 Feb 2007 21:57:51 +0000 (13:57 -0800)]
[PATCH] Convert highest_possible_processor_id to nr_cpu_ids

We frequently need the maximum number of possible processors in order to
allocate arrays for all processors.  So far this was done using
highest_possible_processor_id().  However, we do need the number of
processors not the highest id.  Moreover the number was so far dynamically
calculated on each invokation.  The number of possible processors does not
change when the system is running.  We can therefore calculate that number
once.

Signed-off-by: Christoph Lameter <clameter@sgi.com>
Cc: Frederik Deweerdt <frederik.deweerdt@gmail.com>
Cc: Neil Brown <neilb@suse.de>
Cc: Trond Myklebust <trond.myklebust@fys.uio.no>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
17 years ago[PATCH] Replace highest_possible_node_id() with nr_node_ids
Christoph Lameter [Tue, 20 Feb 2007 21:57:51 +0000 (13:57 -0800)]
[PATCH] Replace highest_possible_node_id() with nr_node_ids

highest_possible_node_id() is currently used to calculate the last possible
node idso that the network subsystem can figure out how to size per node
arrays.

I think having the ability to determine the maximum amount of nodes in a
system at runtime is useful but then we should name this entry
correspondingly, it should return the number of node_ids, and the the value
needs to be setup only once on bootup.  The node_possible_map does not
change after bootup.

This patch introduces nr_node_ids and replaces the use of
highest_possible_node_id().  nr_node_ids is calculated on bootup when the
page allocators pagesets are initialized.

[deweerdt@free.fr: fix oops]
Signed-off-by: Christoph Lameter <clameter@sgi.com>
Cc: Neil Brown <neilb@suse.de>
Cc: Trond Myklebust <trond.myklebust@fys.uio.no>
Signed-off-by: Frederik Deweerdt <frederik.deweerdt@gmail.com>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
17 years ago[PATCH] mincore warning fix
Andrew Morton [Tue, 20 Feb 2007 21:57:50 +0000 (13:57 -0800)]
[PATCH] mincore warning fix

allnoconfig:

mm/mincore.c: In function 'do_mincore':
mm/mincore.c:122: warning: unused variable 'entry'

Yet another entry in the why-macros-are-wrong encyclopedia.

Cc: Christoph Lameter <clameter@engr.sgi.com>
Cc: Nick Piggin <nickpiggin@yahoo.com.au>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
17 years ago[PATCH] fix mempolicy's check on a system with memory-less-node
KAMEZAWA Hiroyuki [Tue, 20 Feb 2007 21:57:49 +0000 (13:57 -0800)]
[PATCH] fix mempolicy's check on a system with memory-less-node

bind_zonelist() can create zero-length zonelist if there is a
memory-less-node.  This patch checks the length of zonelist.  If length is
0, returns -EINVAL.

tested on ia64/NUMA with memory-less-node.

Signed-off-by: KAMEZAWA Hiroyuki <kamezawa.hiroyu@jp.fujitsu.com>
Acked-by: Andi Kleen <ak@suse.de>
Cc: Christoph Lameter <clameter@sgi.com>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
17 years ago[PATCH] rework reserved major handling
Andrew Morton [Tue, 20 Feb 2007 21:57:48 +0000 (13:57 -0800)]
[PATCH] rework reserved major handling

Several people have reported failures in dynamic major device number handling
due to the recent changes in there to avoid handing out the local/experimental
majors.

Rolf reports that this is due to a gcc-4.1.0 bug.

The patch refactors that code a lot in an attempt to provoke the compiler into
behaving.

Cc: Rolf Eike Beer <eike-kernel@sf-tec.de>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
17 years ago[PATCH] minix v3: fix superblock definition
Andries Brouwer [Tue, 20 Feb 2007 21:57:47 +0000 (13:57 -0800)]
[PATCH] minix v3: fix superblock definition

Somehow we got the layout of the v3 superblock wrong, which causes crashes due
to overindexing of the buffer_head array in statfs on large fielsystems.

Cc: "Cedric Augonnet" <cedric.augonnet@gmail.com>
Cc: "Daniel Aragones" <danarag@gmail.com>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
17 years ago[PATCH] xfs warning fix
Andrew Morton [Tue, 20 Feb 2007 21:57:47 +0000 (13:57 -0800)]
[PATCH] xfs warning fix

fs/xfs/linux-2.6/xfs_super.c:903: warning: 'noinline' attribute ignored

Cc: David Chinner <dgc@sgi.com>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
17 years ago[PATCH] Fix build errors if bitop functions are do {} while macros
Ralf Baechle [Tue, 20 Feb 2007 21:57:45 +0000 (13:57 -0800)]
[PATCH] Fix build errors if bitop functions are do {} while macros

If one of clear_bit, change_bit or set_bit is defined as a do { } while (0)
function usage of these functions in parenthesis like

  (foo_bit(23, &var))

while be expaned to something like

  (do { ... } while (0)}).

resulting in a build error.  This patch removes the useless parenthesis.

Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
Cc: Trond Myklebust <trond.myklebust@fys.uio.no>
Cc: Neil Brown <neilb@suse.de>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
17 years agoMerge branch 'for-linus' of master.kernel.org:/home/rmk/linux-2.6-arm
Linus Torvalds [Tue, 20 Feb 2007 20:14:32 +0000 (12:14 -0800)]
Merge branch 'for-linus' of master.kernel.org:/home/rmk/linux-2.6-arm

* 'for-linus' of master.kernel.org:/home/rmk/linux-2.6-arm:
  [ARM] 4165/1: S3C24XX: Select CONFIG_NO_IOPORT
  [ARM] Fix s3c2410 ALSA audio for typedef elimination
  [ARM] Fix ARM AACI ALSA driver
  [ARM] fix mach-at91 build breakage
  [ARM] Fix jornada720 build errors
  [ARM] Fix iop13xx build error
  [ARM] Fix build error caused by move of apm
  [ARM] 4223/1: ixdp2351 : Fix for a define error
  [ARM] 4187/1: iop: unify time implementation across iop32x, iop33x, and iop13xx
  [ARM] 4186/1: iop: remove cp6_enable/disable routines
  [ARM] 4185/2: entry: introduce get_irqnr_preamble and arch_ret_to_user

17 years agoMerge ARM fixes
Russell King [Tue, 20 Feb 2007 19:13:30 +0000 (19:13 +0000)]
Merge ARM fixes

17 years agoMerge branch 'upstream-linus' of master.kernel.org:/pub/scm/linux/kernel/git/jgarzik...
Linus Torvalds [Tue, 20 Feb 2007 18:26:46 +0000 (10:26 -0800)]
Merge branch 'upstream-linus' of master.kernel.org:/pub/scm/linux/kernel/git/jgarzik/netdev-2.6

* 'upstream-linus' of master.kernel.org:/pub/scm/linux/kernel/git/jgarzik/netdev-2.6: (21 commits)
  natsemi: Support Aculab E1/T1 PMXc cPCI carrier cards
  natsemi: Add support for using MII port with no PHY
  skge: race with workq and RTNL
  Replace local random function with random32()
  s2io: RTNL and flush_scheduled_work deadlock
  8139too: RTNL and flush_scheduled_work deadlock
  sis190: RTNL and flush_scheduled_work deadlock
  r8169: RTNL and flush_scheduled_work deadlock
  [PATCH] ieee80211softmac: Fix setting of initial transmit rates
  [PATCH] bcm43xx: OFDM fix for rev 1 cards
  [PATCH] bcm43xx: Fix for 4311 and 02/07/07 specification changes
  [PATCH] prism54: correct assignment of DOT1XENABLE in WE-19 codepaths
  [PATCH] zd1211rw: Readd zd_addr_t cast
  [PATCH] bcm43xx: Fix for oops on resume
  [PATCH] bcm43xx: Ignore ampdu status reports
  [PATCH] wavelan: Use ARRAY_SIZE macro when appropriate
  [PATCH] hostap: Use ARRAY_SIZE macro when appropriate
  [PATCH] misc-wireless: Use ARRAY_SIZE macro when appropriate
  [PATCH] ipw2100: Use ARRAY_SIZE macro when appropriate
  [PATCH] bcm43xx: Janitorial change - remove two unused variables
  ...

17 years agoMerge branch 'for-linus' of git://git.o-hand.com/linux-rpurdie-backlight
Linus Torvalds [Tue, 20 Feb 2007 18:17:32 +0000 (10:17 -0800)]
Merge branch 'for-linus' of git://git.o-hand.com/linux-rpurdie-backlight

* 'for-linus' of git://git.o-hand.com/linux-rpurdie-backlight:
  backlight: Remove bogus SYSFS dependency
  backlight: simplify corgi_bl locking
  backlight: Separate backlight properties from backlight ops pointers
  backlight: Clean up pmac_backlight handling
  backlight: Improve backlight selection for fbdev drivers
  backlight: Rework backlight/fb interaction simplifying, lots
  backlight: Remove unneeded backlight update_status calls
  backlight: Remove uneeded update_status call from chipsfb.c
  backlight/fbcon: Add FB_EVENT_CONBLANK
  backlight: Fix Kconfig entries
  backlight: Remove uneeded nvidia set_power calls
  backlight: Convert semaphore -> mutex
  backlight: Fix external uses of backlight internal semaphore
  backlight: Minor code cleanups for hp680_bl.c
  backlight: Minor code cleanups for corgi_bl.c
  backlight: Remove excessive (un)likelys
  backlight: Remove unneeded owner field
  backlight: Fix error handling
  backlight: Add Frontpath ProGear HX1050+ driver
  backlight: Add maintainer entry

17 years ago[PATCH] ARM: fix mach-at91 build breakage
David Brownell [Tue, 20 Feb 2007 05:28:53 +0000 (21:28 -0800)]
[PATCH] ARM: fix mach-at91 build breakage

The rename of the AT91 subtree from mach-at91rm9200 to mach-at91
(to accomodate at91sam926x processors) was incomplete.  It needs
this patch to be able to build again.

Signed-off-by: David Brownell <dbrownell@users.sourceforge.net>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
17 years agoMerge branch 'upstream' of git://ftp.linux-mips.org/pub/scm/upstream-linus
Linus Torvalds [Tue, 20 Feb 2007 18:14:29 +0000 (10:14 -0800)]
Merge branch 'upstream' of git://ftp.linux-mips.org/pub/scm/upstream-linus

* 'upstream' of git://ftp.linux-mips.org/pub/scm/upstream-linus:
  [NET] Eliminate user-selectable CONFIG_MV643XX_ETH_[012]
  [MIPS] Drop __init from init_8259A()
  [MIPS] Fix Kconfig typo bug
  [MIPS] Fix double signal on trap and break instruction
  [MIPS] sigset_32 has been made redundand by compat_sigset_t.
  [MIPS] emma2rh: Remove needless <asm/i8259.h> inclusion.
  [MIPS] Add MTD device support for Cobalt

17 years ago[PATCH] tty_register_driver: Remove incorrect and superfluous cast
Geert Uytterhoeven [Tue, 20 Feb 2007 14:45:21 +0000 (15:45 +0100)]
[PATCH] tty_register_driver: Remove incorrect and superfluous cast

tty_register_driver: Remove incorrect and superfluous cast (expected and passed
types are both const char *)

Signed-off-by: Geert Uytterhoeven <Geert.Uytterhoeven@sonycom.com>
Acked-by: Alan Cox <alan@redhat.com>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
17 years ago[NET] Eliminate user-selectable CONFIG_MV643XX_ETH_[012]
Dale Farnsworth [Tue, 20 Feb 2007 12:15:20 +0000 (05:15 -0700)]
[NET] Eliminate user-selectable CONFIG_MV643XX_ETH_[012]

Remove the use of CONFIG_MV643XX_ETH_[012] variables on most platforms.
Instead, platform-specific code enables the ports supported by the
hardware.  After this patch, these config variables are only used in
arch/ppc, so also move them from drivers/net/Kconfig to arch/ppc/Kconfig.

Signed-off-by: Dale Farnsworth <dale@farnsworth.org>
Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
Acked-by: Jeff Garzik <jeff@garzik.org>
Cc: Paul Mackerras <paulus@samba.org>
17 years ago[MIPS] Drop __init from init_8259A()
Atsushi Nemoto [Tue, 20 Feb 2007 11:08:45 +0000 (20:08 +0900)]
[MIPS] Drop __init from init_8259A()

init_8259A() is called from i8259A_resume() so should not be marked as
__init.  And add some tests for whether 8259A was already initialized
or not.

Signed-off-by: Atsushi Nemoto <anemo@mba.ocn.ne.jp>
Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
17 years ago[MIPS] Fix Kconfig typo bug
Ralf Baechle [Thu, 8 Feb 2007 12:44:19 +0000 (12:44 +0000)]
[MIPS] Fix Kconfig typo bug

Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
17 years ago[MIPS] Fix double signal on trap and break instruction
Atsushi Nemoto [Tue, 6 Feb 2007 07:02:21 +0000 (16:02 +0900)]
[MIPS] Fix double signal on trap and break instruction

This commit broke gdb, since any BREAK or TRAP instruction cause SIGSEGV.

Signed-off-by: Atsushi Nemoto <anemo@mba.ocn.ne.jp>
Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
17 years ago[MIPS] sigset_32 has been made redundand by compat_sigset_t.
Ralf Baechle [Sun, 11 Feb 2007 18:22:36 +0000 (18:22 +0000)]
[MIPS] sigset_32 has been made redundand by compat_sigset_t.

Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
17 years ago[MIPS] emma2rh: Remove needless <asm/i8259.h> inclusion.
Yoichi Yuasa [Thu, 8 Feb 2007 01:30:29 +0000 (10:30 +0900)]
[MIPS] emma2rh: Remove needless <asm/i8259.h> inclusion.

Signed-off-by: Yoichi Yuasa <yoichi_yuasa@tripeaks.co.jp>
Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
17 years ago[MIPS] Add MTD device support for Cobalt
Yoichi Yuasa [Tue, 20 Feb 2007 05:11:57 +0000 (14:11 +0900)]
[MIPS] Add MTD device support for Cobalt

This patch has added MTD device support for Cobalt.
Moreover, removes old type FlashROM support.

Signed-off-by: Yoichi Yuasa <yoichi_yuasa@tripeaks.co.jp>
Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
17 years ago[ARM] 4165/1: S3C24XX: Select CONFIG_NO_IOPORT
Ben Dooks [Mon, 12 Feb 2007 17:59:35 +0000 (18:59 +0100)]
[ARM] 4165/1: S3C24XX: Select CONFIG_NO_IOPORT

On S3C24XX architecture, select CONFIG_NO_IOPORT
as we only have memory based IO.

Signed-off-by: Ben Dooks <ben-linux@fluff.org>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
17 years agoMerge branch 'upstream-jgarzik' of git://git.kernel.org/pub/scm/linux/kernel/git...
Jeff Garzik [Tue, 20 Feb 2007 16:28:42 +0000 (11:28 -0500)]
Merge branch 'upstream-jgarzik' of git://git.kernel.org/pub/scm/linux/kernel/git/linville/wireless-2.6 into upstream

17 years agonatsemi: Support Aculab E1/T1 PMXc cPCI carrier cards
Mark Brown [Mon, 19 Feb 2007 20:15:40 +0000 (20:15 +0000)]
natsemi: Support Aculab E1/T1 PMXc cPCI carrier cards

Aculab E1/T1 PMXc cPCI carrier card cards present a natsemi on the cPCI
bus with an oversized EEPROM using a direct MII<->MII connection with no
PHY.  This patch adds a new device table entry supporting these cards.

Signed-Off-By: Mark Brown <broonie@sirena.org.uk>
Signed-off-by: Jeff Garzik <jeff@garzik.org>
17 years agonatsemi: Add support for using MII port with no PHY
Mark Brown [Mon, 19 Feb 2007 20:15:39 +0000 (20:15 +0000)]
natsemi: Add support for using MII port with no PHY

This patch provides code paths which allow the natsemi driver to use the
external MII port on the chip but ignore any PHYs that may be attached to it.
The link state will be left as it was when the driver started and can be
configured via ethtool.  Any PHYs that are present can be accessed via the MII
ioctl()s.

This is useful for systems where the device is connected without a PHY
or where either information or actions outside the scope of the driver
are required in order to use the PHYs.

Signed-Off-By: Mark Brown <broonie@sirena.org.uk>
Signed-off-by: Jeff Garzik <jeff@garzik.org>
17 years agoskge: race with workq and RTNL
Stephen Hemminger [Fri, 16 Feb 2007 23:37:39 +0000 (15:37 -0800)]
skge: race with workq and RTNL

If a workqueue function that needs RTNL is running when skge_down
is called then a deadlock is possible. Fix by only clearing the timer,
and handling the flush_scheduled_work on removal. This work queue is only
ever used for the old fiber based boards.

Signed-off-by: Stephen Hemminger <shemminger@linux-foundation.org>
Signed-off-by: Jeff Garzik <jeff@garzik.org>
17 years agoReplace local random function with random32()
Ralf Baechle [Fri, 16 Feb 2007 11:55:33 +0000 (11:55 +0000)]
Replace local random function with random32()

Signed-off-by: Joe Perches <joe@perches.com>
Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
Signed-off-by: Jeff Garzik <jeff@garzik.org>
17 years agos2io: RTNL and flush_scheduled_work deadlock
Francois Romieu [Thu, 15 Feb 2007 22:37:50 +0000 (23:37 +0100)]
s2io: RTNL and flush_scheduled_work deadlock

Mantra: don't use flush_scheduled_work with RTNL held.

Signed-off-by: Francois Romieu <romieu@fr.zoreil.com>
Signed-off-by: Jeff Garzik <jeff@garzik.org>
17 years ago8139too: RTNL and flush_scheduled_work deadlock
Francois Romieu [Thu, 15 Feb 2007 22:37:44 +0000 (23:37 +0100)]
8139too: RTNL and flush_scheduled_work deadlock

Your usual dont-flush_scheduled_work-with-RTNL-held stuff.

It is a bit different here since the thread runs permanently
or is only occasionally kicked for recovery depending on the
hardware revision.

Signed-off-by: Francois Romieu <romieu@fr.zoreil.com>
Signed-off-by: Jeff Garzik <jeff@garzik.org>
17 years agosis190: RTNL and flush_scheduled_work deadlock
Francois Romieu [Thu, 15 Feb 2007 22:37:29 +0000 (23:37 +0100)]
sis190: RTNL and flush_scheduled_work deadlock

Signed-off-by: Francois Romieu <romieu@fr.zoreil.com>
Signed-off-by: Jeff Garzik <jeff@garzik.org>
17 years agor8169: RTNL and flush_scheduled_work deadlock
Francois Romieu [Thu, 15 Feb 2007 22:37:21 +0000 (23:37 +0100)]
r8169: RTNL and flush_scheduled_work deadlock

flush_scheduled_work() in net_device->close has a slight tendency
to deadlock with tasks on the workqueue that hold RTNL.

rtl8169_close/down simply need the recovery tasks to not meddle
with the hardware while the device is going down.

Signed-off-by: Francois Romieu <romieu@fr.zoreil.com>
Signed-off-by: Jeff Garzik <jeff@garzik.org>
17 years ago[ARM] Fix s3c2410 ALSA audio for typedef elimination
Russell King [Tue, 20 Feb 2007 16:11:11 +0000 (16:11 +0000)]
[ARM] Fix s3c2410 ALSA audio for typedef elimination

Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
17 years ago[ARM] Fix ARM AACI ALSA driver
Russell King [Tue, 20 Feb 2007 15:44:23 +0000 (15:44 +0000)]
[ARM] Fix ARM AACI ALSA driver

  CC [M]  sound/arm/aaci.o
sound/arm/aaci.c:729: error: parse error before '*' token
sound/arm/aaci.c:731: warning: function declaration isn't a prototype
...
sound/arm/aaci.c:786: error: parse error before '*' token
sound/arm/aaci.c:786: warning: function declaration isn't a prototype
...
sound/arm/aaci.c:827: error: parse error before '*' token
sound/arm/aaci.c:828: warning: function declaration isn't a prototype
...
sound/arm/aaci.c:845: error: parse error before "aaci_capture_ops"
sound/arm/aaci.c:845: warning: type defaults to `int' in declaration of `aaci_capture_ops'

Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
17 years ago[ARM] fix mach-at91 build breakage
David Brownell [Tue, 20 Feb 2007 05:28:53 +0000 (21:28 -0800)]
[ARM] fix mach-at91 build breakage

The rename of the AT91 subtree from mach-at91rm9200 to mach-at91
(to accomodate at91sam926x processors) was incomplete.  It needs
this patch to be able to build again.

Signed-off-by: David Brownell <dbrownell@users.sourceforge.net>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
17 years ago[ARM] Fix jornada720 build errors
Russell King [Tue, 20 Feb 2007 15:23:57 +0000 (15:23 +0000)]
[ARM] Fix jornada720 build errors

kernel/built-in.o: In function `pm_suspend':
utsname_sysctl.c:(.text+0x23008): multiple definition of `pm_suspend'
arch/arm/mach-sa1100/built-in.o:arch/arm/mach-sa1100/sleep.S:(.text+0xf68): first defined here
arm-linux-ld: Warning: size of symbol `pm_suspend' changed from 20 in arch/arm/mach-sa1100/built-in.o to 44 in kernel/built-in.o

Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
17 years ago[ARM] Fix iop13xx build error
Russell King [Tue, 20 Feb 2007 14:56:51 +0000 (14:56 +0000)]
[ARM] Fix iop13xx build error

  CC      arch/arm/mach-iop13xx/setup.o
arch/arm/mach-iop13xx/setup.c: In function 'iq8134x_probe_flash_size':
arch/arm/mach-iop13xx/setup.c:210: warning: implicit declaration of function 'ioremap'
arch/arm/mach-iop13xx/setup.c:210: warning: initialization makes pointer from integer without a cast
arch/arm/mach-iop13xx/setup.c:218: warning: implicit declaration of function 'writew'
arch/arm/mach-iop13xx/setup.c:222: warning: implicit declaration of function 'readb'
arch/arm/mach-iop13xx/setup.c:231: warning: implicit declaration of function 'iounmap'
  LD      .tmp_vmlinux1
arch/arm/mach-iop13xx/built-in.o: In function `iop13xx_platform_init':
iq81340mc.c:(.init.text+0x150): undefined reference to `ioremap'
iq81340mc.c:(.init.text+0x21c): undefined reference to `writew'
iq81340mc.c:(.init.text+0x24c): undefined reference to `writew'
iq81340mc.c:(.init.text+0x254): undefined reference to `iounmap'
iq81340mc.c:(.init.text+0x2c4): undefined reference to `readb'
iq81340mc.c:(.init.text+0x2e8): undefined reference to `readb'

Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
17 years ago[ARM] Fix build error caused by move of apm
Russell King [Tue, 20 Feb 2007 14:53:28 +0000 (14:53 +0000)]
[ARM] Fix build error caused by move of apm

  CC      arch/arm/common/sharpsl_pm.o
arch/arm/common/sharpsl_pm.c:30:31: error: asm/apm-emulation.h: No such file or directory
...

Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
17 years agobacklight: Remove bogus SYSFS dependency
Richard Purdie [Tue, 20 Feb 2007 12:27:25 +0000 (12:27 +0000)]
backlight: Remove bogus SYSFS dependency

Remove a bogus SYSFS dependency from the backlight class

Signed-off-by: Richard Purdie <rpurdie@rpsys.net>
17 years ago[ARM] 4223/1: ixdp2351 : Fix for a define error
Ozzy [Mon, 19 Feb 2007 14:05:42 +0000 (15:05 +0100)]
[ARM] 4223/1: ixdp2351 : Fix for a define error

Fix syntax error for a define in ixdp2351.h

Signed-off-by: ozzy <linux-ozzy@gmx.de>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
17 years ago[ARM] Merge remaining IOP code
Russell King [Tue, 20 Feb 2007 10:52:01 +0000 (10:52 +0000)]
[ARM] Merge remaining IOP code

Conflicts:
include/asm-arm/arch-at91rm9200/entry-macro.S

Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
17 years agobacklight: simplify corgi_bl locking
Richard Purdie [Sat, 10 Feb 2007 23:50:39 +0000 (23:50 +0000)]
backlight: simplify corgi_bl locking

Now update_status has locking, we can remove the mutex from corgi_bl.

Signed-off-by: Richard Purdie <rpurdie@rpsys.net>
17 years agobacklight: Separate backlight properties from backlight ops pointers
Richard Purdie [Sat, 10 Feb 2007 23:07:48 +0000 (23:07 +0000)]
backlight: Separate backlight properties from backlight ops pointers

Per device data such as brightness belongs to the indivdual device
and should therefore be separate from the the backlight operation
function pointers. This patch splits the two types of data and
allows simplifcation of some code.

Signed-off-by: Richard Purdie <rpurdie@rpsys.net>
17 years agobacklight: Clean up pmac_backlight handling
Richard Purdie [Sat, 10 Feb 2007 15:04:08 +0000 (15:04 +0000)]
backlight: Clean up pmac_backlight handling

Move the setting/unsetting of pmac_backlight into the
backlight core instead of doing it in each driver.

Signed-off-by: Richard Purdie <rpurdie@rpsys.net>
17 years agobacklight: Improve backlight selection for fbdev drivers
James Simmons [Sat, 10 Feb 2007 14:15:43 +0000 (14:15 +0000)]
backlight: Improve backlight selection for fbdev drivers

Improve backlight selection for fbdev drivers

Signed-off-by: James Simmons <jsimmons@infradead.org>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Richard Purdie <rpurdie@rpsys.net>
17 years agobacklight: Rework backlight/fb interaction simplifying, lots
Richard Purdie [Sat, 10 Feb 2007 14:10:33 +0000 (14:10 +0000)]
backlight: Rework backlight/fb interaction simplifying, lots

fb_info->bl_mutex is badly thought out and the backlight class doesn't
need it if the framebuffer/backlight register/unregister order is
consistent, particularly after the backlight locking fixes.

Fix the drivers to use the order:

backlight_device_register()
register_framebuffer()
unregister_framebuffer()
backlight_device_unregister()

and turn bl_mutex into a lock for the bl_curve data only.

Signed-off-by: Richard Purdie <rpurdie@rpsys.net>
17 years agobacklight: Remove unneeded backlight update_status calls
Richard Purdie [Fri, 9 Feb 2007 09:53:56 +0000 (09:53 +0000)]
backlight: Remove unneeded backlight update_status calls

The backlight core listens for blanking events and triggers a
backlight_update_status call so these extra calls are not
needed and can be removed.

Signed-off-by: Richard Purdie <rpurdie@rpsys.net>
17 years agobacklight: Remove uneeded update_status call from chipsfb.c
Richard Purdie [Fri, 9 Feb 2007 09:50:47 +0000 (09:50 +0000)]
backlight: Remove uneeded update_status call from chipsfb.c

Remove uneeded update_status call from chipsfb.c since the
backlight core now receives software blanking notifications
too.

Signed-off-by: Richard Purdie <rpurdie@rpsys.net>
17 years agobacklight/fbcon: Add FB_EVENT_CONBLANK
Richard Purdie [Fri, 9 Feb 2007 09:46:45 +0000 (09:46 +0000)]
backlight/fbcon: Add FB_EVENT_CONBLANK

The backlight class wants notification whenever the console is blanked
but doesn't get this when hardware blanking fails and software blanking
is used. Changing FB_EVENT_BLANK to report both would be a behaviour
change which could confuse the console layer so add a new event for
software blanking and have the backlight class listen for both.

Signed-off-by: Richard Purdie <rpurdie@rpsys.net>
17 years agobacklight: Fix Kconfig entries
Richard Purdie [Fri, 9 Feb 2007 09:40:30 +0000 (09:40 +0000)]
backlight: Fix Kconfig entries

Currently its possible to build the backlight core as a module yet
compile the drivers into the kernel which gives missing symbols.

Fix.

Signed-off-by: Richard Purdie <rpurdie@rpsys.net>
17 years agobacklight: Remove uneeded nvidia set_power calls
Richard Purdie [Fri, 9 Feb 2007 00:34:52 +0000 (00:34 +0000)]
backlight: Remove uneeded nvidia set_power calls

nvidia_bl_set_power isn't needed since the backlight class handles
this by receiving fb events itself and calling update_status so
remove it.

Signed-off-by: Richard Purdie <rpurdie@rpsys.net>
17 years agobacklight: Convert semaphore -> mutex
Richard Purdie [Thu, 8 Feb 2007 22:53:55 +0000 (22:53 +0000)]
backlight: Convert semaphore -> mutex

Convert internal semaphore to a mutex

Signed-off-by: Richard Purdie <rpurdie@rpsys.net>
17 years agobacklight: Fix external uses of backlight internal semaphore
Richard Purdie [Thu, 8 Feb 2007 22:25:09 +0000 (22:25 +0000)]
backlight: Fix external uses of backlight internal semaphore

backlight_device->sem has a very specific use as documented in the
header file. The external users of this are using it for a different
reason, to serialise access to the update_status() method.

backlight users were supposed to implement their own internal
serialisation of update_status() if needed but everyone is doing
things differently and incorrectly. Therefore add a global mutex to
take care of serialisation for everyone, once and for all.

Locking for get_brightness remains optional since most users don't
need it.

Also update the lcd class in a similar way.

Signed-off-by: Richard Purdie <rpurdie@rpsys.net>
17 years agobacklight: Minor code cleanups for hp680_bl.c
Richard Purdie [Thu, 8 Feb 2007 00:33:24 +0000 (00:33 +0000)]
backlight: Minor code cleanups for hp680_bl.c

Since people use this code as an example, clean it up to
to use platform_*_drvdata instead of a global variable.

Signed-off-by: Richard Purdie <rpurdie@rpsys.net>
17 years agobacklight: Minor code cleanups for corgi_bl.c
Richard Purdie [Thu, 8 Feb 2007 00:32:14 +0000 (00:32 +0000)]
backlight: Minor code cleanups for corgi_bl.c

Since people use this code as an example, clean it up to
to use platform_*_drvdata and remove an unneeded function.

Signed-off-by: Richard Purdie <rpurdie@rpsys.net>
17 years agobacklight: Remove excessive (un)likelys
Dmitry Torokhov [Thu, 8 Feb 2007 00:12:28 +0000 (00:12 +0000)]
backlight: Remove excessive (un)likelys

Remove excessive numbers of (un)likely()s in the backlight core.

There are no hot paths in this code so rely on compiler to do
the right thing.

Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
Signed-off-by: Richard Purdie <rpurdie@rpsys.net>
17 years agobacklight: Remove unneeded owner field
Richard Purdie [Thu, 8 Feb 2007 00:06:32 +0000 (00:06 +0000)]
backlight: Remove unneeded owner field

Remove uneeded owner field from backlight_properties structure.

Nothing uses it and it is unlikely that it will ever be used. The
backlight class uses other means to ensure that nothing references
unloaded code.

Based on a patch from Dmitry Torokhov <dtor@insightbb.com>

Signed-off-by: Richard Purdie <rpurdie@rpsys.net>
17 years agobacklight: Fix error handling
Dmitry Torokhov [Wed, 7 Feb 2007 22:25:50 +0000 (22:25 +0000)]
backlight: Fix error handling

Fix error handling when registering new device

Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
Signed-off-by: Richard Purdie <rpurdie@rpsys.net>
17 years agobacklight: Add Frontpath ProGear HX1050+ driver
Marcin Juszkiewicz [Wed, 7 Feb 2007 22:24:01 +0000 (22:24 +0000)]
backlight: Add Frontpath ProGear HX1050+ driver

Add control of LCD backlight for Frontpath ProGear HX1050+.
Patch is based on http://downloads.sf.net/progear/progear-lcd-0.2.tar.gz
driver by M Schacht.

Signed-off-by: Marcin Juszkiewicz <openembedded@hrw.one.pl>
Signed-off-by: Richard Purdie <rpurdie@rpsys.net>
17 years agobacklight: Add maintainer entry
Richard Purdie [Wed, 7 Feb 2007 22:21:07 +0000 (22:21 +0000)]
backlight: Add maintainer entry

Add myself as the backlight class/subsystem maintainer.

Signed-off-by: Richard Purdie <rpurdie@rpsys.net>
17 years agoMerge branch 'upstream' of git://ftp.linux-mips.org/pub/scm/upstream-linus
Linus Torvalds [Tue, 20 Feb 2007 01:38:33 +0000 (17:38 -0800)]
Merge branch 'upstream' of git://ftp.linux-mips.org/pub/scm/upstream-linus

* 'upstream' of git://ftp.linux-mips.org/pub/scm/upstream-linus:
  [MIPS] Cobalt: Fix UART I/O type
  [MIPS] Fixup copy_from_user_inatomic
  [MIPS] Fix struct sigcontext for N32 userland
  [MIPS] Make some __setup functions static
  [MIPS] Declare highstart_pfn, highend_pfn only if CONFIG_HIGHMEM=y
  [MIPS] Allow selection of KGDB only on platforms where it's supported.

17 years ago[MIPS] Cobalt: Fix UART I/O type
Yoichi Yuasa [Fri, 9 Feb 2007 03:16:24 +0000 (12:16 +0900)]
[MIPS] Cobalt: Fix UART I/O type

The Cobalt UART is actually connected to memory resource area.

Signed-off-by: Yoichi Yuasa <yoichi_yuasa@tripeaks.co.jp>
Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
17 years ago[MIPS] Fixup copy_from_user_inatomic
Ralf Baechle [Mon, 19 Feb 2007 16:59:24 +0000 (16:59 +0000)]
[MIPS] Fixup copy_from_user_inatomic

From the 01408c4939479ec46c15aa7ef6e2406be50eeeca log message:

The problem is that when we write to a file, the copy from userspace to
pagecache is first done with preemption disabled, so if the source
address is not immediately available the copy fails *and* *zeros* *the*
*destination*.

This is a problem because a concurrent read (which admittedly is an odd
thing to do) might see zeros rather that was there before the write, or
what was there after, or some mixture of the two (any of these being a
reasonable thing to see).

If the copy did fail, it will immediately be retried with preemption
re-enabled so any transient problem with accessing the source won't
cause an error.

The first copying does not need to zero any uncopied bytes, and doing
so causes the problem.  It uses copy_from_user_atomic rather than
copy_from_user so the simple expedient is to change copy_from_user_atomic
to *not* zero out bytes on failure.

< --- end cite --- >

This patch finally implements at least a not so pretty solution by
duplicating the relevant part of __copy_user.

Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
17 years ago[MIPS] Fix struct sigcontext for N32 userland
Atsushi Nemoto [Sat, 17 Feb 2007 15:12:57 +0000 (00:12 +0900)]
[MIPS] Fix struct sigcontext for N32 userland

The kernel use 64-bit for sc_regs[0], and both N32/N64 userland
expects it was 64-bit.  But size of 'long' on N32 is actually 32-bit.
So this definition make some confusion.  Use __u32 and __u64 for
N32/N64 sigcontext to get rid of this confusion.

Signed-off-by: Atsushi Nemoto <anemo@mba.ocn.ne.jp>
Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
17 years ago[MIPS] Make some __setup functions static
Atsushi Nemoto [Sat, 17 Feb 2007 16:02:14 +0000 (01:02 +0900)]
[MIPS] Make some __setup functions static

This fixes some sparse warnings. ("warning: symbol 'foo' was not
declared. Should it be static?")

Signed-off-by: Atsushi Nemoto <anemo@mba.ocn.ne.jp>
Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
17 years ago[MIPS] Declare highstart_pfn, highend_pfn only if CONFIG_HIGHMEM=y
Ralf Baechle [Mon, 19 Feb 2007 15:00:49 +0000 (15:00 +0000)]
[MIPS] Declare highstart_pfn, highend_pfn only if CONFIG_HIGHMEM=y

Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
17 years ago[MIPS] Allow selection of KGDB only on platforms where it's supported.
Ralf Baechle [Sat, 17 Feb 2007 02:58:39 +0000 (02:58 +0000)]
[MIPS] Allow selection of KGDB only on platforms where it's supported.

Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
17 years ago[PATCH] Fix a free-wrong-pointer bug in nfs/acl server.
Greg Banks [Mon, 19 Feb 2007 23:12:34 +0000 (10:12 +1100)]
[PATCH] Fix a free-wrong-pointer bug in nfs/acl server.

Due to type confusion, when an nfsacl verison 2 'ACCESS' request
finishes and tries to clean up, it calls fh_put on entiredly the
wrong thing and this can cause an oops.

Signed-off-by: Neil Brown <neilb@suse.de>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
17 years ago[PATCH] tick management: make broadcast dependent on local APIC
Thomas Gleixner [Sat, 17 Feb 2007 19:03:21 +0000 (20:03 +0100)]
[PATCH] tick management: make broadcast dependent on local APIC

The broadcast functionality is only necessary when a local APIC is
available. Make the config switch depend on X86_LOCAL_APIC. This
resolves the mach-voyager breakage introduced by the tick managament
code.

Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>