pandora-kernel.git
16 years ago[Bluetooth] Switch to using input_dev->dev.parent
Marcel Holtmann [Wed, 9 May 2007 07:15:30 +0000 (09:15 +0200)]
[Bluetooth] Switch to using input_dev->dev.parent

In preparation for struct class_device -> struct device input core
conversion, switch to using input_dev->dev.parent when specifying
device position in sysfs tree.

Also, do not access input_dev->private directly, use helpers and
do not use kfree() on input device, use input_free_device() instead.

Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
Signed-off-by: Marcel Holtmann <marcel@holtmann.org>
16 years agolocks: fix F_GETLK regression (failure to find conflicts)
J. Bruce Fields [Thu, 10 May 2007 22:38:43 +0000 (18:38 -0400)]
locks: fix F_GETLK regression (failure to find conflicts)

In 9d6a8c5c213e34c475e72b245a8eb709258e968c we changed posix_test_lock
to modify its single file_lock argument instead of taking separate input
and output arguments.  This makes it no longer safe to set the output
lock's fl_type to F_UNLCK before looking for a conflict, since that
means searching for a conflict against a lock with type F_UNLCK.

This fixes a regression which causes F_GETLK to incorrectly report no
conflict on most filesystems (including any filesystem that doesn't do
its own locking).

Also fix posix_lock_to_flock() to copy the lock type.  This isn't
strictly necessary, since the caller already does this; but it seems
less likely to cause confusion in the future.

Thanks to Doug Chapman for the bug report.

Signed-off-by: "J. Bruce Fields" <bfields@citi.umich.edu>
Acked-by: Doug Chapman <doug.chapman@hp.com>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
16 years agoMerge master.kernel.org:/pub/scm/linux/kernel/git/wim/linux-2.6-watchdog
Linus Torvalds [Thu, 10 May 2007 21:33:03 +0000 (14:33 -0700)]
Merge /linux/kernel/git/wim/linux-2.6-watchdog

* master.kernel.org:/pub/scm/linux/kernel/git/wim/linux-2.6-watchdog:
  [WATCHDOG] MTX-1 Watchdog driver
  [WATCHDOG] s3c2410_wdt - initialize watchdog irq resource
  [WATCHDOG] Kconfig menuconfig patch
  [WATCHDOG] pcwd.c: Port to the new device driver model
  [WATCHDOG] use mutex instead of semaphore in Berkshire USB-PC Watchdog driver
  [WATCHDOG] the scheduled removal of the i8xx_tco watchdog driver
  [WATCHDOG] Semi-typical watchdog bug re early misc_register()
  [WATCHDOG] add support for the w83627thf chipset.

16 years agoAllow compat_ioctl.c to compile without CONFIG_NET
Simon Horman [Thu, 10 May 2007 18:51:11 +0000 (11:51 -0700)]
Allow compat_ioctl.c to compile without CONFIG_NET

A small regression appears to have been introduced in the recent patch
"cleanup compat ioctl handling", which was included in Linus' tree after
2.6.20.

siocdevprivate_ioctl() is no longer defined if CONFIG_NET is undefined,
whereas previously it was a dummy function in this case.

This causes compilation with CONFIG_COMPAT but without CONFIG_NET to fail.

fs/compat_ioctl.c: In function `compat_sys_ioctl':
fs/compat_ioctl.c:3571: warning: implicit declaration of function `siocdevprivate_ioctl'

Cc: Christoph Hellwig <hch@lst.de>
Acked-by: Arnd Bergmann <arnd@arndb.de>
Cc: Andi Kleen <ak@suse.de>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
16 years agoFix ixp4xx compile error
Frederik Deweerdt [Thu, 10 May 2007 18:51:08 +0000 (11:51 -0700)]
Fix ixp4xx compile error

drivers/input/misc/ixp4xx-beeper.c: In function 'ixp4xx_spkr_event':
drivers/input/misc/ixp4xx-beeper.c:54: error: 'input_dev' undeclared (first use in this function)
drivers/input/misc/ixp4xx-beeper.c:54: error: (Each undeclared identifier is reported only once
drivers/input/misc/ixp4xx-beeper.c:54: error: for each function it appears in.)

Signed-off-by: Frederik Deweerdt <frederik.deweerdt@gmail.com>
Acked-by: Dmitry Torokhov <dtor@mail.ru>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
16 years agoMerge branch 'master' of git://git.kernel.org/pub/scm/linux/kernel/git/paulus/powerpc
Linus Torvalds [Thu, 10 May 2007 20:32:24 +0000 (13:32 -0700)]
Merge branch 'master' of git://git./linux/kernel/git/paulus/powerpc

* 'master' of git://git.kernel.org/pub/scm/linux/kernel/git/paulus/powerpc: (24 commits)
  [POWERPC] Fix compile error with kexec and CONFIG_SMP=n
  [POWERPC] Split initrd logic out of early_init_dt_scan_chosen() to fix warning
  [POWERPC] Fix warning in hpte_decode(), and generalize it
  [POWERPC] Minor pSeries IOMMU debug cleanup
  [POWERPC] PS3: Fix sys manager build error
  [POWERPC] Assorted janitorial EEH cleanups
  [POWERPC] We don't define CONFIG_HAVE_ARCH_EARLY_PFN_TO_NID
  [POWERPC] pmu_sys_suspended is only defined for PPC32
  [POWERPC] Fix incorrect calculation of I/O window addresses
  [POWERPC] celleb: Update celleb_defconfig
  [POWERPC] celleb: Fix parsing of machine type hack command line option
  [POWERPC] celleb: Fix PCI config space accesses to subordinate buses
  [POWERPC] celleb: Fix support for multiple PCI domains
  [POWERPC] Wire up sys_utimensat
  [POWERPC] CPM_UART: Removed __init from cpm_uart_init_portdesc to fix warning
  [POWERPC] User rheap from arch/powerpc/lib
  [POWERPC] 83xx: Fix the PCI ranges in the MPC834x_MDS device tree.
  [POWERPC] 83xx: Fix the PCI ranges in the MPC832x_MDS device tree.
  [POWERPC] CPM_UART: cpm_uart_set_termios should take ktermios, not termios
  [POWERPC] Change rheap functions to use ulongs instead of pointers
  ...

16 years agoMerge master.kernel.org:/pub/scm/linux/kernel/git/davem/sparc-2.6
Linus Torvalds [Thu, 10 May 2007 20:32:05 +0000 (13:32 -0700)]
Merge /pub/scm/linux/kernel/git/davem/sparc-2.6

* master.kernel.org:/pub/scm/linux/kernel/git/davem/sparc-2.6:
  [SPARC64]: Use alloc_pci_dev() in PCI bus probes.
  [SPARC64]: Bump PROMINTR_MAX to 32.
  [SPARC64]: Fix recursion in PROM tree building.
  [SERIAL] sunzilog: Interrupt enable before ISR handler installed
  [SPARC64] PCI: Consolidate PCI access code into pci_common.c

16 years agoMerge branch 'release' of git://git.kernel.org/pub/scm/linux/kernel/git/lenb/linux...
Linus Torvalds [Thu, 10 May 2007 20:30:34 +0000 (13:30 -0700)]
Merge branch 'release' of git://git./linux/kernel/git/lenb/linux-acpi-2.6

* 'release' of git://git.kernel.org/pub/scm/linux/kernel/git/lenb/linux-acpi-2.6:
  acpi,msi-laptop: Fall back to EC polling mode for MSI laptop specific EC commands
  sony-laptop: rename SONY_LAPTOP_OLD to a more meaningful SONYPI_COMPAT
  asus-laptop: version bump and lindent
  asus-laptop: fix light sens init
  asus-laptop: add GPS support
  asus-laptop: notify ALL events
  ACPICA: Lindent
  ACPI: created a dedicated workqueue for notify() execution
  Revert "ACPICA: fix AML mutex re-entrancy"
  Revert "Execute AML Notify() requests on stack."
  Revert "ACPICA: revert "acpi_serialize" changes"
  ACPI: delete un-reliable concept of cooling mode
  ACPI: thermal trip points are read-only

16 years agoMerge branch 'juju' of git://git.kernel.org/pub/scm/linux/kernel/git/ieee1394/linux13...
Linus Torvalds [Thu, 10 May 2007 20:29:36 +0000 (13:29 -0700)]
Merge branch 'juju' of git://git./linux/kernel/git/ieee1394/linux1394-2.6

* 'juju' of git://git.kernel.org/pub/scm/linux/kernel/git/ieee1394/linux1394-2.6: (138 commits)
  firewire: Convert OHCI driver to use standard goto unwinding for error handling.
  firewire: Always use parens with sizeof.
  firewire: Drop single buffer request support.
  firewire: Add a comment to describe why we split the sg list.
  firewire: Return SCSI_MLQUEUE_HOST_BUSY for out of memory cases in queuecommand.
  firewire: Handle the last few DMA mapping error cases.
  firewire: Allocate scsi_host up front and allocate the sbp2_device as hostdata.
  firewire: Provide module aliase for backwards compatibility.
  firewire: Add to fw-core-y instead of assigning fw-core-objs in Makefile.
  firewire: Break out shared IEEE1394 constant to separate header file.
  firewire: Use linux/*.h instead of asm/*.h header files.
  firewire: Uppercase most macro names.
  firewire: Coding style cleanup: no spaces after function names.
  firewire: Convert card_rwsem to a regular mutex.
  firewire: Clean up comment style.
  firewire: Use lib/ implementation of CRC ITU-T.
  CRC ITU-T V.41
  firewire: Rename fw-device-cdev.c to fw-cdev.c and move header to include/linux.
  firewire: Future proof the iso ioctls by adding a handle for the iso context.
  firewire: Add read/write and size annotations to IOC numbers.
  ...

Acked-by: Christoph Hellwig <hch@infradead.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
16 years agoMerge branch 'for-linus' of git://git390.osdl.marist.edu/pub/scm/linux-2.6
Linus Torvalds [Thu, 10 May 2007 18:50:51 +0000 (11:50 -0700)]
Merge branch 'for-linus' of git://git390.osdl.marist.edu/linux-2.6

* 'for-linus' of git://git390.osdl.marist.edu/pub/scm/linux-2.6:
  [S390] update default configuration.
  [S390] Kconfig: no wireless on s390.
  [S390] Kconfig: use common Kconfig files for s390.
  [S390] Kconfig: common config options for s390.
  [S390] Kconfig: unwanted menus for s390.
  [S390] Kconfig: menus with depends on HAS_IOMEM.
  [S390] Kconfig: refine depends statements.
  [S390] Avoid compile warning.
  [S390] qdio: re-add lost perf_stats.tl_runs change in qdio_handle_pci
  [S390] Avoid sparse warnings.
  [S390] dasd: Fix modular build.
  [S390] monreader inlining cleanup.
  [S390] cio: Make some structures and a function static.
  [S390] cio: Get rid of _ccw_device_get_device_number().
  [S390] fix subsystem removal fallout

16 years agotimer: revert parenthesis fix in tbase_get_deferrable() etc
akpm@linux-foundation.org [Thu, 10 May 2007 10:16:01 +0000 (03:16 -0700)]
timer: revert parenthesis fix in tbase_get_deferrable() etc

On 09-05-2007 21:10, Pallipadi, Venkatesh wrote:
...
> On a 64 bit system, converting pointer to int causes unnecessary
> compiler warning, and intermediate long conversion was to avoid that.
> I will have to rephrase my comment to remove 32 bit value and use int,
> as that is what the function returns.

So, this patch reverts all changes done by my previous patch.

I apologize for my wrong comment about "logical error" here.

Cc: "Pallipadi, Venkatesh" <venkatesh.pallipadi@intel.com>
Cc: Satyam Sharma <satyam.sharma@gmail.com>
Cc: Oleg Nesterov <oleg@tv-sign.ru>
Signed-off-by: Jarek Poplawski <jarkao2@o2.pl>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
16 years agoi2c-at91: compile fix (IS_ERR)
Alexey Dobriyan [Thu, 10 May 2007 10:15:58 +0000 (03:15 -0700)]
i2c-at91: compile fix (IS_ERR)

  CC      drivers/i2c/busses/i2c-at91.o
drivers/i2c/busses/i2c-at91.c: In function 'at91_i2c_probe':
drivers/i2c/busses/i2c-at91.c:213: warning: implicit declaration of function 'IS_ERR'

Signed-off-by: Alexey Dobriyan <adobriyan@gmail.com>
Cc: David Brownell <david-b@pacbell.net>
Acked-by: Jean Delvare <khali@linux-fr.org>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
16 years agoi2c-at91 supports new-style i2c drivers
David Brownell [Thu, 10 May 2007 10:15:52 +0000 (03:15 -0700)]
i2c-at91 supports new-style i2c drivers

Make i2c-at91 register as i2c adapter zero (none of these chips seem to
have more than one TWI controllers) to let it kick in any board-specific
device declarations; also make it hotplug/coldplug.

Signed-off-by: David Brownell <dbrownell@users.sourceforge.net>
Acked-by: Jean Delvare <khali@linux-fr.org>
Cc: Andrew Victor <andrew@sanpeople.com>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
16 years agomd: avoid a possibility that a read error can wrongly propagate through md/raid1...
NeilBrown [Thu, 10 May 2007 10:15:50 +0000 (03:15 -0700)]
md: avoid a possibility that a read error can wrongly propagate through md/raid1 to a filesystem.

When a raid1 has only one working drive, we want read error to propagate up
to the filesystem as there is no point failing the last drive in an array.

Currently the code perform this check is racy.  If a write and a read a
both submitted to a device on a 2-drive raid1, and the write fails followed
by the read failing, the read will see that there is only one working drive
and will pass the failure up, even though the one working drive is actually
the *other* one.

So, tighten up the locking.

Signed-off-by: Neil Brown <neilb@suse.de>
Cc: <stable@kernel.org>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
16 years agodrivers/hwmon: switch to using input_dev->dev.parent
Dmitry Torokhov [Thu, 10 May 2007 10:15:47 +0000 (03:15 -0700)]
drivers/hwmon: switch to using input_dev->dev.parent

In preparation for struct class_device -> struct device input core
conversion, switch to using input_dev->dev.parent when specifying device
position in sysfs tree.

Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
Acked-by: Jean Delvare <khali@linux-fr.org>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
16 years agoSLUB: remove nr_cpu_ids hack
Christoph Lameter [Thu, 10 May 2007 10:15:44 +0000 (03:15 -0700)]
SLUB: remove nr_cpu_ids hack

This was in SLUB in order to head off trouble while the nr_cpu_ids
functionality was not merged.  Its merged now so no need to still have this.

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>
16 years agoSLUB: SLUB_DEBUG must depend on SLUB
Christoph Lameter [Thu, 10 May 2007 10:15:40 +0000 (03:15 -0700)]
SLUB: SLUB_DEBUG must depend on SLUB

Otherwise people get asked about SLUB_DEBUG even if they have another
slab allocator enabled.

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>
16 years agoRevert "[PATCH] paravirt: Add startup infrastructure for paravirtualization"
Eric W. Biederman [Thu, 10 May 2007 10:15:36 +0000 (03:15 -0700)]
Revert "[PATCH] paravirt: Add startup infrastructure for paravirtualization"

This reverts commit c9ccf30d77f04064fe5436027ab9d2230c7cdd94.

Entering the kernel at startup_32 without passing our real mode data in
%esi, and without guaranteeing that physical and virtual addresses are
identity mapped makes head.S impossible to maintain.

The only user of this infrastructure is lguest which is not merged so
nothing we currently support will break by removing this over designed
nightmare, and only the pending lguest patches will be affected.  The
pending Xen patches have a different entry point that they use.

We are currently discussing what Xen and lguest need to do to boot the
kernel in a more normal fashion so using startup_32 in this weird manner is
clearly not their long term direction.

So let's remove this code in head.S before it causes brain damage to people
trying to maintain head.S

Cc: Chris Wright <chrisw@sous-sol.org>
Cc: Andi Kleen <ak@suse.de>
Cc: Jeremy Fitzhardinge <jeremy@goop.org>
Cc: Zachary Amsden <zach@vmware.com>
CC: H. Peter Anvin <hpa@zytor.com>
Signed-off-by: Eric W. Biederman <ebiederm@xmission.com>
Signed-off-by: Rusty Russell <rusty@rustcorp.com.au>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
16 years agoarm: fix i2c-pxa build
Russell King [Thu, 10 May 2007 10:15:32 +0000 (03:15 -0700)]
arm: fix i2c-pxa build

From commit 7d054817b780e664bed6701b2aa637718e1905b7:
> According to the PXA27x developer's manual, we shall do so.

We shall also at least compile test our changes.

Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
Cc: Jean Delvare <khali@linux-fr.org>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
16 years agoocfs2: kobject/kset foobar
Randy Dunlap [Thu, 10 May 2007 10:15:30 +0000 (03:15 -0700)]
ocfs2: kobject/kset foobar

Fix gcc warning and Oops that it causes:

fs/ocfs2/cluster/masklog.c:161: warning: assignment from incompatible pointer type
[ 2776.204120] OCFS2 Node Manager 1.3.3
[ 2776.211729] BUG: spinlock bad magic on CPU#0, modprobe/4424
[ 2776.214269]  lock: ffff810021c8fe18, .magic: ffffffff, .owner: /6394416, .owner_cpu: 0
[ 2776.217864] [ 2776.217865] Call Trace:
[ 2776.219662]  [<ffffffff803426c8>] spin_bug+0x9e/0xe9
[ 2776.221921]  [<ffffffff803427bf>] _raw_spin_lock+0x23/0xf9
[ 2776.224417]  [<ffffffff8051acf4>] _spin_lock+0x9/0xb
[ 2776.226676]  [<ffffffff8033c3b1>] kobject_shadow_add+0x98/0x1ac
[ 2776.229367]  [<ffffffff8033c4d0>] kobject_add+0xb/0xd
[ 2776.231665]  [<ffffffff8033c4df>] kset_add+0xd/0xf
[ 2776.233845]  [<ffffffff8033c5a6>] kset_register+0x23/0x28
[ 2776.236309]  [<ffffffff8808ccb7>] :ocfs2_nodemanager:mlog_sys_init+0x68/0x6d
[ 2776.239518]  [<ffffffff8808ccee>] :ocfs2_nodemanager:o2cb_sys_init+0x32/0x4a
[ 2776.242726]  [<ffffffff880b80a6>] :ocfs2_nodemanager:init_o2nm+0xa6/0xd5
[ 2776.245772]  [<ffffffff8025266c>] sys_init_module+0x1471/0x15d2
[ 2776.248465]  [<ffffffff8033f250>] simple_strtoull+0x0/0xdc
[ 2776.250959]  [<ffffffff8020948e>] system_call+0x7e/0x83

Signed-off-by: Randy Dunlap <randy.dunlap@oracle.com>
Acked-by: Mark Fasheh <mark.fasheh@oracle.com>
Cc: Greg KH <greg@kroah.com>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
16 years agoearly_pfn_to_nid needs to be __meminit
Stephen Rothwell [Thu, 10 May 2007 10:15:27 +0000 (03:15 -0700)]
early_pfn_to_nid needs to be __meminit

Since it is referenced by memmap_init_zone (which is __meminit) via the
early_pfn_in_nid macro when CONFIG_NODES_SPAN_OTHER_NODES is set (which
basically means PowerPC 64).

This removes a section mismatch warning in those circumstances.

Signed-off-by: Stephen Rothwell <sfr@canb.auug.org.au>
Cc: Yasunori Goto <y-goto@jp.fujitsu.com>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
16 years agoAF_RXRPC: reduce debugging noise
David Howells [Thu, 10 May 2007 10:15:25 +0000 (03:15 -0700)]
AF_RXRPC: reduce debugging noise

Reduce debugging noise generated by AF_RXRPC.

Signed-off-by: David Howells <dhowells@redhat.com>
Cc: "David S. Miller" <davem@davemloft.net>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
16 years agoAFS: further write support fixes
David Howells [Thu, 10 May 2007 10:15:23 +0000 (03:15 -0700)]
AFS: further write support fixes

Further fixes for AFS write support:

 (1) The afs_send_pages() outer loop must do an extra iteration if it ends
     with 'first == last' because 'last' is inclusive in the page set
     otherwise it fails to send the last page and complete the RxRPC op under
     some circumstances.

 (2) Similarly, the outer loop in afs_pages_written_back() must also do an
     extra iteration if it ends with 'first == last', otherwise it fails to
     clear PG_writeback on the last page under some circumstances.

Signed-off-by: David Howells <dhowells@redhat.com>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
16 years agoAFS: write support fixes
David Howells [Thu, 10 May 2007 10:15:21 +0000 (03:15 -0700)]
AFS: write support fixes

AFS write support fixes:

 (1) Support large files using the 64-bit file access operations if available
     on the server.

 (2) Use kmap_atomic() rather than kmap() in afs_prepare_page().

 (3) Don't do stuff in afs_writepage() that's done by the caller.

[akpm@linux-foundation.org: fix right shift count >= width of type]
Signed-off-by: David Howells <dhowells@redhat.com>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
16 years agoadd upper-32-bits macro
Andrew Morton [Thu, 10 May 2007 10:15:18 +0000 (03:15 -0700)]
add upper-32-bits macro

We keep on getting "right shift count >= width of type" warnings when doing
things like

sector_t s;

x = s >> 56;

because with CONFIG_LBD=n, s is only 32-bit.  Similar problems can occur with
dma_addr_t's.

So add a simple wrapper function which code can use to avoid this warning.
The above example would become

x = upper_32_bits(s) >> 24;

The first user is in fact AFS.

Cc: James Bottomley <James.Bottomley@SteelEye.com>
Cc: "Cameron, Steve" <Steve.Cameron@hp.com>
Cc: "Miller, Mike (OS Dev)" <Mike.Miller@hp.com>
Cc: Hisashi Hifumi <hifumi.hisashi@oss.ntt.co.jp>
Cc: Alan Cox <alan@lxorguk.ukuu.org.uk>
Cc: David Howells <dhowells@redhat.com>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
16 years agoslub: support concurrent local and remote frees and allocs on a slab
Christoph Lameter [Thu, 10 May 2007 10:15:16 +0000 (03:15 -0700)]
slub: support concurrent local and remote frees and allocs on a slab

Avoid atomic overhead in slab_alloc and slab_free

SLUB needs to use the slab_lock for the per cpu slabs to synchronize with
potential kfree operations.  This patch avoids that need by moving all free
objects onto a lockless_freelist.  The regular freelist continues to exist
and will be used to free objects.  So while we consume the
lockless_freelist the regular freelist may build up objects.

If we are out of objects on the lockless_freelist then we may check the
regular freelist.  If it has objects then we move those over to the
lockless_freelist and do this again.  There is a significant savings in
terms of atomic operations that have to be performed.

We can even free directly to the lockless_freelist if we know that we are
running on the same processor.  So this speeds up short lived objects.
They may be allocated and freed without taking the slab_lock.  This is
particular good for netperf.

In order to maximize the effect of the new faster hotpath we extract the
hottest performance pieces into inlined functions.  These are then inlined
into kmem_cache_alloc and kmem_cache_free.  So hotpath allocation and
freeing no longer requires a subroutine call within SLUB.

[I am not sure that it is worth doing this because it changes the easy to
read structure of slub just to reduce atomic ops.  However, there is
someone out there with a benchmark on 4 way and 8 way processor systems
that seems to show a 5% regression vs.  Slab.  Seems that the regression is
due to increased atomic operations use vs.  SLAB in SLUB).  I wonder if
this is applicable or discernable at all in a real workload?]

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>
16 years agox86_64: fix default_do_nmi() missing return after an if ()
Mathieu Desnoyers [Thu, 10 May 2007 10:15:15 +0000 (03:15 -0700)]
x86_64: fix default_do_nmi() missing return after an if ()

Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers@polymtl.ca>
Cc: Andi Kleen <ak@suse.de>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
16 years agofirewire: Convert OHCI driver to use standard goto unwinding for error handling.
Kristian Høgsberg [Wed, 9 May 2007 23:23:15 +0000 (19:23 -0400)]
firewire: Convert OHCI driver to use standard goto unwinding for error handling.

Signed-off-by: Kristian Hoegsberg <krh@redhat.com>
Signed-off-by: Stefan Richter <stefanr@s5r6.in-berlin.de>
16 years agofirewire: Always use parens with sizeof.
Kristian Høgsberg [Wed, 9 May 2007 23:23:14 +0000 (19:23 -0400)]
firewire: Always use parens with sizeof.

Signed-off-by: Kristian Hoegsberg <krh@redhat.com>
Signed-off-by: Stefan Richter <stefanr@s5r6.in-berlin.de>
16 years agofirewire: Drop single buffer request support.
Kristian Høgsberg [Wed, 9 May 2007 23:23:11 +0000 (19:23 -0400)]
firewire: Drop single buffer request support.

The SCSI layer only passes sg requests down, so drop the
use_sg == 0, request_bufflen != 0 case.

Signed-off-by: Kristian Hoegsberg <krh@redhat.com>
Signed-off-by: Stefan Richter <stefanr@s5r6.in-berlin.de>
16 years agofirewire: Add a comment to describe why we split the sg list.
Kristian Høgsberg, Stefan Richter [Wed, 9 May 2007 23:23:10 +0000 (19:23 -0400)]
firewire: Add a comment to describe why we split the sg list.

Signed-off-by: Kristian Hoegsberg <krh@redhat.com>
Signed-off-by: Stefan Richter <stefanr@s5r6.in-berlin.de>
16 years agofirewire: Return SCSI_MLQUEUE_HOST_BUSY for out of memory cases in queuecommand.
Kristian Høgsberg [Wed, 9 May 2007 23:23:09 +0000 (19:23 -0400)]
firewire: Return SCSI_MLQUEUE_HOST_BUSY for out of memory cases in queuecommand.

Signed-off-by: Kristian Hoegsberg <krh@redhat.com>
Signed-off-by: Stefan Richter <stefanr@s5r6.in-berlin.de>
16 years agofirewire: Handle the last few DMA mapping error cases.
Kristian Høgsberg [Wed, 9 May 2007 23:23:08 +0000 (19:23 -0400)]
firewire: Handle the last few DMA mapping error cases.

This should be the last missing checks.

Signed-off-by: Kristian Hoegsberg <krh@redhat.com>
Signed-off-by: Stefan Richter <stefanr@s5r6.in-berlin.de>
16 years agofirewire: Allocate scsi_host up front and allocate the sbp2_device as hostdata.
Kristian Høgsberg [Wed, 9 May 2007 23:23:07 +0000 (19:23 -0400)]
firewire: Allocate scsi_host up front and allocate the sbp2_device as hostdata.

Avoids an extra allocation and simplifies lifetime rules for the scsi_host.

Signed-off-by: Kristian Hoegsberg <krh@redhat.com>
Signed-off-by: Stefan Richter <stefanr@s5r6.in-berlin.de>
16 years agofirewire: Provide module aliase for backwards compatibility.
Olaf Hering [Sat, 5 May 2007 21:17:13 +0000 (23:17 +0200)]
firewire: Provide module aliase for backwards compatibility.

This patch loads fw-sbp2 if sbp2 is still in the config file. So one can
go back and forth between releases without worry about the root
filesystem drivers.

Signed-off-by: Kristian Hoegsberg <krh@redhat.com>
Existing mkinitrd scripts still have to be adapted, unless they grok
module aliases.

Signed-off-by: Stefan Richter <stefanr@s5r6.in-berlin.de>
16 years agofirewire: Add to fw-core-y instead of assigning fw-core-objs in Makefile.
Kristian Høgsberg [Tue, 8 May 2007 00:33:38 +0000 (20:33 -0400)]
firewire: Add to fw-core-y instead of assigning fw-core-objs in Makefile.

Signed-off-by: Kristian Hoegsberg <krh@redhat.com>
Signed-off-by: Stefan Richter <stefanr@s5r6.in-berlin.de>
16 years agofirewire: Break out shared IEEE1394 constant to separate header file.
Kristian Høgsberg [Tue, 8 May 2007 00:33:37 +0000 (20:33 -0400)]
firewire: Break out shared IEEE1394 constant to separate header file.

Signed-off-by: Kristian Hoegsberg <krh@redhat.com>
Signed-off-by: Stefan Richter <stefanr@s5r6.in-berlin.de>
16 years agofirewire: Use linux/*.h instead of asm/*.h header files.
Kristian Høgsberg [Tue, 8 May 2007 00:33:36 +0000 (20:33 -0400)]
firewire: Use linux/*.h instead of asm/*.h header files.

Signed-off-by: Kristian Hoegsberg <krh@redhat.com>
Signed-off-by: Stefan Richter <stefanr@s5r6.in-berlin.de>
16 years agofirewire: Uppercase most macro names.
Kristian Høgsberg [Tue, 8 May 2007 00:33:35 +0000 (20:33 -0400)]
firewire: Uppercase most macro names.

Signed-off-by: Kristian Hoegsberg <krh@redhat.com>
Signed-off-by: Stefan Richter <stefanr@s5r6.in-berlin.de>
16 years agofirewire: Coding style cleanup: no spaces after function names.
Kristian Høgsberg [Tue, 8 May 2007 00:33:34 +0000 (20:33 -0400)]
firewire: Coding style cleanup: no spaces after function names.

Signed-off-by: Kristian Hoegsberg <krh@redhat.com>
Signed-off-by: Stefan Richter <stefanr@s5r6.in-berlin.de>
16 years agofirewire: Convert card_rwsem to a regular mutex.
Kristian Høgsberg [Tue, 8 May 2007 00:33:33 +0000 (20:33 -0400)]
firewire: Convert card_rwsem to a regular mutex.

Signed-off-by: Kristian Hoegsberg <krh@redhat.com>
Signed-off-by: Stefan Richter <stefanr@s5r6.in-berlin.de>
16 years agofirewire: Clean up comment style.
Kristian Høgsberg [Tue, 8 May 2007 00:33:32 +0000 (20:33 -0400)]
firewire: Clean up comment style.

Drop filenames from file preamble, drop editor annotations and
use standard indent style for block comments.

Signed-off-by: Kristian Hoegsberg <krh@redhat.com>
Signed-off-by: Stefan Richter <stefanr@s5r6.in-berlin.de> (fixed typo)
16 years agofirewire: Use lib/ implementation of CRC ITU-T.
Kristian Høgsberg [Tue, 8 May 2007 00:33:31 +0000 (20:33 -0400)]
firewire: Use lib/ implementation of CRC ITU-T.

With the CRC ITU-T implementation available in lib/ we can use that instead.

This also fixes a bug in the topology map crc computation.

Signed-off-by: Kristian Hoegsberg <krh@redhat.com>
Signed-off-by: Stefan Richter <stefanr@s5r6.in-berlin.de> (fixed Kconfig)
16 years agoCRC ITU-T V.41
Ivo van Doorn [Mon, 12 Jun 2006 14:17:04 +0000 (16:17 +0200)]
CRC ITU-T V.41

This will add the CRC calculation according
to the CRC ITU-T V.41 to the kernel lib/ folder.

This code has been derived from the rt2x00 driver,
currently found only in the wireless-dev tree, but
this library is generic and could be used by more
drivers who currently use their own implementation.

Signed-off-by: Ivo van Doorn <IvDoorn@gmail.com>
Also useful for the new firewire stack.

Signed-off-by: Kristian Hoegsberg <krh@redhat.com>
Signed-off-by: Stefan Richter <stefanr@s5r6.in-berlin.de>
16 years ago[S390] update default configuration.
Martin Schwidefsky [Thu, 10 May 2007 13:46:02 +0000 (15:46 +0200)]
[S390] update default configuration.

Signed-off-by: Martin Schwidefsky <schwidefsky@de.ibm.com>
16 years ago[S390] Kconfig: no wireless on s390.
Martin Schwidefsky [Thu, 10 May 2007 13:46:01 +0000 (15:46 +0200)]
[S390] Kconfig: no wireless on s390.

Hide the config menues for wireless on s390.

Cc: John W. Linville <linville@tuxdriver.com>
Signed-off-by: Martin Schwidefsky <schwidefsky@de.ibm.com>
16 years ago[S390] Kconfig: use common Kconfig files for s390.
Martin Schwidefsky [Thu, 10 May 2007 13:46:00 +0000 (15:46 +0200)]
[S390] Kconfig: use common Kconfig files for s390.

Disband drivers/s390/Kconfig, use the common Kconfig files. The s390
specific config options from drivers/s390/Kconfig are moved to the
respective common Kconfig files.

Signed-off-by: Martin Schwidefsky <schwidefsky@de.ibm.com>
16 years ago[S390] Kconfig: common config options for s390.
Martin Schwidefsky [Thu, 10 May 2007 13:45:59 +0000 (15:45 +0200)]
[S390] Kconfig: common config options for s390.

Disable some configuration options in the common Kconfig files that
are of no interest to a s390 machine. Enable hangcheck timer.

Signed-off-by: Martin Schwidefsky <schwidefsky@de.ibm.com>
16 years ago[S390] Kconfig: unwanted menus for s390.
Martin Schwidefsky [Thu, 10 May 2007 13:45:58 +0000 (15:45 +0200)]
[S390] Kconfig: unwanted menus for s390.

Disable some more menus in the configuration files that are of no
interest to a s390 machine.

Signed-off-by: Martin Schwidefsky <schwidefsky@de.ibm.com>
16 years ago[S390] Kconfig: menus with depends on HAS_IOMEM.
Martin Schwidefsky [Thu, 10 May 2007 13:45:57 +0000 (15:45 +0200)]
[S390] Kconfig: menus with depends on HAS_IOMEM.

Add "depends on HAS_IOMEM" to a number of menus to make them
disappear for s390 which does not have I/O memory.

Signed-off-by: Martin Schwidefsky <schwidefsky@de.ibm.com>
16 years ago[S390] Kconfig: refine depends statements.
Martin Schwidefsky [Thu, 10 May 2007 13:45:56 +0000 (15:45 +0200)]
[S390] Kconfig: refine depends statements.

Refine some depends statements to limit their visibility to the
environments that are actually supported.

Signed-off-by: Martin Schwidefsky <schwidefsky@de.ibm.com>
16 years ago[S390] Avoid compile warning.
Heiko Carstens [Thu, 10 May 2007 13:45:48 +0000 (15:45 +0200)]
[S390] Avoid compile warning.

arch/s390/mm/fault.c: In function `signal_return':
arch/s390/mm/fault.c:256: warning: unused variable `compat'

Signed-off-by: Heiko Carstens <heiko.carstens@de.ibm.com>
16 years ago[S390] qdio: re-add lost perf_stats.tl_runs change in qdio_handle_pci
Ursula Braun [Thu, 10 May 2007 13:45:47 +0000 (15:45 +0200)]
[S390] qdio: re-add lost perf_stats.tl_runs change in qdio_handle_pci

Statement has been inadvertently lost with commit
00c0c6466c66bdf05f2a3dcf59e6895179ea8b76.

Signed-off-by: Ursula Braun <braunu@de.ibm.com>
Signed-off-by: Martin Schwidefsky <schwidefsky@de.ibm.com>
16 years ago[S390] Avoid sparse warnings.
Heiko Carstens [Thu, 10 May 2007 13:45:46 +0000 (15:45 +0200)]
[S390] Avoid sparse warnings.

Monthly sparse warning avoidance patch. Sigh.

Signed-off-by: Heiko Carstens <heiko.carstens@de.ibm.com>
16 years ago[S390] dasd: Fix modular build.
Cornelia Huck [Thu, 10 May 2007 13:45:45 +0000 (15:45 +0200)]
[S390] dasd: Fix modular build.

Add missing export of dasd_generic_read_dev_chars().

Signed-off-by: Cornelia Huck <cornelia.huck@de.ibm.com>
Signed-off-by: Martin Schwidefsky <schwidefsky@de.ibm.com>
16 years ago[S390] monreader inlining cleanup.
Martin Schwidefsky [Thu, 10 May 2007 13:45:44 +0000 (15:45 +0200)]
[S390] monreader inlining cleanup.

Signed-off-by: Martin Schwidefsky <schwidefsky@de.ibm.com>
16 years ago[S390] cio: Make some structures and a function static.
Cornelia Huck [Thu, 10 May 2007 13:45:43 +0000 (15:45 +0200)]
[S390] cio: Make some structures and a function static.

Signed-off-by: Cornelia Huck <cornelia.huck@de.ibm.com>
Signed-off-by: Martin Schwidefsky <schwidefsky@de.ibm.com>
16 years ago[S390] cio: Get rid of _ccw_device_get_device_number().
Cornelia Huck [Thu, 10 May 2007 13:45:42 +0000 (15:45 +0200)]
[S390] cio: Get rid of _ccw_device_get_device_number().

The function shouldn't have existed in the first place (not MSS-aware).
Introduce a new function ccw_device_get_id() that extracts the
ccw_dev_id structure of a ccw device and convert all users of
_ccw_device_get_device_number to ccw_device_get_id.

Signed-off-by: Cornelia Huck <cornelia.huck@de.ibm.com>
Signed-off-by: Martin Schwidefsky <schwidefsky@de.ibm.com>
16 years ago[S390] fix subsystem removal fallout
Cornelia Huck [Thu, 10 May 2007 13:45:41 +0000 (15:45 +0200)]
[S390] fix subsystem removal fallout

This patch fixes compilation on s390 after the removal of
struct subsystem.

Signed-off-by: Cornelia Huck <cornelia.huck@de.ibm.com>
Signed-off-by: Martin Schwidefsky <schwidefsky@de.ibm.com>
16 years ago[POWERPC] Fix compile error with kexec and CONFIG_SMP=n
Paul Mackerras [Thu, 10 May 2007 12:17:18 +0000 (22:17 +1000)]
[POWERPC] Fix compile error with kexec and CONFIG_SMP=n

Commit 2f4dfe206a2fc07099dfad77a8ea2f4b4ae2140f moved the definition
of hard_smp_processor_id() for the UP case from include/linux/smp.h
to include/asm/smp.h.  However, include/linux/smp.h only includes
include/asm/smp.h in the SMP case, so code that wants to use
hard_smp_processor_id() has to include <asm/smp.h> explicitly to
be sure of getting the definition.

Signed-off-by: Paul Mackerras <paulus@samba.org>
16 years ago[POWERPC] Split initrd logic out of early_init_dt_scan_chosen() to fix warning
Michael Ellerman [Thu, 10 May 2007 07:06:30 +0000 (17:06 +1000)]
[POWERPC] Split initrd logic out of early_init_dt_scan_chosen() to fix warning

If CONFIG_BLK_DEV_INITRD is not defined the prop variable in
early_init_dt_scan_chosen() is unused, causing a compiler warning.

So split the initrd logic into a separate function, allowing us to
declare prop only when we need it.

Built for both cases and booted with an initrd.

Signed-off-by: Michael Ellerman <michael@ellerman.id.au>
Signed-off-by: Paul Mackerras <paulus@samba.org>
16 years ago[POWERPC] Fix warning in hpte_decode(), and generalize it
Paul Mackerras [Thu, 10 May 2007 05:28:44 +0000 (15:28 +1000)]
[POWERPC] Fix warning in hpte_decode(), and generalize it

This adds the necessary support to hpte_decode() to handle 1TB
segments and 16GB pages, and removes an uninitialized value
warning on avpn.

We don't have any code to generate HPTEs for 1TB segments or 16GB
pages yet, so this is mostly for completeness, and to fix the
warning.

Signed-off-by: Paul Mackerras <paulus@samba.org>
Acked-by: Benjamin Herrenschmidt <benh@kernel.crashing.org>
16 years ago[POWERPC] Minor pSeries IOMMU debug cleanup
Michael Neuling [Thu, 10 May 2007 05:16:27 +0000 (15:16 +1000)]
[POWERPC] Minor pSeries IOMMU debug cleanup

pci is not initialized before being used here, so this debug print is
bogus at the current location.  Move it to where it makes sense.

Signed-off-by: Michael Neuling <mikey@neuling.org>
Signed-off-by: Paul Mackerras <paulus@samba.org>
16 years ago[POWERPC] PS3: Fix sys manager build error
Geoff Levand [Wed, 9 May 2007 20:09:14 +0000 (06:09 +1000)]
[POWERPC] PS3: Fix sys manager build error

Fix a PS3 build error when CONFIG_PS3_SYS_MANAGER=n.

Signed-off-by: Geoff Levand <geoffrey.levand@am.sony.com>
Signed-off-by: Paul Mackerras <paulus@samba.org>
16 years ago[POWERPC] Assorted janitorial EEH cleanups
Linas Vepstas [Wed, 9 May 2007 16:38:11 +0000 (02:38 +1000)]
[POWERPC] Assorted janitorial EEH cleanups

Assorted minor cleanups to EEH code; -- use literals, use
kerneldoc format.

Signed-off-by: Linas Vepstas <linas@austin.ibm.com>
----
 arch/powerpc/platforms/pseries/eeh.c        |   13 ++++++++++---
 arch/powerpc/platforms/pseries/eeh_driver.c |    7 ++++---
 include/asm-powerpc/ppc-pci.h               |   18 +++++++++++++++---
 3 files changed, 29 insertions(+), 9 deletions(-)
Signed-off-by: Paul Mackerras <paulus@samba.org>
16 years ago[POWERPC] We don't define CONFIG_HAVE_ARCH_EARLY_PFN_TO_NID
Stephen Rothwell [Wed, 9 May 2007 16:21:00 +0000 (02:21 +1000)]
[POWERPC] We don't define CONFIG_HAVE_ARCH_EARLY_PFN_TO_NID

so this declaration is not needed.

Signed-off-by: Stephen Rothwell <sfr@canb.auug.org.au>
Signed-off-by: Paul Mackerras <paulus@samba.org>
16 years ago[POWERPC] pmu_sys_suspended is only defined for PPC32
Stephen Rothwell [Wed, 9 May 2007 16:19:51 +0000 (02:19 +1000)]
[POWERPC] pmu_sys_suspended is only defined for PPC32

thus we get a link error on ppc64 with CONFIG_PM=y.  This fixes it.

Signed-off-by: Stephen Rothwell <sfr@canb.auug.org.au>
Signed-off-by: Paul Mackerras <paulus@samba.org>
16 years ago[POWERPC] Fix incorrect calculation of I/O window addresses
Paul Mackerras [Wed, 9 May 2007 11:47:15 +0000 (21:47 +1000)]
[POWERPC] Fix incorrect calculation of I/O window addresses

My patch "Cope with PCI host bridge I/O window not starting at 0"
introduced a bug in the calculation of the virtual addresses for the
I/O windows of PCI host bridges other than the first, because it
didn't account for the fact that hose->io_resource gets offset so that
it reflects the range of global I/O port numbers assigned to the
bridge.  This fixes it and simplifies get_bus_io_range() in the
process.

Signed-off-by: Paul Mackerras <paulus@samba.org>
16 years ago[POWERPC] celleb: Update celleb_defconfig
Ishizaki Kou [Wed, 9 May 2007 07:41:16 +0000 (17:41 +1000)]
[POWERPC] celleb: Update celleb_defconfig

Updates for celleb_defconfig.

Signed-off-by: Kou Ishizaki <kou.ishizaki@toshiba.co.jp>
Signed-off-by: Paul Mackerras <paulus@samba.org>
16 years ago[POWERPC] celleb: Fix parsing of machine type hack command line option
Ishizaki Kou [Wed, 9 May 2007 07:38:03 +0000 (17:38 +1000)]
[POWERPC] celleb: Fix parsing of machine type hack command line option

This is a bugfix to install Fedora Core 6 by using kernel
command line 'celleb_machine_type_hack=CHRP'.

Yes, this is a one-character fix to add forgotten '='.

Signed-off-by: Kou Ishizaki <kou.ishizaki@toshiba.co.jp>
Signed-off-by: Paul Mackerras <paulus@samba.org>
16 years ago[POWERPC] celleb: Fix PCI config space accesses to subordinate buses
Ishizaki Kou [Wed, 9 May 2007 07:36:40 +0000 (17:36 +1000)]
[POWERPC] celleb: Fix PCI config space accesses to subordinate buses

Checking whether bus->self is NULL is not enough to know "bus" is the
primary bus.

Signed-off-by: Kou Ishizaki <kou.ishizaki@toshiba.co.jp>
Signed-off-by: Paul Mackerras <paulus@samba.org>
16 years ago[POWERPC] celleb: Fix support for multiple PCI domains
Ishizaki Kou [Wed, 9 May 2007 07:34:08 +0000 (17:34 +1000)]
[POWERPC] celleb: Fix support for multiple PCI domains

Celleb has multiple PCI host bridges (phbs).  Previous boot logic gives
non-overlapped bus IDs between PCI host bridges so you can identify
PHB by bus ID.  But newer boot logic gives same bus ID between PHBs (it
gives bus ID 0 as root bus.) So we have to set 'phb->buid' as
non-zero.

Signed-off-by: Kou Ishizaki <kou.ishizaki@toshiba.co.jp>
Signed-off-by: Paul Mackerras <paulus@samba.org>
16 years ago[POWERPC] Wire up sys_utimensat
Stephen Rothwell [Wed, 9 May 2007 07:32:33 +0000 (17:32 +1000)]
[POWERPC] Wire up sys_utimensat

Signed-off-by: Stephen Rothwell <sfr@canb.auug.org.au>
Signed-off-by: Paul Mackerras <paulus@samba.org>
16 years agoMerge branch 'linux-2.6'
Paul Mackerras [Thu, 10 May 2007 11:08:37 +0000 (21:08 +1000)]
Merge branch 'linux-2.6'

16 years ago[SPARC64]: Use alloc_pci_dev() in PCI bus probes.
David S. Miller [Thu, 10 May 2007 09:16:27 +0000 (02:16 -0700)]
[SPARC64]: Use alloc_pci_dev() in PCI bus probes.

Otherwise MSI explodes because pci_msi_init_pci_dev() does not
get invoked.

Signed-off-by: David S. Miller <davem@davemloft.net>
16 years agoPull misc-for-upstream into release branch
Len Brown [Thu, 10 May 2007 08:06:12 +0000 (04:06 -0400)]
Pull misc-for-upstream into release branch

16 years ago[SPARC64]: Bump PROMINTR_MAX to 32.
David S. Miller [Thu, 10 May 2007 07:55:59 +0000 (00:55 -0700)]
[SPARC64]: Bump PROMINTR_MAX to 32.

Some devices have more than 15 which was the previous
setting.

Signed-off-by: David S. Miller <davem@davemloft.net>
16 years ago[SPARC64]: Fix recursion in PROM tree building.
David S. Miller [Thu, 10 May 2007 07:53:29 +0000 (00:53 -0700)]
[SPARC64]: Fix recursion in PROM tree building.

Use iteration for scanning of PROM node siblings.

Based upon a patch by Greg Onufer, who found this bug.

Signed-off-by: David S. Miller <davem@davemloft.net>
16 years agoacpi,msi-laptop: Fall back to EC polling mode for MSI laptop specific EC commands
Lennart Poettering [Fri, 4 May 2007 12:16:19 +0000 (14:16 +0200)]
acpi,msi-laptop: Fall back to EC polling mode for MSI laptop specific EC commands

The ACPI EC that is used in MSI laptops knows some non-standard
commands for changing the screen brighntess and a few other things,
which are used by the msi-laptop.c driver. Unfortunately for these
commands no GPE events for IBF and OBF are triggered. Since nowadays
the EC code uses the ec_intr=1 mode by default, this causes these
operations to timeout, although they don't fail. In result, all
operations that you can do with the msi-laptop.c driver take more or
less 1s to complete, which is awfully slow.

In one of the more recent kernels (2.6.20?) the EC subsystem has been
revamped. With that change the EC timeout has been increased. before
that increase the MSI EC accesses were slow -- but not *that* slow,
hence I took notice of this limitation of the MSI EC hardware only very
recently.

The standard EC operations on the MSI EC as defined in the ACPI spec
support GPE events properly.

The following patch adds a new argument "force_poll" to the
ec_transaction() function (and friends). If set to 1, the function
will poll for IBF/OBF even if ec_intr=1 is enabled. If set to 0 the
current behaviour is used. The msi-laptop driver is modified to make
use of this new flag, so that OBF/IBF is polled for the special MSI EC
transactions -- but only for them.

Signed-off-by: Lennart Poettering <mzxreary@0pointer.de>
Acked-by: Alexey Starikovskiy <aystarik@gmail.com>
Signed-off-by: Len Brown <len.brown@intel.com>
16 years agoPull misc-for-upstream into release branch
Len Brown [Thu, 10 May 2007 06:50:09 +0000 (02:50 -0400)]
Pull misc-for-upstream into release branch

16 years agoPull asus into release branch
Len Brown [Thu, 10 May 2007 06:50:01 +0000 (02:50 -0400)]
Pull asus into release branch

16 years agoPull acpica into release branch
Len Brown [Thu, 10 May 2007 06:49:34 +0000 (02:49 -0400)]
Pull acpica into release branch

16 years agoPull bugzilla-8385 into release branch
Len Brown [Thu, 10 May 2007 06:49:21 +0000 (02:49 -0400)]
Pull bugzilla-8385 into release branch

16 years agoPull thermal into release branch
Len Brown [Thu, 10 May 2007 06:49:01 +0000 (02:49 -0400)]
Pull thermal into release branch

16 years agosony-laptop: rename SONY_LAPTOP_OLD to a more meaningful SONYPI_COMPAT
Mattia Dongili [Tue, 1 May 2007 02:19:53 +0000 (11:19 +0900)]
sony-laptop: rename SONY_LAPTOP_OLD to a more meaningful SONYPI_COMPAT

Signed-off-by: Mattia Dongili <malattia@linux.it>
Signed-off-by: Len Brown <len.brown@intel.com>
16 years agoasus-laptop: version bump and lindent
Corentin Chary [Sun, 6 May 2007 12:48:22 +0000 (14:48 +0200)]
asus-laptop: version bump and lindent

Version bump, lindent, etc ..

Signed-off-by: Corentin Chary <corentincj@iksaif.net>
Signed-off-by: Len Brown <len.brown@intel.com>
16 years agoasus-laptop: fix light sens init
Corentin Chary [Sun, 6 May 2007 12:47:29 +0000 (14:47 +0200)]
asus-laptop: fix light sens init

Fix a stupid light sens detection bug.

Signed-off-by: Corentin Chary <corentincj@iksaif.net>
Signed-off-by: Len Brown <len.brown@intel.com>
16 years agoasus-laptop: add GPS support
Corentin Chary [Sun, 6 May 2007 12:47:06 +0000 (14:47 +0200)]
asus-laptop: add GPS support

Just adds GPS support found in R2H thanks to Sam Lin.  It will
make a "gps" file in /sys/devices/platform/asus-laptop/.

Signed-off-by: Corentin Chary <corentincj@iksaif.net>
Signed-off-by: Len Brown <len.brown@intel.com>
16 years agoasus-laptop: notify ALL events
Corentin Chary [Sun, 6 May 2007 12:46:41 +0000 (14:46 +0200)]
asus-laptop: notify ALL events

We need to handle all events, because some dsdt use events >= 0x80

Signed-off-by: Corentin Chary <corentincj@iksaif.net>
Signed-off-by: Len Brown <len.brown@intel.com>
16 years ago[POWERPC] CPM_UART: Removed __init from cpm_uart_init_portdesc to fix warning
Kumar Gala [Thu, 10 May 2007 04:44:58 +0000 (23:44 -0500)]
[POWERPC] CPM_UART: Removed __init from cpm_uart_init_portdesc to fix warning

cpm_uart_init_portdesc is referenced from non-init code and thus we were
getting the following warning:

WARNING: drivers/built-in.o - Section mismatch: reference to .init.text:cpm_uart_init_portdesc from .text between 'cpm_uart_init' (at offset 0x18020) and 'cpm_uart_drv_remove'

Signed-off-by: Kumar Gala <galak@kernel.crashing.org>
16 years ago[POWERPC] User rheap from arch/powerpc/lib
Kumar Gala [Thu, 10 May 2007 04:28:17 +0000 (23:28 -0500)]
[POWERPC] User rheap from arch/powerpc/lib

Removed rheap in arch/ppc/lib and changed build system to use the
one in arch/powerpc/lib.

Signed-off-by: Kumar Gala <galak@kernel.crashing.org>
16 years ago[POWERPC] 83xx: Fix the PCI ranges in the MPC834x_MDS device tree.
Scott Wood [Tue, 1 May 2007 17:49:04 +0000 (12:49 -0500)]
[POWERPC] 83xx: Fix the PCI ranges in the MPC834x_MDS device tree.

The MPC834x_MDS device tree's PCI non-prefetchable MMIO range was
specified incorrectly.  Both the local and bus addresses start at
0x90000000.

Signed-off-by: Scott Wood <scottwood@freescale.com>
Signed-off-by: Kumar Gala <galak@kernel.crashing.org>
16 years ago[POWERPC] 83xx: Fix the PCI ranges in the MPC832x_MDS device tree.
Scott Wood [Tue, 1 May 2007 17:48:47 +0000 (12:48 -0500)]
[POWERPC] 83xx: Fix the PCI ranges in the MPC832x_MDS device tree.

The MPC832x_MDS device tree's PCI non-prefetchable MMIO range was
specified incorrectly.  Both the local and bus addresses start at
0x90000000.

Signed-off-by: Scott Wood <scottwood@freescale.com>
Signed-off-by: Kumar Gala <galak@kernel.crashing.org>
16 years ago[POWERPC] CPM_UART: cpm_uart_set_termios should take ktermios, not termios
Scott Wood [Tue, 8 May 2007 17:19:21 +0000 (12:19 -0500)]
[POWERPC] CPM_UART: cpm_uart_set_termios should take ktermios, not termios

This eliminates some warnings.

Signed-off-by: Scott Wood <scottwood@freescale.com>
Signed-off-by: Kumar Gala <galak@kernel.crashing.org>
16 years ago[POWERPC] Change rheap functions to use ulongs instead of pointers
Timur Tabi [Tue, 8 May 2007 19:46:36 +0000 (14:46 -0500)]
[POWERPC] Change rheap functions to use ulongs instead of pointers

The rheap allocation functions return a pointer, but the actual value is based
on how the heap was initialized, and so it can be anything, e.g. an offset
into a buffer.  A ulong is a better representation of the value returned by
the allocation functions.

This patch changes all of the relevant rheap functions to use a unsigned long
integers instead of a pointer.  In case of an error, the value returned is
a negative error code that has been cast to an unsigned long.  The caller can
use the IS_ERR_VALUE() macro to check for this.

All code which calls the rheap functions is updated accordingly.  Macros
IS_MURAM_ERR() and IS_DPERR(), have been deleted in favor of IS_ERR_VALUE().

Also added error checking to rh_attach_region().

Signed-off-by: Timur Tabi <timur@freescale.com>
Signed-off-by: Kumar Gala <galak@kernel.crashing.org>
16 years ago[POWERPC] 86xx: Enable the AC97 interface on 8641D board.
Jason Jin [Wed, 2 May 2007 21:53:38 +0000 (16:53 -0500)]
[POWERPC] 86xx: Enable the AC97 interface on 8641D board.

HD interface and AC97 interface share some pins and they are enabled at
the same time, In order to use AC97 interface, we need to disable the HD
interface first.

Signed-off-by:Jason Jin<jason.jin@freescale.com>
Acked-by: Jon Loeliger <jdl@freescale.com>
Signed-off-by: Kumar Gala <galak@kernel.crashing.org>
16 years ago[POWERPC] Move reg_booke.h to include/asm-powerpc
Becky Bruce [Wed, 9 May 2007 19:31:19 +0000 (14:31 -0500)]
[POWERPC] Move reg_booke.h to include/asm-powerpc

This patch moves a copy of reg_booke.h to include/asm-powerpc and fixes
up the ifdef protection.

Signed-off-by: Becky Bruce <becky.bruce@freescale.com>
Signed-off-by: Kumar Gala <galak@kernel.crashing.org>
16 years ago[POWERPC] 83xx: Suppress warning when CONFIG_ options aren't defined
Kumar Gala [Thu, 10 May 2007 03:48:53 +0000 (22:48 -0500)]
[POWERPC] 83xx: Suppress warning when CONFIG_ options aren't defined

Suppress warning when CONFIG_PCI & CONFIG_QUICC_ENGINE is not defined

Signed-off-by: Kumar Gala <galak@kernel.crashing.org>
16 years ago[POWERPC] 83xx: Suppress warning when CONFIG_PCI is not defined
Li Yang [Thu, 10 May 2007 03:14:57 +0000 (11:14 +0800)]
[POWERPC] 83xx: Suppress warning when CONFIG_PCI is not defined

Suppress warning when CONFIG_PCI is not defined.

Signed-off-by: Li Yang <leoli@freescale.com>
Signed-off-by: Kumar Gala <galak@kernel.crashing.org>
16 years agoACPICA: Lindent
Len Brown [Thu, 10 May 2007 03:34:35 +0000 (23:34 -0400)]
ACPICA: Lindent

Signed-off-by: Len Brown <len.brown@intel.com>