openwrt/staging/blogic.git
17 years agoAdd UNPLUG traces to all appropriate places
Alan D. Brunelle [Wed, 7 Nov 2007 19:26:56 +0000 (14:26 -0500)]
Add UNPLUG traces to all appropriate places

Added blk_unplug interface, allowing all invocations of unplugs to result
in a generated blktrace UNPLUG.

Signed-off-by: Alan D. Brunelle <Alan.Brunelle@hp.com>
Signed-off-by: Jens Axboe <jens.axboe@oracle.com>
17 years agoblock: fix requeue handling in blk_queue_invalidate_tags()
Jens Axboe [Fri, 9 Nov 2007 11:52:45 +0000 (12:52 +0100)]
block: fix requeue handling in blk_queue_invalidate_tags()

Credit goes to juergen.kadidlo@exasol.com for diagnosing this issue
and supplying the initial patch.

blk_queue_invalidate_tags() must use the proper requeueing paths instead
of open coding the re-add of the request, otherwise we bug out in rq
accounting. Just switch to using blk_requeue_request(), that takes care
of end-tag handling as well and also adds the blktrace REQUEUE notify
event that is also appropriate here.

Signed-off-by: Jens Axboe <jens.axboe@oracle.com>
17 years agommc: Fix sg helper copy-and-paste error
Roland Dreier [Thu, 8 Nov 2007 12:50:58 +0000 (13:50 +0100)]
mmc: Fix sg helper copy-and-paste error

Commit 45711f1a ("[SG] Update drivers to use sg helpers") had the
following bogus change in drivers/mmc/card/queue.c:

    > - src_buf = page_address(src->page) + src->offset;
    > + src_buf = sg_virt(dst);

(Notice that "src" is converted to "dst").  Turn this "dst" back into
the intended "src".

Signed-off-by: Roland Dreier <roland@digitalvampire.org>
Tested-by: Romano Giannetti <romano.giannetti@gmail.com>
Signed-off-by: Jens Axboe <jens.axboe@oracle.com>
17 years agopktcdvd: fix BUG caused by sysfs module reference semantics change
Tejun Heo [Thu, 8 Nov 2007 07:00:24 +0000 (08:00 +0100)]
pktcdvd: fix BUG caused by sysfs module reference semantics change

pkt_setup_dev() expects module reference to be held on invocation.
This used to be true for sysfs callbacks but not anymore.  Test and
grab module reference around pkt_setup_dev() in
class_pktcdvd_store_add().

Signed-off-by: Tejun Heo <htejun@gmail.com>
Acked-by: Peter Osterlund <petero2@telia.com>
Signed-off-by: Jens Axboe <jens.axboe@oracle.com>
17 years agoioprio: allow sys_ioprio_set() value of 0 to reset ioprio setting
Jens Axboe [Wed, 7 Nov 2007 12:54:07 +0000 (13:54 +0100)]
ioprio: allow sys_ioprio_set() value of 0 to reset ioprio setting

Normally io priorities follow the CPU nice, unless a specific scheduling
class has been set. Once that is set, there's no way to reset the
behaviour to 'none' so that it follows CPU nice again.

Currently passing in 0 as the ioprio class/value will return -1/EINVAL,
change that to allow resetting of a set scheduling class.

Signed-off-by: Jens Axboe <jens.axboe@oracle.com>
17 years agocfq_idle_class_timer: add paranoid checks for jiffies overflow
Oleg Nesterov [Wed, 7 Nov 2007 12:51:35 +0000 (13:51 +0100)]
cfq_idle_class_timer: add paranoid checks for jiffies overflow

In theory, if the queue was idle long enough, cfq_idle_class_timer may have
a false (and very long) timeout because jiffies can wrap into the past wrt
->last_end_request.

Signed-off-by: Oleg Nesterov <oleg@tv-sign.ru>
Signed-off-by: Jens Axboe <jens.axboe@oracle.com>
17 years agocfq: fix IOPRIO_CLASS_IDLE delays
Oleg Nesterov [Wed, 7 Nov 2007 08:46:13 +0000 (09:46 +0100)]
cfq: fix IOPRIO_CLASS_IDLE delays

After the fresh boot:

ionice -c3 -p $$
echo cfq >> /sys/block/XXX/queue/scheduler
dd if=/dev/XXX of=/dev/null bs=512 count=1

Now dd hangs in D state and the queue is completely stalled for approximately
INITIAL_JIFFIES + CFQ_IDLE_GRACE jiffies. This is because cfq_init_queue()
forgets to initialize cfq_data->last_end_request.

(I guess this patch is not complete, overflow is still possible)

Signed-off-by: Oleg Nesterov <oleg@tv-sign.ru>
Signed-off-by: Jens Axboe <jens.axboe@oracle.com>
17 years agocfq: fix IOPRIO_CLASS_IDLE accounting
Oleg Nesterov [Mon, 5 Nov 2007 07:58:05 +0000 (08:58 +0100)]
cfq: fix IOPRIO_CLASS_IDLE accounting

Spotted by Nick <gentuu@gmail.com>, hopefully can explain the second trace in
http://bugzilla.kernel.org/show_bug.cgi?id=9180.

If ->async_idle_cfqq != NULL cfq_put_async_queues() puts it IOPRIO_BE_NR times
in a loop. Fix this.

Signed-off-by: Oleg Nesterov <oleg@tv-sign.ru>
Signed-off-by: Jens Axboe <jens.axboe@oracle.com>
17 years agoLinux 2.6.24-rc2
Linus Torvalds [Tue, 6 Nov 2007 21:57:46 +0000 (13:57 -0800)]
Linux 2.6.24-rc2

17 years agoUML: fix defconfig build again
Jeff Dike [Tue, 6 Nov 2007 16:02:50 +0000 (11:02 -0500)]
UML: fix defconfig build again

Reported by Al Viro.

This fixes it:

     [AC]FLAGS -> KBUILD_[AC]FLAGS conversion in Makefile-i386.

Signed-off-by: Jeff Dike <jdike@linux.intel.com>
Cc: Al Viro <viro@ftp.linux.org.uk>
Cc: Sam Ravnborg <sam@ravnborg.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
17 years agoMerge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/ericvh...
Linus Torvalds [Tue, 6 Nov 2007 15:53:46 +0000 (07:53 -0800)]
Merge branch 'for-linus' of git://git./linux/kernel/git/ericvh/v9fs

* 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/ericvh/v9fs:
  9p: add missing end-of-options record for trans_fd
  9p: return NULL when trans not found
  9p: use copy of the options value instead of original
  9p: fix memory leak in v9fs_get_sb

17 years ago9p: add missing end-of-options record for trans_fd
Latchesar Ionkov [Tue, 6 Nov 2007 14:02:53 +0000 (08:02 -0600)]
9p: add missing end-of-options record for trans_fd

The list of options that the fd transport accepts is missing end-of-options
marker. This patch adds it.

Signed-off-by: Latchesar Ionkov <lucho@ionkov.net>
Acked-by: Eric Van Hensbergen <ericvh@gmail.com>
17 years ago9p: return NULL when trans not found
Latchesar Ionkov [Tue, 6 Nov 2007 14:02:53 +0000 (08:02 -0600)]
9p: return NULL when trans not found

v9fs_match_trans function returns arbitrary transport module instead of NULL
when the requested transport is not registered. This patch modifies the
function to return NULL in that case.

Signed-off-by: Latchesar Ionkov <lucho@ionkov.net>
Acked-by: Eric Van Hensbergen <ericvh@gmail.com>
17 years ago9p: use copy of the options value instead of original
Latchesar Ionkov [Tue, 6 Nov 2007 14:02:53 +0000 (08:02 -0600)]
9p: use copy of the options value instead of original

v9fs_parse_options function uses strsep which modifies the value of the
v9ses->options field. That modified value is later passed to the function
that creates the transport potentially making the transport creation
function to fail.

This patch creates a copy of v9ses->option field that v9fs_parse_options
function uses instead of the original value.

Signed-off-by: Latchesar Ionkov <lucho@ionkov.net>
Acked-by: Eric Van Hensbergen <ericvh@gmail.com>
17 years ago9p: fix memory leak in v9fs_get_sb
Latchesar Ionkov [Tue, 6 Nov 2007 14:02:53 +0000 (08:02 -0600)]
9p: fix memory leak in v9fs_get_sb

This patch fixes a memory leak in v9fs_get_sb.

Signed-off-by: Latchesar Ionkov <lucho@ionkov.net>
Acked-by: Eric Van Hensbergen <ericvh@gmail.com>
17 years agoMerge branch 'drm-patches' of master.kernel.org:/pub/scm/linux/kernel/git/airlied...
Linus Torvalds [Tue, 6 Nov 2007 01:43:36 +0000 (17:43 -0800)]
Merge branch 'drm-patches' of /linux/kernel/git/airlied/drm-2.6

* 'drm-patches' of master.kernel.org:/pub/scm/linux/kernel/git/airlied/drm-2.6:
  drm: DRM: fix memset size error
  drm: remove remnants of DRM_COPY_FROM/TO_USER_IOCTL
  drm: remove second forward decleration of drm device struct.

17 years agoMerge branch 'upstream-linus' of master.kernel.org:/pub/scm/linux/kernel/git/jgarzik...
Linus Torvalds [Tue, 6 Nov 2007 01:43:04 +0000 (17:43 -0800)]
Merge branch 'upstream-linus' of /linux/kernel/git/jgarzik/libata-dev

* 'upstream-linus' of master.kernel.org:/pub/scm/linux/kernel/git/jgarzik/libata-dev:
  libata: handle broken cable reporting
  pata_hpt37x: Fix outstanding bug reports on the HPT374 and 37x cable detect
  ata_piix: Add additional PCI identifier for 40 wire short cable
  pata_serverworks: Fix problem with some drive combinations
  libata: Don't disable dipm with SET FEATURES
  libata and bogus LBA48 drives

17 years agoMerge branch 'upstream-linus' of master.kernel.org:/pub/scm/linux/kernel/git/jgarzik...
Linus Torvalds [Tue, 6 Nov 2007 01:42:41 +0000 (17:42 -0800)]
Merge branch 'upstream-linus' of /linux/kernel/git/jgarzik/netdev-2.6

* 'upstream-linus' of master.kernel.org:/pub/scm/linux/kernel/git/jgarzik/netdev-2.6:
  phylib: Silence driver registration
  phylib: Add ID for Marvell 88E1240
  82596: free nonexistent resource fix
  SUNHME: Fix missing NETIF_F_VLAN_CHALLENGED on PCI happy meals

17 years agodrm: DRM: fix memset size error
Li Zefan [Mon, 5 Nov 2007 02:53:09 +0000 (12:53 +1000)]
drm: DRM: fix memset size error

The size passing to memset is wrong.

Signed-off-by: Li Zefan <lizf@cn.fujitsu.com>
Signed-off-by: Dave Airlie <airlied@redhat.com>
17 years agodrm: remove remnants of DRM_COPY_FROM/TO_USER_IOCTL
Dave Airlie [Mon, 5 Nov 2007 01:48:34 +0000 (11:48 +1000)]
drm: remove remnants of DRM_COPY_FROM/TO_USER_IOCTL

This is a bug in the savage driver since I introduced these changes.

Signed-off-by: Dave Airlie <airlied@redhat.com>
17 years agodrm: remove second forward decleration of drm device struct.
Dave Airlie [Mon, 5 Nov 2007 01:36:18 +0000 (11:36 +1000)]
drm: remove second forward decleration of drm device struct.

Signed-off-by: Dave Airlie <airlied@linux.ie>
17 years agoata_piix: Add additional PCI identifier for 40 wire short cable
Alan Cox [Mon, 5 Nov 2007 22:51:09 +0000 (22:51 +0000)]
ata_piix: Add additional PCI identifier for 40 wire short cable

Keeping the list in sync with the old IDE driver

Signed-off-by: Alan Cox <alan@redhat.com>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
17 years agotime: fix inconsistent function names in comments
Li Zefan [Mon, 5 Nov 2007 22:51:10 +0000 (14:51 -0800)]
time: fix inconsistent function names in comments

Signed-off-by: Li Zefan <lizf@cn.fujitsu.com>
Cc: Thomas Gleixner <tglx@linutronix.de>
Cc: john stultz <johnstul@us.ibm.com>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
17 years agom68knommu: fix pread/pwrite defines
Greg Ungerer [Mon, 5 Nov 2007 22:51:04 +0000 (14:51 -0800)]
m68knommu: fix pread/pwrite defines

Fix system call defines for system call 180 and 181 to match the underlying
system call table function entries.  System call 180 calls sys_pread64, and
181 calls sys_pwrite64, so make the definitions match.

Signed-off-by: Greg Ungerer <gerg@uclinux.org>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
17 years agoeCryptfs: release mutex on hash error path
Michael Halcrow [Mon, 5 Nov 2007 22:51:04 +0000 (14:51 -0800)]
eCryptfs: release mutex on hash error path

Release the crypt_stat hash mutex on allocation error. Check for error
conditions when doing crypto hash calls.

Signed-off-by: Michael Halcrow <mhalcrow@us.ibm.com>
Reported-by: Kazuki Ohta <kazuki.ohta@gmail.com>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
17 years agoeCryptfs: increment extent_offset once per loop interation
Michael Halcrow [Mon, 5 Nov 2007 22:51:03 +0000 (14:51 -0800)]
eCryptfs: increment extent_offset once per loop interation

The extent_offset is getting incremented twice per loop iteration through any
given page.  It should only be getting incremented once.  This bug should only
impact hosts with >4K page sizes.

Signed-off-by: Michael Halcrow <mhalcrow@us.ibm.com>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
17 years agotelephony: phonedev panics if unregistering device not registered [Bug 9266]
Matti Linnanvuori [Mon, 5 Nov 2007 22:51:02 +0000 (14:51 -0800)]
telephony: phonedev panics if unregistering device not registered [Bug 9266]

Remove panic from phonedev.  See

http://bugzilla.kernel.org/show_bug.cgi?id=9266

for details (phonedev panics if unregistering device not registered).

Signed-off-by: Matti Linnanvuori <mattilinnanvuori@yahoo.com>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
17 years agomd: fix misapplied patch in raid5.c
Neil Brown [Mon, 5 Nov 2007 22:51:02 +0000 (14:51 -0800)]
md: fix misapplied patch in raid5.c

commit 4ae3f847e49e3787eca91bced31f8fd328d50496 ("md: raid5: fix
clearing of biofill operations") did not get applied correctly,
presumably due to substantial similarities between handle_stripe5 and
handle_stripe6.

This patch moves the chunk of new code from handle_stripe6 (where it isn't
needed (yet)) to handle_stripe5.

Signed-off-by: Neil Brown <neilb@suse.de>
Cc: "Dan Williams" <dan.j.williams@intel.com>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
17 years agovirtio/virtcons: fix section mismatch warning
Randy Dunlap [Mon, 5 Nov 2007 22:51:01 +0000 (14:51 -0800)]
virtio/virtcons: fix section mismatch warning

Make virtcons_probe() __devinit.
Fixes this section warning:

WARNING: vmlinux.o(.text+0x14c10b): Section mismatch: reference to .init.text:hvc_alloc (between 'virtcons_probe' and 'ac_register_board')

Signed-off-by: Randy Dunlap <randy.dunlap@oracle.com>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
17 years agortc: m48t59 fix section mismatch warning
Randy Dunlap [Mon, 5 Nov 2007 22:51:00 +0000 (14:51 -0800)]
rtc: m48t59 fix section mismatch warning

Change the name of this data to use a name (suffix) that is whitelisted
by MODPOST so that the section warning is fixed (not generated).

WARNING: vmlinux.o(.data+0x1b140): Section mismatch: reference to .init.text:m48t59_rtc_probe (between 'm48t59_rtc_platdrv' and 'm48t59_nvram_attr')

Signed-off-by: Randy Dunlap <randy.dunlap@oracle.com>
Acked-by: Alessandro Zummo <a.zummo@towertech.it>
Cc: David Brownell <david-b@pacbell.net>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
17 years agouml: correctly strip kernel defines from userspace CFLAGS
Jeff Dike [Mon, 5 Nov 2007 22:50:59 +0000 (14:50 -0800)]
uml: correctly strip kernel defines from userspace CFLAGS

KERNEL_DEFINES needs whitespace trimmed, otherwise the whitespace crunching
done by make fools the patsubst which is used to remove KERNEL_DEFINES from
USER_CFLAGS.

Signed-off-by: Jeff Dike <jdike@linux.intel.com>
Cc: Sam Ravnborg <sam@ravnborg.org>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
17 years agouml: fix incompatible types warning in previous SG fix
WANG Cong [Mon, 5 Nov 2007 22:50:59 +0000 (14:50 -0800)]
uml: fix incompatible types warning in previous SG fix

Fix an incompatible-pointer warning.

Signed-off-by: WANG Cong <xiyou.wangcong@gmail.com>
Signed-off-by: Jeff Dike <jdike@linux.intel.com>
Cc: Jens Axboe <jens.axboe@oracle.com>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
17 years agoparide: fix 'and' typo in drivers/block/paride/pt.c
Roel Kluin [Mon, 5 Nov 2007 22:50:58 +0000 (14:50 -0800)]
paride: fix 'and' typo in drivers/block/paride/pt.c

Fix 'and' typo (PT_WRITE_OK is defined 2)

Signed-off-by: Roel Kluin <12o3l@tiscali.nl>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
17 years agofs/afs/vlocation.c: fix off-by-one
Adrian Bunk [Mon, 5 Nov 2007 22:50:57 +0000 (14:50 -0800)]
fs/afs/vlocation.c: fix off-by-one

This patch fixes an off-by-one error spotted by the Coverity checker.

Signed-off-by: Adrian Bunk <bunk@kernel.org>
Acked-by: David Howells <dhowells@redhat.com>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
17 years agoarm26: remove it again
Hugh Dickins [Mon, 5 Nov 2007 22:50:56 +0000 (14:50 -0800)]
arm26: remove it again

A tiny vestige of arm26 has appeared: remove it again.

(akpm: someone (tm) needs to remove include/asm-arm26/ too)

Signed-off-by: Hugh Dickins <hugh@veritas.com>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
17 years agoFix bitmap_scnlistprintf for empty masks
Andi Kleen [Mon, 5 Nov 2007 22:50:56 +0000 (14:50 -0800)]
Fix bitmap_scnlistprintf for empty masks

When a bitmap is empty bitmap_scnlistprintf() would leave the buffer
uninitialized.  Set it to an empty string in this case.

I didn't see any in normal kernel callers hitting this, but some custom
debug code of mine did.

Signed-off-by: Andi Kleen <ak@suse.de>
Acked-by: Paul Jackson <pj@sgi.com>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
17 years agoMissing include file in kallsyms.h
Kamalesh Babulal [Mon, 5 Nov 2007 22:50:55 +0000 (14:50 -0800)]
Missing include file in kallsyms.h

The Build with randconfig fails with following error with the
2.6.24-rc4-git9

include/linux/kallsyms.h:56: error: `NULL' undeclared (first use in this
function)
include/linux/kallsyms.h:56: error: (Each undeclared identifier is
reported only once
include/linux/kallsyms.h:56: error: for each function it appears in.)
make[2]: *** [arch/powerpc/platforms/cell/spu_callbacks.o] Error 1
make[1]: *** [arch/powerpc/platforms/cell] Error 2
make: *** [arch/powerpc/platforms] Error 2

Signed-off-by: Kamalesh Babulal <kamalesh@linux.vnet.ibm.com>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
17 years agolocal_t Documentation update
Mathieu Desnoyers [Mon, 5 Nov 2007 22:50:54 +0000 (14:50 -0800)]
local_t Documentation update

Grant Grundler was asking for more detail about correct usage of local
atomic operations and suggested adding the resulting summary to
local_ops.txt.

"Please add a bit more detail. If DaveM is correct (he normally is), then
there must be limits on how the local_t can be used in the kernel process
and interrupt contexts. I'd like those rules spelled out very clearly
since it's easy to get wrong and tracking down such a bug is quite painful."

Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers@polymtl.ca>
Signed-off-by: Grant Grundler <grundler@parisc-linux.org>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
17 years agoserial: fix compile warning about putc
Yinghai Lu [Mon, 5 Nov 2007 22:50:53 +0000 (14:50 -0800)]
serial: fix compile warning about putc

drivers/serial/8250_early.c:80: warning: conflicting types for built-in function `putc'

Signed-off-by: Yinghai Lu <yinghai.lu@sun.com>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
17 years agoi2o: debug messages corrected
Vasily Averin [Mon, 5 Nov 2007 22:50:53 +0000 (14:50 -0800)]
i2o: debug messages corrected

max_phys_segments and max_sectors were swapped

Signed-off-by: Vasily Averin <vvs@sw.ru>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
17 years agoDump stack during sysctl registration failure
Alexey Dobriyan [Mon, 5 Nov 2007 22:50:52 +0000 (14:50 -0800)]
Dump stack during sysctl registration failure

Let's make immediately obvious from where sysctl comes from and messages
itself more noticeable.

Signed-off-by: Alexey Dobriyan <adobriyan@gmail.com>
Acked-by: "Eric W. Biederman" <ebiederm@xmission.com>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
17 years agoi4l: errors with assignments in if
Roel Kluin [Mon, 5 Nov 2007 22:50:51 +0000 (14:50 -0800)]
i4l: errors with assignments in if

Signed-off-by: Roel Kluin <12o3l@tiscali.nl>
Acked-by: Karsten Keil <kkeil@suse.de>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
17 years agolibata: handle broken cable reporting
Alan Cox [Mon, 5 Nov 2007 22:58:58 +0000 (22:58 +0000)]
libata: handle broken cable reporting

One or two ancient drives predated the cable spec and didn't sent the
valid bits for the field. I had hoped to leave this out of libata as a
piece of historical annoyance but a recent CD drive shows the same bug so
we have to import support for it.

Same concept as Bartlomiej's changes old IDE except that as we have
centralised blacklists we can avoid keeping another private table of stuff

Signed-off-by: Alan Cox <alan@redhat.com>
Signed-off-by: Jeff Garzik <jeff@garzik.org>
17 years agopata_hpt37x: Fix outstanding bug reports on the HPT374 and 37x cable detect
Alan Cox [Mon, 5 Nov 2007 22:53:38 +0000 (22:53 +0000)]
pata_hpt37x: Fix outstanding bug reports on the HPT374 and 37x cable detect

- Read frequency correctly
- Correct cable detect handling
- Fix wrong filter test

Signed-off-by: Alan Cox <alan@redhat.com>
Signed-off-by: Jeff Garzik <jeff@garzik.org>
17 years agoata_piix: Add additional PCI identifier for 40 wire short cable
Alan Cox [Mon, 5 Nov 2007 22:51:09 +0000 (22:51 +0000)]
ata_piix: Add additional PCI identifier for 40 wire short cable

Keeping the list in sync with the old IDE driver

Signed-off-by: Alan Cox <alan@redhat.com>
Signed-off-by: Jeff Garzik <jeff@garzik.org>
17 years agopata_serverworks: Fix problem with some drive combinations
Alan Cox [Mon, 5 Nov 2007 15:04:40 +0000 (15:04 +0000)]
pata_serverworks: Fix problem with some drive combinations

The driver used the channel not the device number for deciding where to
load some timing parameters. Also change so that we clear the UDMA field
as the old driver did. Not believed neccessary but does no harm.

Signed-off-by: Alan Cox <alan@redhat.com>
Signed-off-by: Jeff Garzik <jeff@garzik.org>
17 years agophylib: Silence driver registration
Olof Johansson [Sun, 4 Nov 2007 22:09:23 +0000 (16:09 -0600)]
phylib: Silence driver registration

It gets quite verbose to see every single PHY driver being registered
by default.

Signed-off-by: Olof Johansson <olof@lixom.net>
Signed-off-by: Jeff Garzik <jeff@garzik.org>
17 years agophylib: Add ID for Marvell 88E1240
Olof Johansson [Sun, 4 Nov 2007 22:08:51 +0000 (16:08 -0600)]
phylib: Add ID for Marvell 88E1240

Add PHY IDs for Marvell 88E1240. It seems to have close enough programming
models to 1111/1112 for basic support at least.

Also clean up whitespace in the ID list a bit.

Signed-off-by: Olof Johansson <olof@lixom.net>
Signed-off-by: Jeff Garzik <jeff@garzik.org>
17 years ago82596: free nonexistent resource fix
Evgeniy Dushistov [Sun, 4 Nov 2007 20:22:29 +0000 (23:22 +0300)]
82596: free nonexistent resource fix

During booting of last vanilla kernel I got:
Trying to free nonexistent resource...

This because of if "ENABLE_APRICOT" is on we do:
request_region(ioaddr,...)
if (checksum test failed)
  goto out1;
dev->base_addr = ioaddr;//<-here mistake

out1:
release_region(dev->base_addr,...)

This change fixes this bug for me.

Signed-off-by: Evgeniy Dushistov <dushistov@mail.ru>
Signed-off-by: Jeff Garzik <jeff@garzik.org>
17 years agoSUNHME: Fix missing NETIF_F_VLAN_CHALLENGED on PCI happy meals
David Miller [Wed, 31 Oct 2007 23:35:57 +0000 (16:35 -0700)]
SUNHME: Fix missing NETIF_F_VLAN_CHALLENGED on PCI happy meals

No HME parts can do VLANs correctly.

Signed-off-by: David S. Miller <davem@davemloft.net>
Signed-off-by: Jeff Garzik <jeff@garzik.org>
17 years agoMerge branch 'for-linus' of git://git.o-hand.com/linux-rpurdie-leds
Linus Torvalds [Mon, 5 Nov 2007 22:31:52 +0000 (14:31 -0800)]
Merge branch 'for-linus' of git://git.o-hand.com/linux-rpurdie-leds

* 'for-linus' of git://git.o-hand.com/linux-rpurdie-leds:
  leds: bugfixes for leds-gpio

17 years agoMerge master.kernel.org:/pub/scm/linux/kernel/git/gregkh/pci-2.6
Linus Torvalds [Mon, 5 Nov 2007 22:08:00 +0000 (14:08 -0800)]
Merge /pub/scm/linux/kernel/git/gregkh/pci-2.6

* master.kernel.org:/pub/scm/linux/kernel/git/gregkh/pci-2.6:
  PCI: Add Kconfig option to disable deprecated pci_find_* API
  PCI: pciserial_resume_one ignored return value of pci_enable_device
  PCI Hotplug: cpqhp_pushbutton_thread(): remove a pointless if() check
  PCI: make pci_match_device() static
  PCI: Remove 3 incorrect MSI quirks.
  PCI: Add MSI INTX_DISABLE quirks for ATI SB700/800 SATA and IXP SB400 USB
  PCI: Add quirk for devices which disable MSI when INTX_DISABLE is set.
  PCI: Add MSI quirk for ServerWorks HT1000 PCIX bridge.
  PCI: Revert "PCI: disable MSI by default on systems with Serverworks HT1000 chips"

17 years agoleds: bugfixes for leds-gpio
David Brownell [Wed, 31 Oct 2007 09:37:37 +0000 (10:37 +0100)]
leds: bugfixes for leds-gpio

Three bugfixes to the leds-gpio driver, plus minor whitespace tweaks:

 - Do the INIT_WORK() before registering each LED, so if its trigger
   becomes immediately active it can schedule work without oopsing..

 - Use normal registration, not platform_driver_probe(), so that
   devices appearing "late" (hotplug type) can still be bound.

 - Mark the driver remove code as "__devexit", preventing oopses
   when the underlying device is removed.

These issues came up when using this driver with some GPIO expanders
living on serial busses, which act unlike "normal" platform devices:
they can appear and vanish along with the serial bus driver.

Signed-off-by: David Brownell <dbrownell@users.sourceforge.net>
Signed-off-by: Richard Purdie <rpurdie@rpsys.net>
17 years agoMerge git://git.kernel.org/pub/scm/linux/kernel/git/bart/ide-2.6
Linus Torvalds [Mon, 5 Nov 2007 21:50:49 +0000 (13:50 -0800)]
Merge git://git./linux/kernel/git/bart/ide-2.6

* git://git.kernel.org/pub/scm/linux/kernel/git/bart/ide-2.6:
  ide: fix IDE_HFLAG_NO_ATAPI_DMA handling in config_drive_for_dma()
  ide: move ide_fixstring() documentation to ide-iops.c from ide.h
  ide: add missing #ifdef/#endif CONFIG_IDE_TASK_IOCTL
  ide: fix ide_find_dma_mode() to print human-readable info
  ide: add missing rq.ref_count initialization to ide_diag_taskfile()
  ide: clear HOB bit for REQ_TYPE_ATA_TASK requests in ide_end_drive_cmd()
  ide: check rq->cmd_type in drive_cmd_intr()
  ide/Kconfig: fix BLK_DEV_OFFBOARD dependencies
  ide: unexport ide_fix_driveid
  ide/Kconfig: add IDEDISK_MULTI_MODE text adapted from hdparm manual page
  ide: do_identify() string termination fix
  piix: add support for ICH7 on Acer 5602aWLMi

17 years agoMerge branch 'master' of git://git.kernel.org/pub/scm/linux/kernel/git/mchehab/v4l-dvb
Linus Torvalds [Mon, 5 Nov 2007 21:50:28 +0000 (13:50 -0800)]
Merge branch 'master' of git://git./linux/kernel/git/mchehab/v4l-dvb

* 'master' of git://git.kernel.org/pub/scm/linux/kernel/git/mchehab/v4l-dvb: (26 commits)
  V4L/DVB (6548): pvrusb2: Fix oops on module removal
  V4L/DVB (6547): V4L: remove PCI from VIDEO_VIVI depends
  V4L/DVB (6532): Add the remaining addresses for tda9887
  V4L/DVB (6531): Fix a regression caused by commit 153962364dc6fa4a24571885fbe76506d8968610
  V4L/DVB (6518): Fix tvp5150 default values
  V4L/DVB (6514): em28xx: Include linux/mm.h
  V4L/DVB (6506): saa7134-alsa: Fix mmap support
  V4L/DVB (6504): pvrusb2: Remove dead sysfs code
  V4L/DVB (6503): pvrusb2: Fix associativity logic error
  V4L/DVB (6501): stv0297: Signal strength fixes
  V4L/DVB (6500): tda10021: Fix reported signal strength
  V4L/DVB (6499): tda10021: Bit error counting fixed
  V4L/DVB (6498): ves1820: Change the acquisition range for clock recovery from 120 ppm to 240ppm
  V4L/DVB (6495): saa7146: saa7146_wait_for_debi_done fixes
  V4L/DVB (6479): use input functions, should depend on INPUT
  V4L/DVB (6478): ir-functions use input functions, should depend on INPUT
  V4L/DVB (6432): tuner: fix CONFIG_TUNER_TEA5761=m
  V4L/DVB (6407): planb: fix obvious interrupt handling bugs
  V4L/DVB (6406): saa7134: fix analog audio in on medion md8800 quadro
  V4L/DVB (6403): mt2131: replace comma with semicolon fix
  ...

17 years agoMerge git://git.kernel.org/pub/scm/linux/kernel/git/sam/fix-kbuild
Linus Torvalds [Mon, 5 Nov 2007 21:44:49 +0000 (13:44 -0800)]
Merge git://git./linux/kernel/git/sam/fix-kbuild

* git://git.kernel.org/pub/scm/linux/kernel/git/sam/fix-kbuild:
  kbuild: do not pick up CFLAGS from the environment

17 years agoPCI: Add Kconfig option to disable deprecated pci_find_* API
Jeff Garzik [Mon, 29 Oct 2007 13:48:09 +0000 (09:48 -0400)]
PCI: Add Kconfig option to disable deprecated pci_find_* API

Signed-off-by: Jeff Garzik <jgarzik@redhat.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
17 years agoPCI: pciserial_resume_one ignored return value of pci_enable_device
Dirk Hohndel [Mon, 29 Oct 2007 13:28:17 +0000 (06:28 -0700)]
PCI: pciserial_resume_one ignored return value of pci_enable_device

[PATCH] pciserial_resume_one ignored return value of pci_enable_device

Signed-off-by: Dirk Hohndel <hohndel@linux.intel.com>
Acked-by: Alan Cox <alan@redhat.com>
Acked-by: Jeff Garzik <jeff@garzik.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
17 years agoPCI Hotplug: cpqhp_pushbutton_thread(): remove a pointless if() check
Adrian Bunk [Wed, 24 Oct 2007 16:25:00 +0000 (18:25 +0200)]
PCI Hotplug: cpqhp_pushbutton_thread(): remove a pointless if() check

The Coverity checker spotted that we'd have already oops'ed if "ctrl"
was NULL.

Additionally, "func" had just been checked for not being NULL.

Signed-off-by: Adrian Bunk <bunk@kernel.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
17 years agoPCI: make pci_match_device() static
Adrian Bunk [Wed, 24 Oct 2007 16:27:18 +0000 (18:27 +0200)]
PCI: make pci_match_device() static

pci_match_device() no longer has any other users.

Signed-off-by: Adrian Bunk <bunk@kernel.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
17 years agoPCI: Remove 3 incorrect MSI quirks.
David Miller [Thu, 25 Oct 2007 08:17:16 +0000 (01:17 -0700)]
PCI: Remove 3 incorrect MSI quirks.

Now that we have dealt with the real issue, in that some ATI SATA and
USB controllers needed the INTX_DISABLE quirk, we can remove these AMD
chipset global MSI disabling quirks.

This reverts three changesets:

4be8f906435a6af241821ab5b94b2b12cb7d57d8 (PCI: disable MSI on RS690)
aea6a433f50cd89b9cbd10850fd0b32f961f9883 (PCI: disable MSI on RD580)
f122392f679ebed39db08074f935d770504623eb (PCI: disable MSI on RX790)

This is based upon testing and feedback from
Shane Huang <Shane.Huang@amd.com>.

Cc: Shane Huang <Shane.Huang@amd.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
Acked-by: Jeff Garzik <jgarzik@redhat.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
17 years agoPCI: Add MSI INTX_DISABLE quirks for ATI SB700/800 SATA and IXP SB400 USB
David Miller [Thu, 25 Oct 2007 08:16:52 +0000 (01:16 -0700)]
PCI: Add MSI INTX_DISABLE quirks for ATI SB700/800 SATA and IXP SB400 USB

Signed-off-by: David S. Miller <davem@davemloft.net>
Acked-by: Jeff Garzik <jgarzik@redhat.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
17 years agoPCI: Add quirk for devices which disable MSI when INTX_DISABLE is set.
David Miller [Thu, 25 Oct 2007 08:16:30 +0000 (01:16 -0700)]
PCI: Add quirk for devices which disable MSI when INTX_DISABLE is set.

A reasonably common problem with some devices is that they will
disable MSI generation when the INTX_DISABLE bit is set in the
PCI_COMMAND register.

Quirk this explicitly, guarding the pci_intx() calls in msi.c with
this quirk indication.

The first entries for this quirk are for 5714 and 5780 Tigon3 chips,
and thus we can remove the workaround code from the tg3.c driver.

Signed-off-by: David S. Miller <davem@davemloft.net>
Acked-by: Michael Chan <mchan@broadcom.com>
Acked-by: Jeff Garzik <jgarzik@redhat.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
17 years agoPCI: Add MSI quirk for ServerWorks HT1000 PCIX bridge.
David Miller [Thu, 25 Oct 2007 08:15:53 +0000 (01:15 -0700)]
PCI: Add MSI quirk for ServerWorks HT1000 PCIX bridge.

This is the fix for the following problem:

https://bugzilla.redhat.com/show_bug.cgi?id=227657

The bnx2 device 5706 complains about MSI not working behind a
ServerWorks HT1000 PCIX bridge. An earlier commit to fix the problem:

e3008dedff4bdc96a5f67224cd3d8d12237082a0:

"PCI: disable MSI by default on systems with Serverworks HT1000 chips"

was not entirely correct, and has been reverted.

MSI does not work on the PCIX bus because the BIOS did not set the
HT_MSI_FLAGS_ENABLE bit in the HyperTransport MSI capability on the
bridge.  We use the existing quirk_msi_ht_cap() to detect the problem
and disable MSI in all buses behind it.

Signed-off-by: Michael Chan <mchan@broadcom.com>
Cc: Anantha Subramanyam <ananth@broadcom.com>
Cc: Naren Sankar <nsankar@broadcom.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
Acked-by: Jeff Garzik <jgarzik@redhat.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
17 years agoPCI: Revert "PCI: disable MSI by default on systems with Serverworks HT1000 chips"
David Miller [Thu, 25 Oct 2007 08:15:24 +0000 (01:15 -0700)]
PCI: Revert "PCI: disable MSI by default on systems with Serverworks HT1000 chips"

This reverts commit e3008dedff4bdc96a5f67224cd3d8d12237082a0.

The real bug was an INTX issue in the tg3 ethernet chip, and
cured by commit c129d962a66c76964954a98b38586ada82cf9381

Signed-off-by: David S. Miller <davem@davemloft.net>
Acked-by: Jeff Garzik <jgarzik@redhat.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
17 years agoide: fix IDE_HFLAG_NO_ATAPI_DMA handling in config_drive_for_dma()
Bartlomiej Zolnierkiewicz [Mon, 5 Nov 2007 20:42:30 +0000 (21:42 +0100)]
ide: fix IDE_HFLAG_NO_ATAPI_DMA handling in config_drive_for_dma()

commit 33c1002ed912ac9dacedd5d5b166da3b72d18460 incorrectly changed return
value from '0' to '-1', fix it (ns87415 was the only host driver affected
since it uses both IDE_HFLAG_TRUST_BIOS_FOR_DMA and IDE_HFLAG_NO_ATAPI_DMA).

Signed-off-by: Bartlomiej Zolnierkiewicz <bzolnier@gmail.com>
17 years agoide: move ide_fixstring() documentation to ide-iops.c from ide.h
Bartlomiej Zolnierkiewicz [Mon, 5 Nov 2007 20:42:29 +0000 (21:42 +0100)]
ide: move ide_fixstring() documentation to ide-iops.c from ide.h

Signed-off-by: Bartlomiej Zolnierkiewicz <bzolnier@gmail.com>
17 years agoide: add missing #ifdef/#endif CONFIG_IDE_TASK_IOCTL
Bartlomiej Zolnierkiewicz [Mon, 5 Nov 2007 20:42:27 +0000 (21:42 +0100)]
ide: add missing #ifdef/#endif CONFIG_IDE_TASK_IOCTL

Signed-off-by: Bartlomiej Zolnierkiewicz <bzolnier@gmail.com>
17 years agoide: fix ide_find_dma_mode() to print human-readable info
Bartlomiej Zolnierkiewicz [Mon, 5 Nov 2007 20:42:27 +0000 (21:42 +0100)]
ide: fix ide_find_dma_mode() to print human-readable info

Problem reported by Mikael.

Cc: Mikael Pettersson <mikpe@it.uu.se>
Signed-off-by: Bartlomiej Zolnierkiewicz <bzolnier@gmail.com>
17 years agoide: add missing rq.ref_count initialization to ide_diag_taskfile()
Bartlomiej Zolnierkiewicz [Mon, 5 Nov 2007 20:42:27 +0000 (21:42 +0100)]
ide: add missing rq.ref_count initialization to ide_diag_taskfile()

Noticed by Tejun Heo.

Cc: Tejun Heo <htejun@gmail.com>
Signed-off-by: Bartlomiej Zolnierkiewicz <bzolnier@gmail.com>
17 years agoide: clear HOB bit for REQ_TYPE_ATA_TASK requests in ide_end_drive_cmd()
Bartlomiej Zolnierkiewicz [Mon, 5 Nov 2007 20:42:27 +0000 (21:42 +0100)]
ide: clear HOB bit for REQ_TYPE_ATA_TASK requests in ide_end_drive_cmd()

ide_dump_ata_status() may set HOB bit before ide_end_drive_cmd() is called.

Signed-off-by: Bartlomiej Zolnierkiewicz <bzolnier@gmail.com>
17 years agoide: check rq->cmd_type in drive_cmd_intr()
Bartlomiej Zolnierkiewicz [Mon, 5 Nov 2007 20:42:26 +0000 (21:42 +0100)]
ide: check rq->cmd_type in drive_cmd_intr()

drive_cmd_intr() is used by both REQ_TYPE_ATA_CMD and REQ_TYPE_ATA_TASK
but commands using PIO-in protocol are valid only for REQ_TYPE_ATA_CMD
(&args[4] in case of REQ_TYPE_ATA_TASK points to a value for IDE_LCYL_REG
register instead of the data buffer).  This fix allows REQ_TYPE_ATA_TASK
commands to use non-zero values for IDE_SECTOR_REG (args[3]).

Signed-off-by: Bartlomiej Zolnierkiewicz <bzolnier@gmail.com>
17 years agoide/Kconfig: fix BLK_DEV_OFFBOARD dependencies
Bartlomiej Zolnierkiewicz [Mon, 5 Nov 2007 20:42:26 +0000 (21:42 +0100)]
ide/Kconfig: fix BLK_DEV_OFFBOARD dependencies

This config option is effective only for host drivers that use
IDE_HFLAG_OFF_BOARD host flag (aec62xx, generic, hpt34x, hpt366,
pdc202xx_new, pdc202xx_old and tc86c001).

Signed-off-by: Bartlomiej Zolnierkiewicz <bzolnier@gmail.com>
17 years agoide: unexport ide_fix_driveid
Adrian Bunk [Mon, 5 Nov 2007 20:42:26 +0000 (21:42 +0100)]
ide: unexport ide_fix_driveid

ide_fix_driveid can now be unexported.

Signed-off-by: Adrian Bunk <bunk@kernel.org>
Acked-by: Alan Cox <alan@redhat.com>
Signed-off-by: Bartlomiej Zolnierkiewicz <bzolnier@gmail.com>
17 years agoide/Kconfig: add IDEDISK_MULTI_MODE text adapted from hdparm manual page
Matti Linnanvuori [Mon, 5 Nov 2007 20:42:26 +0000 (21:42 +0100)]
ide/Kconfig: add IDEDISK_MULTI_MODE text adapted from hdparm manual page

Add IDEDISK_MULTI_MODE text adapted from hdparm manual page.

Signed-off-by: Matti Linnanvuori <mattilinnanvuori@yahoo.com>
Signed-off-by: Bartlomiej Zolnierkiewicz <bzolnier@gmail.com>
17 years agoide: do_identify() string termination fix
Tejun Heo [Mon, 5 Nov 2007 20:42:25 +0000 (21:42 +0100)]
ide: do_identify() string termination fix

Terminates id->model string before invoking strstr() in do_identify().

Signed-off-by: Tejun Heo <tj@home-tj.org>
Signed-off-by: Bartlomiej Zolnierkiewicz <bzolnier@gmail.com>
17 years agopiix: add support for ICH7 on Acer 5602aWLMi
sebdeg@ngi.it [Mon, 5 Nov 2007 20:42:25 +0000 (21:42 +0100)]
piix: add support for ICH7 on Acer 5602aWLMi

In piix.c (and in ata_piix.c) are already included some patches to skip the
cable check on some laptops and to enable UDMA > 33 modes, but I've noticed
than theese doesn't work on my Acer Aspire 5602WLMi (maybe exist more
versions of this laptop).  With this simple patch I can set transfer mode
to UDMA100.

From: "sebdeg@ngi.it" <sebdeg@ngi.it>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Acked-by: Alan Cox <alan@redhat.com>
Signed-off-by: Bartlomiej Zolnierkiewicz <bzolnier@gmail.com>
17 years agoMerge branch 'for-linus' of git://git390.osdl.marist.edu/pub/scm/linux-2.6
Linus Torvalds [Mon, 5 Nov 2007 19:39:25 +0000 (11:39 -0800)]
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] tod clock: announce clocksource as perfect
  [S390] Rename "idle_time" attribute to "idle_time_us".
  [S390] Fix priority mistakes in drivers/s390/cio/cmf.c
  [S390] Fix memory detection.
  [S390] Fix compile on !CONFIG_SMP.
  [S390] device_schedule_callback() for dcssblk.
  [S390] Fix smsgiucv init on no iucv machines
  [S390] cio: use INIT_WORK to initialize struct work.

17 years agoMerge branch 'master' of git://git.kernel.org/pub/scm/linux/kernel/git/rusty/linux...
Linus Torvalds [Mon, 5 Nov 2007 19:39:00 +0000 (11:39 -0800)]
Merge branch 'master' of git://git./linux/kernel/git/rusty/linux-2.6-lguest

* 'master' of git://git.kernel.org/pub/scm/linux/kernel/git/rusty/linux-2.6-lguest:
  lguest: tidy up documentation
  kernel/futex.c: make 3 functions static
  unexport access_process_vm
  lguest: make async_hcall() static

17 years agocpm_load_patch() - declartion conflict
Kamalesh Babulal [Mon, 5 Nov 2007 10:41:12 +0000 (16:11 +0530)]
cpm_load_patch() - declartion conflict

Commit f2a0bd3753dad7ea4605ebd5435716b39e9f92bb defines the function
with "void cpm_load_patch(cpm8xx_t *cp)" prtotype and is declared as
"extern void cpm_load_patch(volatile immap_t *immr)" in the header file.

Signed-off-by: Kamalesh Babulal <kamalesh@linux.vnet.ibm.com>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
17 years agoSLUB: Fix memory leak by not reusing cpu_slab
Christoph Lameter [Mon, 5 Nov 2007 19:31:58 +0000 (11:31 -0800)]
SLUB: Fix memory leak by not reusing cpu_slab

Fix the memory leak that may occur when we attempt to reuse a cpu_slab
that was allocated while we reenabled interrupts in order to be able to
grow a slab cache.

The per cpu freelist may contain objects and in that situation we may
overwrite the per cpu freelist pointer loosing objects.  This only
occurs if we find that the concurrently allocated slab fits our
allocation needs.

If we simply always deactivate the slab then the freelist will be
properly reintegrated and the memory leak will go away.

Signed-off-by: Christoph Lameter <clameter@sgi.com>
Acked-by: Hugh Dickins <hugh@veritas.com>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
17 years agoMerge master.kernel.org:/pub/scm/linux/kernel/git/jejb/scsi-rc-fixes-2.6
Linus Torvalds [Mon, 5 Nov 2007 17:57:13 +0000 (09:57 -0800)]
Merge /linux/kernel/git/jejb/scsi-rc-fixes-2.6

* master.kernel.org:/pub/scm/linux/kernel/git/jejb/scsi-rc-fixes-2.6:
  [SCSI] ibmvscsi: Prevent IO during partner login
  [SCSI] lpfc : Correct queue tag handling
  [SCSI] Update MAINTAINER email address and trees
  [SCSI] osst: fix if (...) \n #if... cases missing semicolons when false

17 years agoMerge branch 'dipm-fix' into upstream-fixes
Jeff Garzik [Mon, 5 Nov 2007 14:16:38 +0000 (09:16 -0500)]
Merge branch 'dipm-fix' into upstream-fixes

17 years agolguest: tidy up documentation
Rusty Russell [Mon, 5 Nov 2007 10:55:57 +0000 (21:55 +1100)]
lguest: tidy up documentation

After Adrian Bunk's "make async_hcall static" moved things around, update
comments to match (aka "make Guest").

Signed-off-by: Rusty Russell <rusty@rustcorp.com.au>
17 years agokernel/futex.c: make 3 functions static
Adrian Bunk [Fri, 2 Nov 2007 15:43:22 +0000 (16:43 +0100)]
kernel/futex.c: make 3 functions static

The following functions can now become static again:
- get_futex_key()
- get_futex_key_refs()
- drop_futex_key_refs()

Signed-off-by: Adrian Bunk <bunk@kernel.org>
Signed-off-by: Rusty Russell <rusty@rustcorp.com.au>
17 years agounexport access_process_vm
Adrian Bunk [Fri, 2 Nov 2007 15:43:28 +0000 (16:43 +0100)]
unexport access_process_vm

This patch removes the no longer used EXPORT_SYMBOL_GPL(access_process_vm).

Signed-off-by: Adrian Bunk <bunk@kernel.org>
Signed-off-by: Rusty Russell <rusty@rustcorp.com.au>
17 years agolguest: make async_hcall() static
Adrian Bunk [Fri, 2 Nov 2007 15:43:10 +0000 (16:43 +0100)]
lguest: make async_hcall() static

async_hcall() can become static.

Signed-off-by: Adrian Bunk <bunk@kernel.org>
Signed-off-by: Rusty Russell <rusty@rustcorp.com.au>
17 years ago[S390] tod clock: announce clocksource as perfect
Christian Borntraeger [Mon, 5 Nov 2007 10:10:14 +0000 (11:10 +0100)]
[S390] tod clock: announce clocksource as perfect

The Time of Day clock is the standard time source for s390. It is
- monotonic
- allows very fast reading
- architecture guarantees at least microsecond stepping
- available as part of the architecture

We should announce the rate of tod as 400 to be in sync with the
description found in clocksource.h:
"400-499:Perfect The ideal clocksource. A must-use where available."

This change will prefer tod over less reliable clock sources.

Signed-off-by: Christian Borntraeger <borntraeger@de.ibm.com>
Signed-off-by: Martin Schwidefsky <schwidefsky@de.ibm.com>
17 years ago[S390] Rename "idle_time" attribute to "idle_time_us".
Heiko Carstens [Mon, 5 Nov 2007 10:10:13 +0000 (11:10 +0100)]
[S390] Rename "idle_time" attribute to "idle_time_us".

Seems that people prefer to have the unit encoded in the attribute
name. Also makes parsing easier.

Now we have:

# cat /sys/devices/system/cpu/cpu0/idle_time_us
131473592

instead of

# cat /sys/devices/system/cpu/cpu0/idle_time
131473592 us

Cc: Arjan van de Ven <arjan@infradead.org>
Signed-off-by: Heiko Carstens <heiko.carstens@de.ibm.com>
Signed-off-by: Martin Schwidefsky <schwidefsky@de.ibm.com>
17 years ago[S390] Fix priority mistakes in drivers/s390/cio/cmf.c
Roel Kluin [Mon, 5 Nov 2007 10:10:12 +0000 (11:10 +0100)]
[S390] Fix priority mistakes in drivers/s390/cio/cmf.c

Fixes priority mistakes similar to '!x & y'

Signed-off-by: Roel Kluin <12o3l@tiscali.nl>
Signed-off-by: Martin Schwidefsky <schwidefsky@de.ibm.com>
17 years ago[S390] Fix memory detection.
Heiko Carstens [Mon, 5 Nov 2007 10:10:11 +0000 (11:10 +0100)]
[S390] Fix memory detection.

Yet another patch in the countless series of memory detection fixes:
if the last area of the reported storage size is a hole the detection
loop will loop forever.
Just break chunk detection loop if its end is going to be larger than
reported storage size.

Signed-off-by: Heiko Carstens <heiko.carstens@de.ibm.com>
Signed-off-by: Martin Schwidefsky <schwidefsky@de.ibm.com>
17 years ago[S390] Fix compile on !CONFIG_SMP.
Heiko Carstens [Mon, 5 Nov 2007 10:10:10 +0000 (11:10 +0100)]
[S390] Fix compile on !CONFIG_SMP.

Commit fae8b22d3e3e3a3d317a7746493997af02a3f35c
"[S390] Add per-cpu idle time / idle count sysfs attributes" causes
a link error on !CONFIG_SMP.
Fix this by adding some #ifdef's. Real fix would be to cleanup the
code since we don't register a cpu on !CONFIG_SMP. But that would
be quite a big patch. For the time being this is good enough.

arch/s390/kernel/built-in.o: In function `do_monitor_call':
(.text+0x50d4): undefined reference to `per_cpu__s390_idle'
arch/s390/kernel/built-in.o: In function `cpu_idle':
(.text+0x518c): undefined reference to `per_cpu__s390_idle'
make: *** [.tmp_vmlinux1] Error 1

Signed-off-by: Heiko Carstens <heiko.carstens@de.ibm.com>
Signed-off-by: Martin Schwidefsky <schwidefsky@de.ibm.com>
17 years ago[S390] device_schedule_callback() for dcssblk.
Gerald Schaefer [Mon, 5 Nov 2007 10:10:09 +0000 (11:10 +0100)]
[S390] device_schedule_callback() for dcssblk.

Unregistering a device from within a device attribute handler leads to
a deadlock. Need to use device_schedule_callback() to unregister device
in error path.

Signed-off-by: Gerald Schaefer <geraldsc@de.ibm.com>
Signed-off-by: Martin Schwidefsky <schwidefsky@de.ibm.com>
17 years ago[S390] Fix smsgiucv init on no iucv machines
Christian Borntraeger [Mon, 5 Nov 2007 10:10:08 +0000 (11:10 +0100)]
[S390] Fix smsgiucv init on no iucv machines

smsgiucv is a driver that relies on iucv to work properly. If
iucv ans smsgiucv are compiled into the kernel and run on an
lpar the following scenario happens:
iucv is initialized early as a subsystem. It checks for z/VM and
returns with EPROTONOTSUPPORT. Later smsgiucv tries to run
driver_register with iucv_bus as bus. As this bus is not
initialized the driver core and list debugging issue several
warnings and oopses.

Solution is to let smsgiucv also check for z/VM and return
EPROTONOTSUPPORT as well.

Signed-off-by: Christian Borntraeger <borntraeger@de.ibm.com>
Signed-off-by: Martin Schwidefsky <schwidefsky@de.ibm.com>
17 years ago[S390] cio: use INIT_WORK to initialize struct work.
Heiko Carstens [Mon, 5 Nov 2007 10:10:07 +0000 (11:10 +0100)]
[S390] cio: use INIT_WORK to initialize struct work.

Use INIT_WORK to initialize struct work and don't initialize a
struct work partial by explicitly initializing its private structures.
Fixes the following lockdep bug because no key was assigned:

INFO: trying to register non-static key.
the code is fine but needs lockdep annotation.
turning off the locking correctness validator.
0000000001f07bb8 0000000001f07bf8 0000000000000002 0000000000000000
       0000000001f07c98 0000000001f07c10 0000000001f07c10 0000000000015406
       0000000000000000 0000000000000002 0000000000000000 0000000000000000
       0000000001f07bf8 000000000000000c 0000000001f07bf8 0000000001f07c68
       000000000039ae60 0000000000015406 0000000001f07bf8 0000000001f07c48
Call Trace:
([<0000000000015376>] show_trace+0xda/0x104)
 [<0000000000015460>] show_stack+0xc0/0xf8
 [<00000000000154c6>] dump_stack+0x2e/0x3c
 [<000000000006a71e>] __lock_acquire+0x47e/0x11a0
 [<000000000006b4f0>] lock_acquire+0xb0/0xd8
 [<00000000000555a6>] run_workqueue+0x1aa/0x24c
 [<00000000000556de>] worker_thread+0x96/0xf4
 [<000000000005c210>] kthread+0x90/0xb4
 [<000000000001947a>] kernel_thread_starter+0x6/0xc
 [<0000000000019474>] kernel_thread_starter+0x0/0xc

Signed-off-by: Heiko Carstens <heiko.carstens@de.ibm.com>
Signed-off-by: Martin Schwidefsky <schwidefsky@de.ibm.com>
17 years agolibata: Don't disable dipm with SET FEATURES
Kristen Carlson Accardi [Fri, 2 Nov 2007 23:37:08 +0000 (16:37 -0700)]
libata: Don't disable dipm with SET FEATURES

LPM seems to get hung up while disabling DIPM, and after thinking
about this a bit, I don't think we really need to manually disable it
anyway.

Signed-off-by: Kristen Carlson Accardi <kristen.c.accardi@intel.com>
Signed-off-by: Jeff Garzik <jeff@garzik.org>
17 years agolibata and bogus LBA48 drives
Geert Uytterhoeven [Mon, 29 Oct 2007 20:21:37 +0000 (21:21 +0100)]
libata and bogus LBA48 drives

A colleague noticed recent versions of Ubuntu no longer detect his 80 GB
ST380020ACE drive. This drive is special in that it advertises LBA48 support,
but has the lba_capacity_2 field set to zero (cfr.
http://lkml.org/lkml/2004/3/30/163).

Upon closer look, libata indeed doesn't seem to handle this case yet.
Below is an (untested) fix.

Signed-off-by: Jeff Garzik <jeff@garzik.org>
17 years agox86 setup: set %ebx == %ebp == %edi == 0 on protected mode entry
H. Peter Anvin [Mon, 5 Nov 2007 01:54:31 +0000 (17:54 -0800)]
x86 setup: set %ebx == %ebp == %edi == 0 on protected mode entry

In accordance with the newly formalized 32-bit boot protocol, set
%ebx == %ebp == %edi == 0 in order to support future extensions to the
protocol.

Signed-off-by: H. Peter Anvin <hpa@zytor.com>
17 years agox86 setup: add a near jump to serialize %cr0 on 386/486
H. Peter Anvin [Mon, 5 Nov 2007 01:50:12 +0000 (17:50 -0800)]
x86 setup: add a near jump to serialize %cr0 on 386/486

The 386 and 486 needs a jump immediately after setting %cr0 in order
to serialize the pipeline.

Signed-off-by: H. Peter Anvin <hpa@zytor.com>
17 years agoMerge branch 'drm-patches' of master.kernel.org:/pub/scm/linux/kernel/git/airlied...
Linus Torvalds [Mon, 5 Nov 2007 02:00:35 +0000 (18:00 -0800)]
Merge branch 'drm-patches' of /linux/kernel/git/airlied/drm-2.6

* 'drm-patches' of master.kernel.org:/pub/scm/linux/kernel/git/airlied/drm-2.6:
  drm/sis: missing mutex unlock in error path.
  radeon: set the address to access the GART table on the CPU side correctly