deliverable/linux.git
15 years agoMerge branch 'x86-fixes-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git...
Linus Torvalds [Fri, 17 Apr 2009 16:56:11 +0000 (09:56 -0700)] 
Merge branch 'x86-fixes-for-linus' of git://git./linux/kernel/git/tip/linux-2.6-tip

* 'x86-fixes-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip:
  x86: fix microcode driver newly spewing warnings
  x86, PAT: Remove page granularity tracking for vm_insert_pfn maps
  x86: disable X86_PTRACE_BTS for now
  x86, documentation: kernel-parameters replace X86-32,X86-64 with X86
  x86: pci-swiotlb.c swiotlb_dma_ops should be static
  x86, PAT: Remove duplicate memtype reserve in devmem mmap
  x86, PAT: Consolidate code in pat_x_mtrr_type() and reserve_memtype()
  x86, PAT: Changing memtype to WC ensuring no WB alias
  x86, PAT: Handle faults cleanly in set_memory_ APIs
  x86, PAT: Change order of cpa and free in set_memory_wb
  x86, CPA: Change idmap attribute before ioremap attribute setup

15 years agoAFS: Guard afs_file_readpage_read_complete() definition with CONFIG_AFS_FSCACHE
Matt Kraai [Fri, 17 Apr 2009 11:56:38 +0000 (12:56 +0100)] 
AFS: Guard afs_file_readpage_read_complete() definition with CONFIG_AFS_FSCACHE

If CONFIG_AFS_FSCACHE is not defined, the following warning is displayed when
fs/afs/file.c is compiled:

 fs/afs/file.c:111: warning: ‘afs_file_readpage_read_complete’ defined but not used

This occurs because all calls to this function are guarded by
CONFIG_AFS_FSCACHE.  Thus, guard its definition as well.

Signed-off-by: Matt Kraai <kraai@ftbfs.org>
Signed-off-by: David Howells <dhowells@redhat.com>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
15 years agovfat: Note the NLS requirement
Alan Cox [Fri, 17 Apr 2009 11:22:35 +0000 (12:22 +0100)] 
vfat: Note the NLS requirement

Close bug #4754. Stop people getting into a situation where they can't
get their FAT filesystems to mount as they expect.

Signed-off-by: Alan Cox <alan@lxorguk.ukuu.org.uk>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
15 years agosplice: fix new kernel-doc warnings
Randy Dunlap [Fri, 17 Apr 2009 02:09:55 +0000 (19:09 -0700)] 
splice: fix new kernel-doc warnings

splice: fix kernel-doc warnings

  Warning(fs/splice.c:617): bad line:
  Warning(fs/splice.c:722): No description found for parameter 'sd'
  Warning(fs/splice.c:722): Excess function parameter 'pipe' description in 'splice_from_pipe_begin'

Signed-off-by: Randy Dunlap <randy.dunlap@oracle.com>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
15 years ago[ARM] S3C24XX: ADC: Check pending queue before freeing adc client
Ramax Lo [Tue, 14 Apr 2009 15:56:18 +0000 (23:56 +0800)] 
[ARM] S3C24XX: ADC: Check pending queue before freeing adc client

Check pending queue and remove the adc client being released.

Signed-off-by: Ramax Lo <ramaxlo@gmail.com>
Signed-off-by: Ben Dooks <ben-linux@fluff.org>
15 years ago[ARM] S3C: Fix ADC driver sparse warning
Ben Dooks [Fri, 17 Apr 2009 11:36:49 +0000 (12:36 +0100)] 
[ARM] S3C: Fix ADC driver sparse warning

The symbol 's3c_adc_try' in arch/arm/plat-s3c24xx/adc.c
does not need to be exported and thus should be static.

This fixes the following sparse warning:

adc.c:103:6: warning: symbol 's3c_adc_try' was not declared. Should it be static?

Signed-off-by: Ben Dooks <ben@simtec.co.uk>
Signed-off-by: Ben Dooks <ben-linux@fluff.org>
15 years ago[ARM] Osiris: Fix double initialisation in machine block
Ben Dooks [Fri, 17 Apr 2009 11:36:47 +0000 (12:36 +0100)] 
[ARM] Osiris: Fix double initialisation in machine block

The .init_machine entry in mach-osiris.c had the same entry
twice, so remove one definition to fix the following warning
from sparse:

mach-osiris.c:416:3: warning: Initializer entry defined twice
mach-osiris.c:418:3:   also defined here

Signed-off-by: Ben Dooks <ben@simtec.co.uk>
Signed-off-by: Ben Dooks <ben-linux@fluff.org>
15 years ago[ARM] Anubis: Fix sparse warnings for items that should be static
Ben Dooks [Fri, 17 Apr 2009 11:36:46 +0000 (12:36 +0100)] 
[ARM] Anubis: Fix sparse warnings for items that should be static

Make 'anubis_ide_platdata' statis as it is not used outside
the file it is in, fixing the following sparse warning:

mach-anubis.c:246:27: warning: symbol 'anubis_ide_platdata' was not declared. Should it be static?

Signed-off-by: Ben Dooks <ben@simtec.co.uk>
Signed-off-by: Ben Dooks <ben-linux@fluff.org>
15 years ago[ARM] JIVE: Fix sparse warnings about items which should be static
Ben Dooks [Fri, 17 Apr 2009 11:36:45 +0000 (12:36 +0100)] 
[ARM] JIVE: Fix sparse warnings about items which should be static

Make 'jive_vgg2432a4_display' and 'jive_lcd_config' static as
they are not exported, and are generating the following sparse
warnings:

mach-jive.c:280:26: warning: symbol 'jive_vgg2432a4_display' was not declared. Should it be static?
mach-jive.c:313:28: warning: symbol 'jive_lcd_config' was not declared. Should it be static?

Signed-off-by: Ben Dooks <ben@simtec.co.uk>
Signed-off-by: Ben Dooks <ben-linux@fluff.org>
15 years ago[ARM] S3C: Fix sparse warning from missing 's3c_device_hwmon'
Ben Dooks [Fri, 17 Apr 2009 11:36:44 +0000 (12:36 +0100)] 
[ARM] S3C: Fix sparse warning from missing 's3c_device_hwmon'

Fix the following sparse warning due to s3c_device_hwmon being
missing from <plat/devs.h>

devs.c:380:24: warning: symbol 's3c_device_hwmon' was not declared. Should it be static?

Signed-off-by: Ben Dooks <ben@simtec.co.uk>
Signed-off-by: Ben Dooks <ben-linux@fluff.org>
15 years ago[ARM] S3C24XX: Fix sparse error in gpiolib.c
Ben Dooks [Fri, 17 Apr 2009 11:36:43 +0000 (12:36 +0100)] 
[ARM] S3C24XX: Fix sparse error in gpiolib.c

Fix the following sparse error generated by including
<plat/gpio-core.h> instead of <mach/gpio-core.h>

gpiolib.c:78:22: warning: symbol 's3c24xx_gpios' was not declared. Should it be static?

Signed-off-by: Ben Dooks <ben@simtec.co.uk>
Signed-off-by: Ben Dooks <ben-linux@fluff.org>
15 years agom32r: move include/asm-m32r/* to arch/m32r/include/asm/
Hirokazu Takata [Fri, 17 Apr 2009 01:46:25 +0000 (10:46 +0900)] 
m32r: move include/asm-m32r/* to arch/m32r/include/asm/

Move remained files, ftrace.h and swab.h, to arch/m32r/include/asm/.

Signed-off-by: Hirokazu Takata <takata@linux-m32r.org>
15 years agoMerge branch 'tracing-fixes-for-linus' of git://git.kernel.org/pub/scm/linux/kernel...
Linus Torvalds [Fri, 17 Apr 2009 01:17:22 +0000 (18:17 -0700)] 
Merge branch 'tracing-fixes-for-linus' of git://git./linux/kernel/git/tip/linux-2.6-tip

* 'tracing-fixes-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip:
  tracing: Fix branch tracer header
  tracing: Fix power tracer header

15 years agoMerge branch 'sched-fixes-for-linus' of git://git.kernel.org/pub/scm/linux/kernel...
Linus Torvalds [Fri, 17 Apr 2009 01:16:29 +0000 (18:16 -0700)] 
Merge branch 'sched-fixes-for-linus' of git://git./linux/kernel/git/tip/linux-2.6-tip

* 'sched-fixes-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip:
  sched: Avoid printing sched_group::__cpu_power for default case
  tracing, sched: mark get_parent_ip() notrace

15 years agom32r: move include/asm-m32r headers to arch/m32r/include/asm
Hirokazu Takata [Thu, 27 Nov 2008 17:46:48 +0000 (02:46 +0900)] 
m32r: move include/asm-m32r headers to arch/m32r/include/asm

Signed-off-by: Hirokazu Takata <takata@linux-m32r.org>
15 years agoMerge branch 'core-fixes-for-linus' of git://git.kernel.org/pub/scm/linux/kernel...
Linus Torvalds [Fri, 17 Apr 2009 00:56:39 +0000 (17:56 -0700)] 
Merge branch 'core-fixes-for-linus' of git://git./linux/kernel/git/tip/linux-2.6-tip

* 'core-fixes-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip:
  kernel/softirq.c: fix sparse warning
  rcu: Make hierarchical RCU less IPI-happy

15 years agokernel/softirq.c: fix sparse warning
H Hartley Sweeten [Thu, 16 Apr 2009 23:30:18 +0000 (19:30 -0400)] 
kernel/softirq.c: fix sparse warning

Fix sparse warning in kernel/softirq.c.

  warning: do-while statement is not a compound statement

Signed-off-by: H Hartley Sweeten <hsweeten@visionengravers.com>
LKML-Reference: <BD79186B4FD85F4B8E60E381CAEE1909015F9033@mi8nycmail19.Mi8.com>
Signed-off-by: Ingo Molnar <mingo@elte.hu>
15 years agoMerge branch 'x86/uv' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux...
Linus Torvalds [Thu, 16 Apr 2009 23:43:20 +0000 (16:43 -0700)] 
Merge branch 'x86/uv' of git://git./linux/kernel/git/tip/linux-2.6-tip

* 'x86/uv' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip:
  x86: UV BAU distribution and payload MMRs
  x86: UV: BAU partition-relative distribution map
  x86, uv: add Kconfig dependency on NUMA for UV systems
  x86: prevent /sys/firmware/sgi_uv from being created on non-uv systems
  x86, UV: Fix for nodes with memory and no cpus
  x86, UV: system table in bios accessed after unmap
  x86: UV BAU messaging timeouts
  x86: UV BAU and nodes with no memory

15 years agoUIO: fix specific device driver missing statement for depmod
Hans J. Koch [Sat, 11 Apr 2009 02:18:25 +0000 (04:18 +0200)] 
UIO: fix specific device driver missing statement for depmod

On Fri, Apr 10, 2009 at 01:50:50PM -0700, Andrew Morton wrote:
> On Fri, 10 Apr 2009 13:32:01 GMT
> bugzilla-daemon@bugzilla.kernel.org wrote:
>
> > http://bugzilla.kernel.org/show_bug.cgi?id=13059

drivers/uio/uio_cif.c misses a MODULE_DEVICE_TABLE, this fixes it.

Signed-off-by: Hans J. Koch <hjk@linutronix.de>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
15 years agoDriver core: remove pr_fmt() from dynamic_dev_dbg() printk
Jason Baron [Wed, 8 Apr 2009 16:12:52 +0000 (12:12 -0400)] 
Driver core: remove pr_fmt() from dynamic_dev_dbg() printk

When pr_fmt() was added to the pr_debug() code, we added it not only to the
dynamic_pr_debug() function, but also to the dynamic_dev_dbg() funciton.
However, dev_dbg() doesn't make use of pr_fmt(), so neither should
dynamic_dev_dbg().

Signed-off-by: Jason Baron <jbaron@redhat.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
15 years agodriver core: prevent device_for_each_child from oopsing
Greg Kroah-Hartman [Wed, 15 Apr 2009 23:00:12 +0000 (16:00 -0700)] 
driver core: prevent device_for_each_child from oopsing

David Vrabel noticed that the wireless usb stack likes to call
device_for_each_chile() with an empty bus.  This used to work fine, but
now oopses.  This patch fixes the oops and makes the code behave like it
used to.

Reported-by: David Vrabel <david.vrabel@csr.com>
Tested-by: David Vrabel <david.vrabel@csr.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
15 years agodynamic debug: resurrect old pr_debug() semantics as pr_devel()
Michael Ellerman [Thu, 9 Apr 2009 21:48:24 +0000 (14:48 -0700)] 
dynamic debug: resurrect old pr_debug() semantics as pr_devel()

pr_debug() used to produce zero code unless DEBUG was #defined.  This is
now no longer the case in practice[1].

There are places where it's useful to have debugging printks, but we don't
want them to generate any code in production kernels.

So add a new macro, pr_devel(), for _devel_opment, to provide the old
semantics, ie.  if the programmer doesn't explicitly enable debugging, no
code is produced.

[1]: You can turn CONFIG_DYNAMIC_DEBUG off, but it's enabled in at least
     one distro kernel, so it's not really a solution.

Signed-off-by: Michael Ellerman <michael@ellerman.id.au>
Cc: Jason Baron <jbaron@redhat.com>
Cc: Greg Banks <gnb@sgi.com>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
15 years agoDriver Core: early platform driver
Magnus Damm [Mon, 30 Mar 2009 21:37:25 +0000 (14:37 -0700)] 
Driver Core: early platform driver

V3 of the early platform driver implementation.

Platform drivers are great for embedded platforms because we can separate
driver configuration from the actual driver.  So base addresses,
interrupts and other configuration can be kept with the processor or board
code, and the platform driver can be reused by many different platforms.

For early devices we have nothing today.  For instance, to configure early
timers and early serial ports we cannot use platform devices.  This
because the setup order during boot.  Timers are needed before the
platform driver core code is available.  The same goes for early printk
support.  Early in this case means before initcalls.

These early drivers today have their configuration either hard coded or
they receive it using some special configuration method.  This is working
quite well, but if we want to support both regular kernel modules and
early devices then we need to have two ways of configuring the same
driver.  A single way would be better.

The early platform driver patch is basically a set of functions that allow
drivers to register themselves and architecture code to locate them and
probe.  Registration happens through early_param().  The time for the
probe is decided by the architecture code.

See Documentation/driver-model/platform.txt for more details.

[akpm@linux-foundation.org: coding-style fixes]
Signed-off-by: Magnus Damm <damm@igel.co.jp>
Cc: Paul Mundt <lethal@linux-sh.org>
Cc: Kay Sievers <kay.sievers@vrfy.org>
Cc: David Brownell <david-b@pacbell.net>
Cc: Tejun Heo <htejun@gmail.com>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
15 years agoproc: mounts_poll() make consistent to mdstat_poll
KOSAKI Motohiro [Thu, 9 Apr 2009 04:57:59 +0000 (13:57 +0900)] 
proc: mounts_poll() make consistent to mdstat_poll

In recently sysfs_poll discussion, Neil Brown pointed out /proc/mounts
also should be fixed.

SUSv3 says "Regular files shall always poll TRUE for reading and
writing".  see
http://www.opengroup.org/onlinepubs/009695399/functions/poll.html

Then, mounts_poll()'s default should be "POLLIN | POLLRDNORM".  it mean
always readable.

In addition, event trigger should use "POLLERR | POLLPRI" instead
POLLERR.  it makes consistent to mdstat_poll() and sysfs_poll(). and,
select(2) can handle POLLPRI easily.

Reported-by: Neil Brown <neilb@suse.de>
Signed-off-by: KOSAKI Motohiro <kosaki.motohiro@jp.fujitsu.com>
Cc: Ram Pai <linuxram@us.ibm.com>
Cc: Miklos Szeredi <mszeredi@suse.cz>
Cc: Al Viro <viro@zeniv.linux.org.uk>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
15 years agosysfs: sysfs poll keep the poll rule of regular file.
KOSAKI Motohiro [Thu, 9 Apr 2009 04:53:22 +0000 (13:53 +0900)] 
sysfs: sysfs poll keep the poll rule of regular file.

Currently, following test programs don't finished.

% ruby -e '
Thread.new { sleep }
File.read("/sys/devices/system/cpu/cpu0/cpufreq/scaling_available_frequencies")
'

strace expose the reason.

...
open("/sys/devices/system/cpu/cpu0/cpufreq/scaling_available_frequencies", O_RDONLY|O_LARGEFILE) = 3
ioctl(3, SNDCTL_TMR_TIMEBASE or TCGETS, 0xbf9fa6b8) = -1 ENOTTY (Inappropriate ioctl for device)
fstat64(3, {st_mode=S_IFREG|0444, st_size=4096, ...}) = 0
_llseek(3, 0, [0], SEEK_CUR)            = 0
select(4, [3], NULL, NULL, NULL)        = 1 (in [3])
read(3, "1400000 1300000 1200000 1100000 1"..., 4096) = 62
select(4, [3], NULL, NULL, NULL

Because Ruby (the scripting language) VM assume select system-call
against regular file don't block.  it because SUSv3 says "Regular files
shall always poll TRUE for reading and writing".  see
http://www.opengroup.org/onlinepubs/009695399/functions/poll.html it
seems valid assumption.

But sysfs_poll() don't keep this rule although sysfs file can read and
write always.

This patch restore proper poll behavior to sysfs.
/sys/block/md*/md/sync_action polling application and another sysfs
updating sensitive application still can use POLLERR and POLLPRI.

Cc: Neil Brown <neilb@suse.de>
Signed-off-by: KOSAKI Motohiro <kosaki.motohiro@jp.fujitsu.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
15 years agodriver core: allow non-root users to listen to uevents
Kay Sievers [Fri, 3 Apr 2009 17:04:15 +0000 (19:04 +0200)] 
driver core: allow non-root users to listen to uevents

Users can read sysfs files, there is no reason they should not be
allowed to listen to uevents.  This lets xorg and other userspace
programs properly get these messages without having to be root.

Signed-off-by: Kay Sievers <kay.sievers@vrfy.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
15 years agodriver core: fix driver_match_device
Ming Lei [Fri, 27 Mar 2009 13:50:00 +0000 (21:50 +0800)] 
driver core: fix driver_match_device

This patch fixes a bug introduced in commit
49b420a13ff95b449947181190b08367348e3e1b.

If a instance of bus_type doesn't have  .match method,
all .probe of drivers in the bus should be called, or else
the .probe have not a chance to be called.

Signed-off-by: Ming Lei <tom.leiming@gmail.com>
Reported-by: Guennadi Liakhovetski <g.liakhovetski@gmx.de>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
15 years agosysfs: don't use global workqueue in sysfs_schedule_callback()
Alex Chiang [Wed, 25 Mar 2009 21:11:36 +0000 (15:11 -0600)] 
sysfs: don't use global workqueue in sysfs_schedule_callback()

A sysfs attribute using sysfs_schedule_callback() to commit suicide
may end up calling device_unregister(), which will eventually call
a driver's ->remove function.

Drivers may call flush_scheduled_work() in their shutdown routines,
in which case lockdep will complain with something like the following:

  =============================================
  [ INFO: possible recursive locking detected ]
  2.6.29-rc8-kk #1
  ---------------------------------------------
  events/4/56 is trying to acquire lock:
  (events){--..}, at: [<ffffffff80257fc0>] flush_workqueue+0x0/0xa0

  but task is already holding lock:
  (events){--..}, at: [<ffffffff80257648>] run_workqueue+0x108/0x230

  other info that might help us debug this:
  3 locks held by events/4/56:
  #0:  (events){--..}, at: [<ffffffff80257648>] run_workqueue+0x108/0x230
  #1:  (&ss->work){--..}, at: [<ffffffff80257648>] run_workqueue+0x108/0x230
  #2:  (pci_remove_rescan_mutex){--..}, at: [<ffffffff803c10d1>] remove_callback+0x21/0x40

  stack backtrace:
  Pid: 56, comm: events/4 Not tainted 2.6.29-rc8-kk #1
  Call Trace:
  [<ffffffff8026dfcd>] validate_chain+0xb7d/0x1260
  [<ffffffff8026eade>] __lock_acquire+0x42e/0xa40
  [<ffffffff8026f148>] lock_acquire+0x58/0x80
  [<ffffffff80257fc0>] ? flush_workqueue+0x0/0xa0
  [<ffffffff8025800d>] flush_workqueue+0x4d/0xa0
  [<ffffffff80257fc0>] ? flush_workqueue+0x0/0xa0
  [<ffffffff80258070>] flush_scheduled_work+0x10/0x20
  [<ffffffffa0144065>] e1000_remove+0x55/0xfe [e1000e]
  [<ffffffff8033ee30>] ? sysfs_schedule_callback_work+0x0/0x50
  [<ffffffff803bfeb2>] pci_device_remove+0x32/0x70
  [<ffffffff80441da9>] __device_release_driver+0x59/0x90
  [<ffffffff80441edb>] device_release_driver+0x2b/0x40
  [<ffffffff804419d6>] bus_remove_device+0xa6/0x120
  [<ffffffff8043e46b>] device_del+0x12b/0x190
  [<ffffffff8043e4f6>] device_unregister+0x26/0x70
  [<ffffffff803ba969>] pci_stop_dev+0x49/0x60
  [<ffffffff803baab0>] pci_remove_bus_device+0x40/0xc0
  [<ffffffff803c10d9>] remove_callback+0x29/0x40
  [<ffffffff8033ee4f>] sysfs_schedule_callback_work+0x1f/0x50
  [<ffffffff8025769a>] run_workqueue+0x15a/0x230
  [<ffffffff80257648>] ? run_workqueue+0x108/0x230
  [<ffffffff8025846f>] worker_thread+0x9f/0x100
  [<ffffffff8025bce0>] ? autoremove_wake_function+0x0/0x40
  [<ffffffff802583d0>] ? worker_thread+0x0/0x100
  [<ffffffff8025b89d>] kthread+0x4d/0x80
  [<ffffffff8020d4ba>] child_rip+0xa/0x20
  [<ffffffff8020cebc>] ? restore_args+0x0/0x30
  [<ffffffff8025b850>] ? kthread+0x0/0x80
  [<ffffffff8020d4b0>] ? child_rip+0x0/0x20

Although we know that the device_unregister path will never acquire
a lock that a driver might try to acquire in its ->remove, in general
we should never attempt to flush a workqueue from within the same
workqueue, and lockdep rightly complains.

So as long as sysfs attributes cannot commit suicide directly and we
are stuck with this callback mechanism, put the sysfs callbacks on
their own workqueue instead of the global one.

This has the side benefit that if a suicidal sysfs attribute kicks
off a long chain of ->remove callbacks, we no longer induce a long
delay on the global queue.

This also fixes a missing module_put in the error path introduced
by sysfs-only-allow-one-scheduled-removal-callback-per-kobj.patch.

We never destroy the workqueue, but I'm not sure that's a
problem.

Reported-by: Kenji Kaneshige <kaneshige.kenji@jp.fujitsu.com>
Tested-by: Kenji Kaneshige <kaneshige.kenji@jp.fujitsu.com>
Signed-off-by: Alex Chiang <achiang@hp.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
15 years agox86: fix microcode driver newly spewing warnings
Dmitry Adamushko [Wed, 15 Apr 2009 14:51:48 +0000 (16:51 +0200)] 
x86: fix microcode driver newly spewing warnings

Jeff Garzik reported this WARN_ON() noise:

> Kernel: 2.6.30-rc1-00306-g8371f87
> Hardware: ICH10 x86-64
>
> This is a regression from 2.6.29.  Microcode spews the following WARNING
> multiple times during boot:
>
> ------------[ cut here ]------------
> WARNING: at fs/sysfs/group.c:138 sysfs_remove_group+0xeb/0xf0()
> Hardware name:         sysfs group ffffffffa0209700 not found for
>  kobject 'cpu0'

Keep sysfs files around for cpus even when we failed to locate
microcode for them at the moment of module loading. The appropriate
microcode firmware can become available later on.

Signed-off-by: Ingo Molnar <mingo@elte.hu>
15 years agosched: Avoid printing sched_group::__cpu_power for default case
Gautham R Shenoy [Tue, 14 Apr 2009 03:39:36 +0000 (09:09 +0530)] 
sched: Avoid printing sched_group::__cpu_power for default case

Commit 46e0bb9c12f4 ("sched: Print sched_group::__cpu_power
in sched_domain_debug") produces a messy dmesg output while
attempting to print the sched_group::__cpu_power for each
group in the sched_domain hierarchy.

Fix this by avoid printing the __cpu_power for default cases.
(i.e, __cpu_power == SCHED_LOAD_SCALE).

[ Impact: reduce syslog clutter ]

Reported-by: Tony Luck <tony.luck@intel.com>
Signed-off-by: Gautham R Shenoy <ego@in.ibm.com>
Fixed-by: Tony Luck <tony.luck@intel.com>
Cc: a.p.zijlstra@chello.nl
LKML-Reference: <20090414033936.GA534@in.ibm.com>
Signed-off-by: Ingo Molnar <mingo@elte.hu>
15 years agox86, PAT: Remove page granularity tracking for vm_insert_pfn maps
Pallipadi, Venkatesh [Wed, 8 Apr 2009 22:37:16 +0000 (15:37 -0700)] 
x86, PAT: Remove page granularity tracking for vm_insert_pfn maps

This change resolves the problem of too many single page entries
in pat_memtype_list and "freeing invalid memtype" errors with i915,
reported here:

  http://marc.info/?l=linux-kernel&m=123845244713183&w=2

Remove page level granularity track and untrack of vm_insert_pfn.
memtype tracking at page granularity does not scale and cleaner
approach would be for the driver to request a type for a bigger
IO address range or PCI io memory range for that device, either at
mmap time or driver init time and just use that type during
vm_insert_pfn.

This patch just removes the track/untrack of vm_insert_pfn. That
means we will be in same state as 2.6.28, with respect to these APIs.

Newer APIs for the drivers to request a memtype for a bigger region
is coming soon.

[ Impact: fix Xorg startup warnings and hangs ]

Reported-by: Arkadiusz Miskiewicz <a.miskiewicz@gmail.com>
Tested-by: Arkadiusz Miskiewicz <a.miskiewicz@gmail.com>
Signed-off-by: Venkatesh Pallipadi <venkatesh.pallipadi@intel.com>
Signed-off-by: Suresh Siddha <suresh.b.siddha@intel.com>
Cc: Jesse Barnes <jbarnes@virtuousgeek.org>
LKML-Reference: <20090408223716.GC3493@linux-os.sc.intel.com>
Signed-off-by: Ingo Molnar <mingo@elte.hu>
15 years agoMerge branch 'upstream-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jgarzi...
Linus Torvalds [Thu, 16 Apr 2009 21:42:04 +0000 (14:42 -0700)] 
Merge branch 'upstream-linus' of git://git./linux/kernel/git/jgarzik/libata-dev

* 'upstream-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jgarzik/libata-dev:
  ata: Report 16/32bit PIO as best we can
  libata: use ATA_ID_CFA_*
  pata_legacy: fix no device fail path
  pata_hpt37x: fix HPT370 DMA timeouts
  libata: handle SEMB signature better

15 years agomm: pass correct mm when growing stack
Hugh Dickins [Thu, 16 Apr 2009 20:58:12 +0000 (21:58 +0100)] 
mm: pass correct mm when growing stack

Tetsuo Handa reports seeing the WARN_ON(current->mm == NULL) in
security_vm_enough_memory(), when do_execve() is touching the
target mm's stack, to set up its args and environment.

Yes, a UMH_NO_WAIT or UMH_WAIT_PROC call_usermodehelper() spawns
an mm-less kernel thread to do the exec.  And in any case, that
vm_enough_memory check when growing stack ought to be done on the
target mm, not on the execer's mm (though apart from the warning,
it only makes a slight tweak to OVERCOMMIT_NEVER behaviour).

Reported-by: Tetsuo Handa <penguin-kernel@i-love.sakura.ne.jp>
Signed-off-by: Hugh Dickins <hugh@veritas.com>
Cc: stable@kernel.org
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
15 years agoRevert "kobject: don't block for each kobject_uevent".
Hugh Dickins [Thu, 16 Apr 2009 20:55:29 +0000 (21:55 +0100)] 
Revert "kobject: don't block for each kobject_uevent".

This reverts commit f520360d93cdc37de5d972dac4bf3bdef6a7f6a7.

Tetsuo Handa, running a kernel with CONFIG_DEBUG_PAGEALLOC=y and
CONFIG_UEVENT_HELPER_PATH=/sbin/hotplug, has been hitting RCU detected
CPU stalls: it's been spinning in the loop where do_execve() counts up
the args (but why wasn't fixup_exception working? dunno).

The recent change, switching kobject_uevent_env() from UMH_WAIT_EXEC
to UMH_NO_WAIT, is broken: the exec uses args on the local stack here,
and an env which is kfreed as soon as call_usermodehelper() returns.
It very much needs to wait for the exec to be done.

An alternative would be to keep the UMH_NO_WAIT, and complicate the code
to allocate and free these resources correctly? but no, as GregKH
pointed out when making the commit, CONFIG_UEVENT_HELPER_PATH="" is a
much better optimization - though some distros are still saying
/sbin/hotplug in their .config, yet with no such binary in their initrd
or their root.

Reported-by: Tetsuo Handa <penguin-kernel@i-love.sakura.ne.jp>
Signed-off-by: Hugh Dickins <hugh@veritas.com>
Acked-by: Greg Kroah-Hartman <gregkh@suse.de>
Acked-by: Arjan van de Ven <arjan@linux.intel.com>
Acked-by: Will Newton <will.newton@gmail.com>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
15 years ago[ARM] 5455/1: Fix IRQ noise from VIC code
Linus Walleij [Thu, 16 Apr 2009 20:17:56 +0000 (21:17 +0100)] 
[ARM] 5455/1: Fix IRQ noise from VIC code

The VIC code will attempt to perform som
default set_irq_chip() and set_irq_chip_data()
on all IRQs supported by the VIC, while the new
IRQ handling code strictly checks for the global
NR_IRQS to be respected also for these IRQs.

This patch will respect the interrupt mask passed
to the VIC driver and will prevent it from
attempting to call these functions on any unused
interrupts.

Signed-off-by: Linus Walleij <linus.walleij@stericsson.com>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
15 years agoata: Report 16/32bit PIO as best we can
Alan Cox [Thu, 9 Apr 2009 16:31:17 +0000 (17:31 +0100)] 
ata: Report 16/32bit PIO as best we can

The legacy old IDE ioctl API for this is a bit primitive so we try
and map stuff sensibly onto it.

- Set PIO over DMA devices to report 32bit
- Add ability to change the PIO32 settings if the controller permits it
- Add that functionality into the sff drivers
- Add that functionality into the VLB legacy driver
- Turn on the 32bit PIO on the ninja32 and add support there

Signed-off-by: Alan Cox <alan@linux.intel.com>
Signed-off-by: Jeff Garzik <jgarzik@redhat.com>
15 years agolibata: use ATA_ID_CFA_*
Sergei Shtylyov [Mon, 13 Apr 2009 16:50:00 +0000 (20:50 +0400)] 
libata: use ATA_ID_CFA_*

Use ATA_ID_CFA_* constants for CFA specific identify data words 162 and 163.

Signed-off-by: Sergei Shtylyov <sshtylyov@ru.mvista.com>
Signed-off-by: Jeff Garzik <jgarzik@redhat.com>
15 years agopata_legacy: fix no device fail path
Tejun Heo [Tue, 14 Apr 2009 03:59:03 +0000 (12:59 +0900)] 
pata_legacy: fix no device fail path

When pata_legacy can't detect any device, it unregisters the
platform_device and fails detection.  However, it forgets to detach
ata host triggering weird failures as the host later gets freed by
devres while still attached.  Fix it.

Signed-off-by: Tejun Heo <tj@kernel.org>
Reported-by: Peter Zijlstra <peterz@infradead.org>
Signed-off-by: Jeff Garzik <jgarzik@redhat.com>
15 years agopata_hpt37x: fix HPT370 DMA timeouts
Sergei Shtylyov [Tue, 14 Apr 2009 14:39:14 +0000 (18:39 +0400)] 
pata_hpt37x: fix HPT370 DMA timeouts

The libata driver has copied the code from the IDE driver which caused a post
2.4.18 regression on many HPT370[A] chips -- DMA stopped to work completely,
only causing timeouts.  Now remove hpt370_bmdma_start() for good...

Signed-off-by: Sergei Shtylyov <sshtylyov@ru.mvista.com>
Signed-off-by: Jeff Garzik <jgarzik@redhat.com>
15 years agolibata: handle SEMB signature better
Tejun Heo [Tue, 14 Apr 2009 21:21:10 +0000 (06:21 +0900)] 
libata: handle SEMB signature better

WDC WD1600JS-62MHB5 successfully hits the window between ATA/ATAPI-7
and Serial ATA II standards and reports 3c/c3 signature which now is
assigned to SEMB.  Make ata_dev_classify() report ATA_DEV_SEMB on the
sig and let ata_dev_read_id() work around it by trying IDENTIFY once.

This fixes bko#11579.

Signed-off-by: Tejun Heo <tj@kernel.org>
Reported-by: David Haun <drhaun88@gmail.com>
Reported-by: Lars Wirzenius <liw@liw.fi>
Reported-by: Juan Manuel <jmcarranza@gmail.com>
Signed-off-by: Jeff Garzik <jgarzik@redhat.com>
15 years agox86: UV BAU distribution and payload MMRs
Cliff Wickman [Thu, 16 Apr 2009 12:53:09 +0000 (07:53 -0500)] 
x86: UV BAU distribution and payload MMRs

This patch correctly sets BAU memory mapped registers to point
to the sending activation descriptor table and target payload table.

The "Broadcast Assist Unit" is used for TLB shootdown in UV.

The memory mapped registers that point to sending and receiving
memory structures contain node numbers.

In one case the __pa() function did not provide the node id of
memory on blade zero in configurations where that id is nonzero.
In another case, it was assumed that memory was allocated on
the local node.  That assumption is not true in a configuration
in which the node has no memory.

Tested on the UV hardware simulator.

[ Impact: fix possible runtime crash due to incorrect TLB logic ]

Signed-off-by: Cliff Wickman <cpw@sgi.com>
LKML-Reference: <E1LuR5Z-0007An-B8@eag09.americas.sgi.com>
Signed-off-by: Ingo Molnar <mingo@elte.hu>
15 years ago[ARM] 5454/1: ep93xx_eth: fix sparse warnings
Hartley Sweeten [Thu, 16 Apr 2009 16:56:10 +0000 (17:56 +0100)] 
[ARM] 5454/1: ep93xx_eth: fix sparse warnings

Fix 50+ sparse warnings in the ep93xx ethernet driver.

  warning: incorrect type in argument 1 (different address spaces)

Signed-off-by: H Hartley Sweeten <hsweeten@visionengravers.com>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
15 years agoMerge branch 'next' into for-linus
Dmitry Torokhov [Thu, 16 Apr 2009 15:51:52 +0000 (08:51 -0700)] 
Merge branch 'next' into for-linus

15 years agoMerge branch 'for-rmk' of git://git.pengutronix.de/git/imx/linux-2.6
Russell King [Thu, 16 Apr 2009 15:16:34 +0000 (16:16 +0100)] 
Merge branch 'for-rmk' of git://git.pengutronix.de/git/imx/linux-2.6

15 years ago[ARM] remove .gitignore from include/asm-arm
Russell King [Thu, 16 Apr 2009 15:09:08 +0000 (16:09 +0100)] 
[ARM] remove .gitignore from include/asm-arm

Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
15 years agoAdd block_write_full_page_endio for passing endio handler
Chris Mason [Wed, 15 Apr 2009 17:22:38 +0000 (13:22 -0400)] 
Add block_write_full_page_endio for passing endio handler

block_write_full_page doesn't allow the caller to control what happens
when the IO is over.  This adds a new call named block_write_full_page_endio
so the buffer head end_io handler can be provided by the caller.

This will be used by the ext3 data=guarded mode to do i_size updates in
a workqueue based end_io handler.  end_buffer_async_write is also
exported so it can be called to do the dirty work of managing page
writeback for the higher level end_io handler.

Signed-off-by: Chris Mason <chris.mason@oracle.com>
Acked-by: Theodore Tso <tytso@mit.edu>
Acked-by: Jan Kara <jack@suse.cz>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
15 years agoExport filemap_write_and_wait_range
Chris Mason [Wed, 15 Apr 2009 17:22:37 +0000 (13:22 -0400)] 
Export filemap_write_and_wait_range

This wasn't exported before and is useful (used by the experimental ext3
data=guarded code)

Signed-off-by: Chris Mason <chris.mason@oracle.com>
Acked-by: Theodore Tso <tytso@mit.edu>
Acked-by: Jan Kara <jack@suse.cz>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
15 years agoMerge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net-2.6
Linus Torvalds [Thu, 16 Apr 2009 14:41:56 +0000 (07:41 -0700)] 
Merge git://git./linux/kernel/git/davem/net-2.6

* git://git.kernel.org/pub/scm/linux/kernel/git/davem/net-2.6: (64 commits)
  phylib: Fix delay argument of schedule_delayed_work
  NET/ixgbe: Fix powering off during shutdown
  NET/e1000e: Fix powering off during shutdown
  NET/e1000: Fix powering off during shutdown
  packet: avoid warnings when high-order page allocation fails
  gianfar: stop send queue before resetting gianfar
  myr10ge: again fix lro_gen_skb() alignment
  declance: convert to net_device_ops
  bfin_mac: convert to net_device_ops
  au1000: convert to net_device_ops
  atarilance: convert to net_device_ops
  a2065: convert to net_device_ops
  ixgbe: update real_num_tx_queues on changing num_rx_queues
  ixgbe: fix tx queue index
  Revert "rose: zero length frame filtering in af_rose.c"
  sfc: Use correct macro to set event bitfield
  sfc: Match calls to netif_napi_add() and netif_napi_del()
  bonding: Remove debug printk
  e1000/e1000: fix compile warning
  ehea: Fix incomplete conversion to net_device_ops
  ...

15 years agoMerge git://git.kernel.org/pub/scm/linux/kernel/git/davem/sparc-2.6
Linus Torvalds [Thu, 16 Apr 2009 14:40:48 +0000 (07:40 -0700)] 
Merge git://git./linux/kernel/git/davem/sparc-2.6

* git://git.kernel.org/pub/scm/linux/kernel/git/davem/sparc-2.6:
  sparc: remove some pointless conditionals before kfree()
  sbus: changed ioctls to unlocked
  sparc: asm/atomic.h on 32bit should include asm/system.h for xchg
  sparc64: Fix smp_callin() locking.

15 years agoUpdate MAINTAINERS
Russell King [Thu, 16 Apr 2009 13:05:27 +0000 (14:05 +0100)] 
Update MAINTAINERS

Update rmk's email address, and expand on what he's responsible for.

Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
15 years agomxc defconfig updates
Sascha Hauer [Wed, 8 Apr 2009 09:39:34 +0000 (11:39 +0200)] 
mxc defconfig updates

This patch removes several i.MX board specific defconfig files in favour
for a mx1_defconfig, mx27_defconfig and mx3_defconfig. All config files
have all currently available boards, i.MX specific drivers and the network
device drivers for the boards enabled.

Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
15 years agomx31ads: Mark as having full regulatoion constraints with 1133-EV1 board
Mark Brown [Mon, 13 Apr 2009 12:05:28 +0000 (13:05 +0100)] 
mx31ads: Mark as having full regulatoion constraints with 1133-EV1 board

This allows the regulator API to power off unused regulators at the end
of init.

Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
15 years agomx31ads: Depend on all the WM8350 core dependencies for WM1133-EV1 board
Mark Brown [Tue, 14 Apr 2009 10:25:18 +0000 (11:25 +0100)] 
mx31ads: Depend on all the WM8350 core dependencies for WM1133-EV1 board

Otherwise we'd need massive ifdefs in the code.

Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
15 years agoFix ifdef in plat-mxc/irc.c
Darius Augulis [Wed, 8 Apr 2009 13:17:50 +0000 (16:17 +0300)] 
Fix ifdef in plat-mxc/irc.c

Move ifdef under function brackets. This fixes compile crach when IRQ priorities
are disabled.

Signed-off-by: Darius Augulis <augulis.darius@gmail.com>
15 years agoMX1ADS: remove I2C ifdefs
Darius Augulis [Wed, 8 Apr 2009 08:15:00 +0000 (11:15 +0300)] 
MX1ADS: remove I2C ifdefs

Signed-off-by: Darius Augulis <augulis.darius@gmail.com>
15 years agoqong: remove AIPS[12] mappings from machine-specific iotable
Ilya Yanok [Sat, 14 Mar 2009 18:51:59 +0000 (21:51 +0300)] 
qong: remove AIPS[12] mappings from machine-specific iotable

AIPS[12] are no mapped from generic MX3 code so we don't need to
map them from machine-specific map_io function anymore.

Signed-off-by: Ilya Yanok <yanok@emcraft.com>
15 years agomx31ads: imoux pins should be passed in as unsigned int
Mark Brown [Mon, 13 Apr 2009 12:02:36 +0000 (13:02 +0100)] 
mx31ads: imoux pins should be passed in as unsigned int

To match the mxc_iomux_setup_multiple_pins() prototype.

Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
15 years agoMXC: remove orphan imx_init_uart() definition
Paulius Zaleckas [Mon, 6 Apr 2009 13:40:52 +0000 (16:40 +0300)] 
MXC: remove orphan imx_init_uart() definition

Signed-off-by: Paulius Zaleckas <paulius.zaleckas@teltonika.lt>
Cc: Sascha Hauer <s.hauer@pengutronix.de>
15 years agomx31: pin definition for csi
Valentin Longchamp [Wed, 1 Apr 2009 14:32:41 +0000 (16:32 +0200)] 
mx31: pin definition for csi

Signed-off-by: Valentin Longchamp <valentin.longchamp@epfl.ch>
15 years agoMX31: pin definition for sdhc2
Valentin Longchamp [Wed, 1 Apr 2009 14:18:25 +0000 (16:18 +0200)] 
MX31: pin definition for sdhc2

This also adds the pins used on mx31moboard for WP and CD

Signed-off-by: Valentin Longchamp <valentin.longchamp@epfl.ch>
15 years agoMX31: Add I2C pin definitions
Vladimir Barinov [Wed, 1 Apr 2009 12:07:14 +0000 (16:07 +0400)] 
MX31: Add I2C pin definitions

Add I2C pin definitions for MX31 SoC

Signed-off-by: Vladimir Barinov <vbarinov@embeddedalley.com>
15 years agoMX31: Add more alternate pin definitions
Sascha Hauer [Fri, 19 Dec 2008 13:31:54 +0000 (14:31 +0100)] 
MX31: Add more alternate pin definitions

Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
15 years agopcm037 board support: Fix eth interrupt gpio setting
Sascha Hauer [Sat, 4 Apr 2009 11:40:39 +0000 (13:40 +0200)] 
pcm037 board support: Fix eth interrupt gpio setting

gpio_direction_input needs the gpio number, not the pin description.

Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
15 years agoimx21: activate i2c
Holger Schurig [Wed, 1 Apr 2009 11:58:21 +0000 (13:58 +0200)] 
imx21: activate i2c

Set the correct clkdev-name for the i2c clock.

It also get's rid of the ARCH_NR_GPIOS define on the rationale
that isn't an ARCH-wide setting anyway. If a device has two
pca953x devices, the reserved number will be wrong.

Signed-off-by: Holger Schurig <hs4233@mail.mn-solutions.de>
15 years agoimx21: fixes some clocknames
Holger Schurig [Tue, 31 Mar 2009 10:16:59 +0000 (12:16 +0200)] 
imx21: fixes some clocknames

Signed-off-by: <hs4233@mail.mn-solutions.de>
15 years ago[ARM] S3C: Export s3c_gpio_cfgpin and s3c_gpio_setpull for modules
Ben Dooks [Tue, 10 Mar 2009 23:21:48 +0000 (23:21 +0000)] 
[ARM] S3C: Export s3c_gpio_cfgpin and s3c_gpio_setpull for modules

Add an export of the two GPIO configuration calls
s3c_gpio_cfgpin and s3c_gpio_setpull to allow modules
to use them (such as ASoC drivers)

Signed-off-by: Ben Dooks <ben@simtec.co.uk>
Signed-off-by: Ben Dooks <ben-linux@fluff.org>
15 years agophylib: Fix delay argument of schedule_delayed_work
Atsushi Nemoto [Thu, 16 Apr 2009 09:43:37 +0000 (02:43 -0700)] 
phylib: Fix delay argument of schedule_delayed_work

The commit a390d1f3 ("phylib: convert state_queue work to
delayed_work") missed converting 'expires' value to 'delay' value.

Signed-off-by: Atsushi Nemoto <anemo@mba.ocn.ne.jp>
Acked-by: Marcin Slusarz <marcin.slusarz@gmail.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
15 years ago[ARM] s3c2410_defconfig: Update miscellaneous drivers
Ben Dooks [Thu, 16 Apr 2009 09:20:47 +0000 (10:20 +0100)] 
[ARM] s3c2410_defconfig: Update miscellaneous drivers

Update the driver build in the s3c2410_defconfig for the
LED, IDE, Input and EEPROM options

Signed-off-by: Ben Dooks <ben-linux@fluff.org>
15 years ago[ARM] s3c2410_defconfig: Update USB device drivers
Ben Dooks [Wed, 15 Apr 2009 16:25:39 +0000 (17:25 +0100)] 
[ARM] s3c2410_defconfig: Update USB device drivers

Add more USB device driver options to the s3c2410_defconfig,
mostly as modules.

Signed-off-by: Ben Dooks <ben-linux@fluff.org>
15 years ago[ARM] s3c2410_defconfig: Update filesystem options
Ben Dooks [Wed, 15 Apr 2009 16:21:36 +0000 (17:21 +0100)] 
[ARM] s3c2410_defconfig: Update filesystem options

Update the filesystem options in the s3c2410_defconfig,
such as building ext4, enable the automounter as modules
and update the network filesysyem choices.

Signed-off-by: Ben Dooks <ben-linux@fluff.org>
15 years ago[ARM] s3c2410_defconfig: Add video/radio drivers
Ben Dooks [Wed, 15 Apr 2009 16:15:05 +0000 (17:15 +0100)] 
[ARM] s3c2410_defconfig: Add video/radio drivers

Add a set of various video and radio drivers to the
s3c2410_defconfig as modules.

Signed-off-by: Ben Dooks <ben-linux@fluff.org>
15 years ago[ARM] s3c2410_defconfig: Add sound drivers
Ben Dooks [Wed, 15 Apr 2009 16:07:24 +0000 (17:07 +0100)] 
[ARM] s3c2410_defconfig: Add sound drivers

Add sound drivers to the s3c2410_defconfig.

Signed-off-by: Ben Dooks <ben-linux@fluff.org>
15 years agoNET/ixgbe: Fix powering off during shutdown
Rafael J. Wysocki [Wed, 15 Apr 2009 17:44:01 +0000 (17:44 +0000)] 
NET/ixgbe: Fix powering off during shutdown

Prevent ixgbe from putting the adapter into D3 during shutdown except when
we're going to power off the system, since doing that may generally cause
problems with kexec to happen (such problems were observed for igb and
forcedeth).  For this purpose seperate ixgbe_shutdown() from ixgbe_suspend()
and use the appropriate PCI PM callbacks in both of them.

Signed-off-by: "Rafael J. Wysocki" <rjw@sisk.pl>
Signed-off-by: Jeff Kirsher <jeffrey.t.kirsher@intel.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
15 years agoNET/e1000e: Fix powering off during shutdown
Rafael J. Wysocki [Wed, 15 Apr 2009 17:43:43 +0000 (17:43 +0000)] 
NET/e1000e: Fix powering off during shutdown

Prevent e1000e from putting the adapter into D3 during shutdown except when
we're going to power off the system, since doing that may generally cause
problems with kexec to happen (such problems were observed for igb and
forcedeth).  For this purpose seperate e1000e_shutdown() from e1000e_suspend()
and use the appropriate PCI PM callbacks in both of them.

Signed-off-by: "Rafael J. Wysocki" <rjw@sisk.pl>
Signed-off-by: Jeff Kirsher <jeffrey.t.kirsher@intel.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
15 years agoNET/e1000: Fix powering off during shutdown
Rafael J. Wysocki [Wed, 15 Apr 2009 17:43:24 +0000 (17:43 +0000)] 
NET/e1000: Fix powering off during shutdown

Prevent e1000 from putting the adapter into D3 during shutdown except when
we're going to power off the system, since doing that may generally cause
problems with kexec to happen (such problems were observed for igb and
forcedeth).  For this purpose seperate e1000_shutdown() from e1000_suspend()
and use the appropriate PCI PM callbacks in both of them.

Signed-off-by: "Rafael J. Wysocki" <rjw@sisk.pl>
Signed-off-by: Jeff Kirsher <jeffrey.t.kirsher@intel.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
15 years ago[ARM] 5453/1: fix building breakage of sys_oabi-compat.c due to missing kmalloc/kfree
eric miao [Thu, 16 Apr 2009 08:55:23 +0000 (09:55 +0100)] 
[ARM] 5453/1: fix building breakage of sys_oabi-compat.c due to missing kmalloc/kfree

It seems that declarations of kmalloc/kfree are missed, explicitly
include it.

Signed-off-by: Eric Miao <eric.miao@marvell.com>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
15 years agoInput: ads7846 - fix unsafe disable_irq
Ben Nizette [Thu, 16 Apr 2009 01:57:55 +0000 (18:57 -0700)] 
Input: ads7846 - fix unsafe disable_irq

The use of disable_irq inside the handler for the interrupt being
disabled has always been dangerous.  disable_irq should wait for that
handler to complete before returning -> deadlock.

For some reason this wasn't actually the case until 3aa551c9b was merged
but since this time, the ads7846 driver has deadlocked the system on
first interrupt.

Convert the driver to use the handler-safe _nosync variant.

Signed-off-by: Ben Nizette <bn@niasdigital.com>
Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
15 years agox86: disable X86_PTRACE_BTS for now
Ingo Molnar [Wed, 15 Apr 2009 21:15:14 +0000 (23:15 +0200)] 
x86: disable X86_PTRACE_BTS for now

Oleg Nesterov found a couple of races in the ptrace-bts code
and fixes are queued up for it but they did not get ready in time
for the merge window. We'll merge them in v2.6.31 - until then
mark the feature as CONFIG_BROKEN. There's no user-space yet
making use of this so it's not a big issue.

Cc: <stable@kernel.org>
Signed-off-by: Ingo Molnar <mingo@elte.hu>
15 years agoRCU: Don't try and predeclare inline funcs as it upsets some versions of gcc
David Howells [Wed, 15 Apr 2009 18:35:01 +0000 (19:35 +0100)] 
RCU: Don't try and predeclare inline funcs as it upsets some versions of gcc

Don't try and predeclare inline funcs like this:

static inline void wait_migrated_callbacks(void)
...
static void _rcu_barrier(enum rcu_barrier type)
{
...
wait_migrated_callbacks();
}
...
static inline void wait_migrated_callbacks(void)
{
wait_event(rcu_migrate_wq, !atomic_read(&rcu_migrate_type_count));
}

as it upsets some versions of gcc under some circumstances:

kernel/rcupdate.c: In function `_rcu_barrier':
kernel/rcupdate.c:125: sorry, unimplemented: inlining failed in call to 'wait_migrated_callbacks': function body not available
kernel/rcupdate.c:152: sorry, unimplemented: called from here

This can be dealt with by simply putting the static variables (rcu_migrate_*)
at the top, and moving the implementation of the function up so that it
replaces its forward declaration.

Signed-off-by: David Howells <dhowells@redhat.com>
Cc: Dipankar Sarma <dipankar@in.ibm.com>
Cc: Paul E. McKenney <paulmck@linux.vnet.ibm.com>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
15 years agoThe default CONFIG_BUG=n version of BUG() should have an empty do...while
David Howells [Wed, 15 Apr 2009 18:34:56 +0000 (19:34 +0100)] 
The default CONFIG_BUG=n version of BUG() should have an empty do...while

The default CONFIG_BUG=n version of BUG() should incorporate an empty a
do...while statement to avoid compilation weirdness.

Signed-off-by: David Howells <dhowells@redhat.com>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
15 years agoMN10300: Stop gcc from generating uninitialised variable warnings after BUG()
David Howells [Wed, 15 Apr 2009 18:34:51 +0000 (19:34 +0100)] 
MN10300: Stop gcc from generating uninitialised variable warnings after BUG()

Stop gcc from generating uninitialised variable warnings after BUG().  The
problem is that MN10300's implementation of BUG() invokes system call 15 which
doesn't return - but there's no way to tell the compiler that and also emit the
bug table element with the correct file and line data.

So instead, we make the do...while wrapper in _debug_bug_trap() an endless loop
from which there's no escape.

Also, while we're at it, (1) get rid of _debug_bug_trap() and just implement
directly as BUG(), and (2) make the implementation of BUG() contingent on
CONFIG_BUG=y.

Signed-off-by: David Howells <dhowells@redhat.com>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
15 years agoMN10300: Wire up missing system calls
David Howells [Wed, 15 Apr 2009 18:34:46 +0000 (19:34 +0100)] 
MN10300: Wire up missing system calls

Wire up missing system calls preadv() and pwritev().

Signed-off-by: David Howells <dhowells@redhat.com>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
15 years agoMN10300: Discard duplicate PFN_xxx() macros
David Howells [Wed, 15 Apr 2009 18:34:41 +0000 (19:34 +0100)] 
MN10300: Discard duplicate PFN_xxx() macros

Discard duplicate PFN_xxx() macros from arch code as they're now in the
general headers.

Signed-off-by: David Howells <dhowells@redhat.com>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
15 years agoMerge branch 'for-linus' of git://git390.marist.edu/pub/scm/linux-2.6
Linus Torvalds [Wed, 15 Apr 2009 20:28:27 +0000 (13:28 -0700)] 
Merge branch 'for-linus' of git://git390.marist.edu/linux-2.6

* 'for-linus' of git://git390.marist.edu/pub/scm/linux-2.6:
  [S390] boot cputime accounting
  [S390] add read_persistent_clock
  [S390] cpu hotplug and accounting values
  [S390] fix idle time accounting
  [S390] smp: fix cpu_possible_map initialization
  [S390] dasd: fix idaw boundary checking for track based ccw
  [S390] dasd: Use the new async framework for autoonlining.
  [S390] qdio: remove dead timeout handler
  [S390] appldata: Use new mod_virt_timer_periodic() function.
  [S390] extend virtual timer interface by mod_virt_timer_periodic
  [S390] stp synchronization retry timer
  [S390] call nmi_enter/nmi_exit on machine checks
  [S390] wire up preadv/pwritev system calls
  [S390] s390: move machine flags to lowcore

15 years agoMerge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tiwai/sound-2.6
Linus Torvalds [Wed, 15 Apr 2009 16:11:11 +0000 (09:11 -0700)] 
Merge branch 'for-linus' of git://git./linux/kernel/git/tiwai/sound-2.6

* 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tiwai/sound-2.6:
  ALSA: hda - Fix the cmd cache keys for amp verbs
  ALSA: add missing definitions(letters) to HD-Audio.txt
  ALSA: hda - Add quirk mask for Fujitsu Amilo laptops with ALC883
  [ALSA] intel8x0: add one retry to the ac97_clock measurement routine
  [ALSA] intel8x0: fix wrong conditions in ac97_clock measure routine
  ALSA: hda - Avoid call of snd_jack_report at release
  ALSA: add private_data to struct snd_jack
  ALSA: snd-usb-caiaq: rename files to remove redundant information in file pathes
  ALSA: snd-usb-caiaq: clean up header includes
  ALSA: sound/pci: use memdup_user()
  ALSA: sound/usb: use memdup_user()
  ALSA: sound/isa: use memdup_user()
  ALSA: sound/core: use memdup_user()
  [ALSA] intel8x0: do not use zero value from PICB register
  [ALSA] intel8x0: an attempt to make ac97_clock measurement more reliable
  [ALSA] pcm-midlevel: Add more strict buffer position checks based on jiffies
  [ALSA] hda_intel: fix unexpected ring buffer positions
  ASoC: Disable S3C64xx support in Kconfig
  ASoC: magician: remove un-necessary #include of pxa-regs.h and hardware.h

15 years agoMerge git://git.kernel.org/pub/scm/linux/kernel/git/steve/gfs2-2.6-fixes
Linus Torvalds [Wed, 15 Apr 2009 16:04:12 +0000 (09:04 -0700)] 
Merge git://git./linux/kernel/git/steve/gfs2-2.6-fixes

* git://git.kernel.org/pub/scm/linux/kernel/git/steve/gfs2-2.6-fixes:
  GFS2: Use DEFINE_SPINLOCK
  GFS2: cleanup file_operations mess
  GFS2: Move umount flush rwsem
  GFS2: Fix symlink creation race
  GFS2: Make quotad's waiting interruptible

15 years agoInput: mainstone-wm97xx - fix condition in pen_up
Jiri Slaby [Wed, 15 Apr 2009 16:03:07 +0000 (09:03 -0700)] 
Input: mainstone-wm97xx - fix condition in pen_up

The loop body was never executed, because the condition is
always false. Convert to for with more obvious condition.

Signed-off-by: Jiri Slaby <jirislaby@gmail.com>
Acked-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
15 years agoInput: pc110pad - remove unused variable dev
Ilpo Järvinen [Wed, 15 Apr 2009 16:03:07 +0000 (09:03 -0700)] 
Input: pc110pad - remove unused variable dev

dev is leftover from b0ee0d3eb31a163c958f2960906c44bcdfdc607b
(Input: pc110pad - use no_pci_devices()).

Signed-off-by: Ilpo Järvinen <ilpo.jarvinen@helsinki.fi>
Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
15 years agoMerge branch 'for-linus' of git://git.kernel.dk/linux-2.6-block
Linus Torvalds [Wed, 15 Apr 2009 16:03:47 +0000 (09:03 -0700)] 
Merge branch 'for-linus' of git://git.kernel.dk/linux-2.6-block

* 'for-linus' of git://git.kernel.dk/linux-2.6-block: (28 commits)
  cfq-iosched: add close cooperator code
  cfq-iosched: log responsible 'cfqq' in idle timer arm
  cfq-iosched: tweak kick logic a bit more
  cfq-iosched: no need to save interrupts in cfq_kick_queue()
  brd: fix cacheflushing
  brd: support barriers
  swap: Remove code handling bio_alloc failure with __GFP_WAIT
  gfs2: Remove code handling bio_alloc failure with __GFP_WAIT
  ext4: Remove code handling bio_alloc failure with __GFP_WAIT
  dio: Remove code handling bio_alloc failure with __GFP_WAIT
  block: Remove code handling bio_alloc failure with __GFP_WAIT
  bio: add documentation to bio_alloc()
  splice: add helpers for locking pipe inode
  splice: remove generic_file_splice_write_nolock()
  ocfs2: fix i_mutex locking in ocfs2_splice_to_file()
  splice: fix i_mutex locking in generic_splice_write()
  splice: remove i_mutex locking in splice_from_pipe()
  splice: split up __splice_from_pipe()
  block: fix SG_IO to return a proper error value
  cfq-iosched: don't delay queue kick for a merged request
  ...

15 years agoInput: bf54x-keys - remove depreciated IRQF_SAMPLE_RANDOM flag
Michael Hennerich [Tue, 14 Apr 2009 17:38:36 +0000 (10:38 -0700)] 
Input: bf54x-keys - remove depreciated IRQF_SAMPLE_RANDOM flag

Signed-off-by: Michael Hennerich <michael.hennerich@analog.com>
Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
15 years agoInput: ad7877, ad7879 - remove depreciated IRQF_SAMPLE_RANDOM flag
Michael Hennerich [Tue, 14 Apr 2009 17:38:36 +0000 (10:38 -0700)] 
Input: ad7877, ad7879 - remove depreciated IRQF_SAMPLE_RANDOM flag

This patch removes depreciated IRQF_SAMPLE_RANDOM flags from
ad7877 and ad7879 touchscreen drivers.

Signed-off-by: Michael Hennerich <michael.hennerich@analog.com>
Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
15 years agoInput: da9034-ts - make pen {down,up} events more reliable
Eric Miao [Tue, 14 Apr 2009 17:38:35 +0000 (10:38 -0700)] 
Input: da9034-ts - make pen {down,up} events more reliable

PEN_{UP/DOWN} events are expected to be available soon after stopping
TSI auto measurement, but this is found not always be true. Work around
this by adding delay and simulating such an event (according to pen down
status bit).

Signed-off-by: Bin Yang <bin.yang@marvell.com>
Signed-off-by: Eric Miao <eric.miao@marvell.com>
Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
15 years agoInput: da9034-ts - add Bin Yang as co-author of the driver
Eric Miao [Tue, 14 Apr 2009 17:38:35 +0000 (10:38 -0700)] 
Input: da9034-ts - add Bin Yang as co-author of the driver

Bin did a lot of work on this driver, without his help, this driver
will not be possible.

Signed-off-by: Bin Yang <bin.yang@marvell.com>
Signed-off-by: Eric Miao <eric.miao@marvell.com>
Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
15 years agoInput: atkbd - add forced release keys quirk for Samsung NC20
Barry Carroll [Tue, 14 Apr 2009 17:38:34 +0000 (10:38 -0700)] 
Input: atkbd - add forced release keys quirk for Samsung NC20

Signed-off-by: Barry Carroll <baz8080@gmail.com>
Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
15 years agoInput: atkbd - add forced release keys quirk for Samsung Q45
Dmitry Torokhov [Mon, 13 Apr 2009 22:27:50 +0000 (15:27 -0700)] 
Input: atkbd - add forced release keys quirk for Samsung Q45

Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
15 years agoInput: gameport - fix attach driver code
Dmitry Torokhov [Mon, 13 Apr 2009 22:27:49 +0000 (15:27 -0700)] 
Input: gameport - fix attach driver code

The commit 6902c0bead4ce266226fc0c5b3828b850bdc884a that moved
driver registration out of kgameportd thread was incomplete and
did not add the code necessary to actually attach driver to
already registered devices, rectify that.

Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
15 years agoInput: hp_sdc_rtc should depend on serio
Alexander Beregalov [Sat, 11 Apr 2009 23:55:41 +0000 (16:55 -0700)] 
Input: hp_sdc_rtc should depend on serio

Fix this build error when CONFIG_SERIO is not set
hp_sdc_rtc.c:691: undefined reference to `hp_sdc_request_timer_irq'
and so on..

"select should be used with care. select will force
a symbol to a value without visiting the dependencies."

Signed-off-by: Alexander Beregalov <a.beregalov@gmail.com>
Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
15 years agoMerge branch 'topic/hda' into for-linus
Takashi Iwai [Wed, 15 Apr 2009 15:52:32 +0000 (17:52 +0200)] 
Merge branch 'topic/hda' into for-linus

* topic/hda:
  ALSA: hda - Fix the cmd cache keys for amp verbs
  ALSA: add missing definitions(letters) to HD-Audio.txt

15 years agoALSA: hda - Fix the cmd cache keys for amp verbs
Takashi Iwai [Wed, 15 Apr 2009 15:48:35 +0000 (17:48 +0200)] 
ALSA: hda - Fix the cmd cache keys for amp verbs

Fix the key value generation for get/set amp verbs.  The upper bits of
the parameter have to be combined with the verb value to be unique for
each direction/index of amp access.

This fixes the resume problem on some hardwares like Macbook after
the channel mode is changed.

Tested-by: Johannes Berg <johannes@sipsolutions.net>
Cc: <stable@kernel.org>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
15 years agoMerge branch 'merge' of git://git.kernel.org/pub/scm/linux/kernel/git/paulus/powerpc
Linus Torvalds [Wed, 15 Apr 2009 15:42:40 +0000 (08:42 -0700)] 
Merge branch 'merge' of git://git./linux/kernel/git/paulus/powerpc

* 'merge' of git://git.kernel.org/pub/scm/linux/kernel/git/paulus/powerpc:
  powerpc: pseries/dtl.c should include asm/firmware.h
  powerpc: Fix data-corrupting bug in __futex_atomic_op
  powerpc/pseries: Set error_state to pci_channel_io_normal in eeh_report_reset()
  powerpc: Allow 256kB pages with SHMEM
  powerpc: Document new FSL I2C bindings and cleanup
  powerpc/mm: Fix compile warning
  powerpc/85xx: TQM8548: update defconfig
  powerpc/85xx: TQM8548: use proper phy-handles for enet2 and enet3
  powerpc/85xx: TQM85xx: correct address of LM75 I2C device nodes
  powerpc: Add support for early tlbilx opcode
  powerpc: Fix tlbilx opcode

This page took 0.049887 seconds and 5 git commands to generate.