]> git.karo-electronics.de Git - linux-beck.git/log
linux-beck.git
16 years agoproc: remove races from proc_id_readdir()
Eric W. Biederman [Thu, 29 Nov 2007 00:21:26 +0000 (16:21 -0800)]
proc: remove races from proc_id_readdir()

Oleg noticed that the call of task_pid_nr_ns() in proc_pid_readdir
is racy with respect to tasks exiting.

After a bit of examination it also appears that the call itself
is completely unnecessary.

So to fix the problem this patch modifies next_tgid() to return
both a tgid and the task struct in question.

A structure is introduced to return these values because it is
slightly cleaner and easier to optimize, and the resulting code
is a little shorter.

Signed-off-by: "Eric W. Biederman" <ebiederm@xmission.com>
Cc: Oleg Nesterov <oleg@tv-sign.ru>
Cc: Alexey Dobriyan <adobriyan@gmail.com>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
16 years agowait_task_stopped(): don't use task_pid_nr_ns() lockless
Oleg Nesterov [Thu, 29 Nov 2007 00:21:24 +0000 (16:21 -0800)]
wait_task_stopped(): don't use task_pid_nr_ns() lockless

wait_task_stopped(WNOWAIT) does task_pid_nr_ns() without tasklist/rcu lock,
we can read an already freed memory.  Use the cached pid_t value.

Signed-off-by: Oleg Nesterov <oleg@tv-sign.ru>
Looks-good-to: Roland McGrath <roland@redhat.com>
Acked-by: Pavel Emelyanov <xemul@openvz.org>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
16 years agoproc: fix NULL ->i_fop oops
Alexey Dobriyan [Thu, 29 Nov 2007 00:21:23 +0000 (16:21 -0800)]
proc: fix NULL ->i_fop oops

proc_kill_inodes() can clear ->i_fop in the middle of vfs_readdir resulting in
NULL dereference during "file->f_op->readdir(file, buf, filler)".

The solution is to remove proc_kill_inodes() completely:

a) we don't have tricky modules implementing their tricky readdir hooks which
   could keeping this revoke from hell.

b) In a situation when module is gone but PDE still alive, standard
   readdir will return only "." and "..", because pde->next was cleared by
   remove_proc_entry().

c) the race proc_kill_inode() destined to prevent is not completely
   fixed, just race window made smaller, because vfs_readdir() is run
   without sb_lock held and without file_list_lock held.  Effectively,
   ->i_fop is cleared at random moment, which can't fix properly anything.

BUG: unable to handle kernel NULL pointer dereference at virtual address 00000018
printing eip: c1061205 *pdpt = 0000000005b22001 *pde = 0000000000000000
Oops: 0000 [#1] PREEMPT SMP
Modules linked in: foo af_packet ipv6 cpufreq_ondemand loop serio_raw sr_mod k8temp cdrom hwmon amd_rng
Pid: 2033, comm: find Not tainted (2.6.24-rc1-b1d08ac064268d0ae2281e98bf5e82627e0f0c56 #2)
EIP: 0060:[<c1061205>] EFLAGS: 00010246 CPU: 0
EIP is at vfs_readdir+0x47/0x74
EAX: c6b6a780 EBX: 00000000 ECX: c1061040 EDX: c5decf94
ESI: c6b6a780 EDI: fffffffe EBP: c9797c54 ESP: c5decf78
 DS: 007b ES: 007b FS: 00d8 GS: 0033 SS: 0068
Process find (pid: 2033, ti=c5dec000 task=c64bba90 task.ti=c5dec000)
Stack: c5decf94 c1061040 fffffff7 0805ffbc 00000000 c6b6a780 c1061295 0805ffbc
       00000000 00000400 00000000 00000004 0805ffbc 4588eff4 c5dec000 c10026ba
       00000004 0805ffbc 00000400 0805ffbc 4588eff4 bfdc6c70 000000dc 0000007b
Call Trace:
 [<c1061040>] filldir64+0x0/0xc5
 [<c1061295>] sys_getdents64+0x63/0xa5
 [<c10026ba>] sysenter_past_esp+0x5f/0x85
 =======================
Code: 49 83 78 18 00 74 43 8d 6b 74 bf fe ff ff ff 89 e8 e8 b8 c0 12 00 f6 83 2c 01 00 00 10 75 22 8b 5e 10 8b 4c 24 04 89 f0 8b 14 24 <ff> 53 18 f6 46 1a 04 89 c7 75 0b 8b 56 0c 8b 46 08 e8 c8 66 00
EIP: [<c1061205>] vfs_readdir+0x47/0x74 SS:ESP 0068:c5decf78

hch: "Nice, getting rid of this is a very good step formwards.
      Unfortunately we have another copy of this junk in
      security/selinux/selinuxfs.c:sel_remove_entries() which would need the
      same treatment."

Signed-off-by: Alexey Dobriyan <adobriyan@sw.ru>
Acked-by: Christoph Hellwig <hch@infradead.org>
Cc: Al Viro <viro@zeniv.linux.org.uk>
Cc: Stephen Smalley <sds@tycho.nsa.gov>
Cc: James Morris <jmorris@namei.org>
Cc: "Eric W. Biederman" <ebiederm@xmission.com>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
16 years agoPNP: increase the maximum number of resources
Zhao Yakui [Thu, 29 Nov 2007 00:21:21 +0000 (16:21 -0800)]
PNP: increase the maximum number of resources

On some systems the number of resources(IO,MEM) returnedy by PNP device is
greater than the PNP constant, for example motherboard devices.  It brings
that some resources can't be reserved and resource confilicts.  This will
cause PCI resources are assigned wrongly in some systems, and cause hang.
This is a regression since we deleted ACPI motherboard driver and use PNP
system driver.

[akpm@linux-foundation.org: fix text and coding-style a bit]
Signed-off-by: Li Shaohua <shaohua.li@intel.com>
Signed-off-by: Zhao Yakui <yakui.zhao@intel.com>
Cc: Bjorn Helgaas <bjorn.helgaas@hp.com>
Cc: Thomas Renninger <trenn@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 agoxen: mask _PAGE_PCD from ptes
Jeremy Fitzhardinge [Thu, 29 Nov 2007 00:21:20 +0000 (16:21 -0800)]
xen: mask _PAGE_PCD from ptes

_PAGE_PCD maps a page with caching disabled, which is typically used for
mapping harware registers.  Xen never allows it to be set on a mapping, and
unprivileged guests never need it since they can't see the real underlying
hardware.  However, some uncached mappings are made early when probing the
(non-existent) APIC, and its OK to mask off the PCD flag in these cases.

This became necessary because Xen started checking for this bit, rather
than silently masking it off.

Signed-off-by: Jeremy Fitzhardinge <jeremy@xensource.com>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
16 years agoUML: build fix
WANG Cong [Thu, 29 Nov 2007 00:21:16 +0000 (16:21 -0800)]
UML: build fix

include/asm-um/arch points to the non-existed include/asm-i386 directory.

Signed-off-by: WANG Cong <xiyou.wangcong@gmail.com>
Cc: Jeff Dike <jdike@karaya.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>
16 years agoFix boot problem with iSeries lacking hugepage support
Mel Gorman [Thu, 29 Nov 2007 00:21:13 +0000 (16:21 -0800)]
Fix boot problem with iSeries lacking hugepage support

Ordinarily the size of a pageblock is determined at compile-time based on the
hugepage size. On PPC64, the hugepage size is determined at runtime based on
what is supported by the machine. With legacy machines such as iSeries that
do not support hugepages, HPAGE_SHIFT is 0. This results in pageblock_order
being set to -PAGE_SHIFT and a crash results shortly afterwards.

This patch adds a function to select a sensible value for pageblock order by
default when HUGETLB_PAGE_SIZE_VARIABLE is set. It checks that HPAGE_SHIFT
is a sensible value before using the hugepage size; if it is not MAX_ORDER-1
is used.

This is a fix for 2.6.24.

Credit goes to Stephen Rothwell for identifying the bug and testing candidate
patches.  Additional credit goes to Andy Whitcroft for spotting a problem
with respects to IA-64 before releasing. Additional credit to David Gibson
for testing with the libhugetlbfs test suite.

Signed-off-by: Mel Gorman <mel@csn.ul.ie>
Tested-by: Stephen Rothwell <sfr@canb.auug.org.au>
Cc: Benjamin Herrenschmidt <benh@kernel.crashing.org>
Acked-by: Paul Mackerras <paulus@samba.org>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
16 years agops3fb: video memory size cleanups
Geert Uytterhoeven [Thu, 29 Nov 2007 00:21:11 +0000 (16:21 -0800)]
ps3fb: video memory size cleanups

- Limit video memory size to avoid crossing a 256 MiB boundary in IOIF space.
- Pass the actual amount of video memory used to lv1_gpu_memory_allocate().

Signed-off-by: Geert Uytterhoeven <Geert.Uytterhoeven@sonycom.com>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
16 years agops3: prefix all ps3-specific kernel modules with `ps3-'
Geert Uytterhoeven [Thu, 29 Nov 2007 00:21:11 +0000 (16:21 -0800)]
ps3: prefix all ps3-specific kernel modules with `ps3-'

- vuart.ko -> ps3-vuart.ko
- sys-manager.ko -> ps3-sys-manager.ko

Signed-off-by: Geert Uytterhoeven <Geert.Uytterhoeven@sonycom.com>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
16 years agoatmel_spi: label GPIOs better
David Brownell [Thu, 29 Nov 2007 00:21:10 +0000 (16:21 -0800)]
atmel_spi: label GPIOs better

Make the atmel_spi driver label GPIOs according to the device for which
they're acting as a chipselect.  This way the debugfs dump of gpio state is
more informative.

Signed-off-by: David Brownell <dbrownell@users.sourceforge.net>
Cc: Haavard Skinnemoen <hskinnemoen@atmel.com>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
16 years agoupdate checkpatch.pl to version 0.12
Andy Whitcroft [Thu, 29 Nov 2007 00:21:06 +0000 (16:21 -0800)]
update checkpatch.pl to version 0.12

This version brings a new terse output mode as well as many improvements to
the unary detection and bare type regcognition.  It also brings the usual
updates for false positives, though these seem to be slowing markedly
now that the unary detector is no longer just putting its finger in the
air and guessing.  Of note:

  - new --terse mode producing a single line per report
  - loosening of the block brace checks
  - new checks for enum/union/struch brace placements
  - hugely expanded "bare type" detection
  - checks for inline usage
  - better handling of already open comment blocks
  - handle patches which introduce or remove lines without newlines

Andy Whitcroft (19):
      Version: 0.12
      style fixes as spotted by checkpatch
      add a --terse options of a single line of output per report
      block brace checks should only apply for single line blocks
      all new bare type detector
      check spacing for open braces with enum, union and struct
      check for LINUX_VERSION_CODE
      macros definition bracketing checks need to ignore -ve context
      clean up the mail-back mode, -q et al
      expand possible type matching to declarations
      allow const and sparse annotations on possible types
      handle possible types as regular types everywhere
      prefer plain inline over __inline__ and __inline
      all new open comment detection
      fix up conditional extraction for if assignment checks
      add const to the possible type matcher
      unary checks: a for loop is a conditional too
      possible types: detect function pointer definitions
      handle missind newlines at end of file, report addition

Signed-off-by: Andy Whitcroft <apw@shadowen.org>
Acked-by: Ingo Molnar <mingo@elte.hu>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
16 years agoMerge git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/usb-2.6
Linus Torvalds [Thu, 29 Nov 2007 00:03:09 +0000 (16:03 -0800)]
Merge git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/usb-2.6

* git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/usb-2.6: (25 commits)
  USB: s3c2410 gadget: ensure vbus pin in input mode during read
  USB: s3c2410 gadget: allow sharing of vbus irq
  USB: s3c2410 gadget: Header move fixups
  USB: usb-storage: unusual_devs entry for JetFlash TS1GJF2A
  USB: fix up EHCI startup synchronization
  USB: make the microtek driver and HAL cooperate
  USB: uevent environment key fix
  USB: keep track of whether interface sysfs files exist
  USB: sierra: new product id
  USB HCD: avoid duplicate local_irq_disable()
  USB: mailing lists have changed
  USB: remove USB HUB entry from MAINTAINERS
  USB: fix directory references in usb/README
  USB: add support for an older firmware revision for the Nikon D200
  USB: FIx locks and urb->status in adutux (updated)
  USB: power-management documenation update
  USB: Fix signr comment in usbdevice_fs.h
  usbserial: fix inconsistent lock state
  USB: fix usbled disconnect read race #2
  USB: free memory when writing fails in usb/serial/mos7840.c
  ...

16 years agoMerge git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/pci-2.6
Linus Torvalds [Thu, 29 Nov 2007 00:02:50 +0000 (16:02 -0800)]
Merge git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/pci-2.6

* git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/pci-2.6:
  pci hotplug: kernel-doc fixes
  pci-aer: fix kernel-doc mistakes
  PCI: drivers/pci/pci-sysfs.c: Add missing pci_dev_put
  PCI: pcie portdriver: initialize returned value

16 years agoMerge git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/driver-2.6
Linus Torvalds [Wed, 28 Nov 2007 23:59:50 +0000 (15:59 -0800)]
Merge git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/driver-2.6

* git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/driver-2.6:
  sysfs: fix off-by-one error in fill_read_buffer()
  kobject: two typo fixes
  UIO: add UIO documentation target to DocBook Makefile
  UIO: fix up the UIO documentation
  create /sys/.../power when CONFIG_PM is set
  allow LEGACY_PTYS to be set to 0

16 years agopci hotplug: kernel-doc fixes
Randy Dunlap [Wed, 28 Nov 2007 17:04:30 +0000 (09:04 -0800)]
pci hotplug: kernel-doc fixes

acpiphp.h: not using kernel-doc, so change /** to /*
acpiphp_core.c: lots of kernel-doc cleanups
acpiphp_glue.c: lots of kernel-doc cleanups
acpiphp_ibm.c: lots of kernel-doc cleanups
cpqphp_core.c: lots of kernel-doc cleanups
cpqphp_ctrl.c: lots of kernel-doc cleanups
fakephp.c:  correct kernel-doc notation
pciehp_ctrl.c: correct kernel-doc notation
rpadlpar_core.c: correct function names & kernel-doc notation
rpaphp_core.c: correct kernel-doc notation
shpchp_ctrl.c: correct kernel-doc notation

Signed-off-by: Randy Dunlap <randy.dunlap@oracle.com>
Cc: Kristen Accardi <kristen.c.accardi@intel.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
16 years agopci-aer: fix kernel-doc mistakes
Randy Dunlap [Wed, 28 Nov 2007 17:04:23 +0000 (09:04 -0800)]
pci-aer: fix kernel-doc mistakes

Fix kernel-doc parameter names and ending block comments (change **/
to */).

Signed-off-by: Randy Dunlap <randy.dunlap@oracle.com>
Acked-by: Linas Vepstas <linas@linas.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
16 years agoPCI: drivers/pci/pci-sysfs.c: Add missing pci_dev_put
Julia Lawall [Tue, 20 Nov 2007 07:41:16 +0000 (08:41 +0100)]
PCI: drivers/pci/pci-sysfs.c: Add missing pci_dev_put

There should be a pci_dev_put when breaking out of a loop that iterates
over calls to pci_get_device and similar functions.

This was fixed using the following semantic patch.

// <smpl>
@@
identifier d;
type T;
expression e;
iterator for_each_pci_dev;
@@

T *d;
...
for_each_pci_dev(d)
  {... when != pci_dev_put(d)
       when != e = d
(
   return d;
|
+  pci_dev_put(d);
?  return ...;
)
...}
// </smpl>

Signed-off-by: Julia Lawall <julia@diku.dk>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
16 years agoPCI: pcie portdriver: initialize returned value
Linas Vepstas [Fri, 2 Nov 2007 20:14:28 +0000 (15:14 -0500)]
PCI: pcie portdriver: initialize returned value

The pcie protdrv status can be returned uninitialized,
if there are no children under a device. This leads to
bad responses downstream. Fix this.

Signed-off-by: Linas Vepstas <linas@austin.ibm.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
16 years agoUSB: s3c2410 gadget: ensure vbus pin in input mode during read
Ben Dooks [Mon, 19 Nov 2007 22:28:15 +0000 (22:28 +0000)]
USB: s3c2410 gadget: ensure vbus pin in input mode during read

Some CPUs in the S3C24XX series do not support readback of the
value of a pin when the pin has been configured to an IRQ.

Signed-off-by: Ben Dooks <ben-linux@fluff.org>
Acked-by: David Brownell <dbrownell@users.sourceforge.net>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
16 years agoUSB: s3c2410 gadget: allow sharing of vbus irq
Ben Dooks [Mon, 19 Nov 2007 22:28:14 +0000 (22:28 +0000)]
USB: s3c2410 gadget: allow sharing of vbus irq

If another driver wants to claim the vbus pin, say
to notify the user of an connect/disconnect then allow
the IRQ to be shared by specifiying IRQ_SHARED in the
flags.

Signed-off-by: Ben Dooks <ben-linux@fluff.org>
Acked-by: David Brownell <dbrownell@users.sourceforge.net>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
16 years agoUSB: s3c2410 gadget: Header move fixups
Ben Dooks [Mon, 19 Nov 2007 22:28:13 +0000 (22:28 +0000)]
USB: s3c2410 gadget: Header move fixups

Fixup the fallout from the arch moves earlier in the kernel
series.

Signed-off-by: Ben Dooks <ben-linux@fluff.org>
Acked-by: David Brownell <dbrownell@users.sourceforge.net>
16 years agoUSB: usb-storage: unusual_devs entry for JetFlash TS1GJF2A
Alan Stern [Mon, 26 Nov 2007 15:23:05 +0000 (10:23 -0500)]
USB: usb-storage: unusual_devs entry for JetFlash TS1GJF2A

This patch (as1018) adds an unusual_devs entry for the JetFlash
TS1GJF2A.  This device doesn't like read requests for more than 188
sectors.  Setting max_sectors down to 64 is overkill, but at least
it will work without errors.

For the torturous debugging history, see this thread:

http://marc.info/?t=118745764700005&r=1&w=2

Signed-off-by: Alan Stern <stern@rowland.harvard.edu>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
16 years agoUSB: fix up EHCI startup synchronization
David Brownell [Wed, 14 Nov 2007 00:22:30 +0000 (16:22 -0800)]
USB: fix up EHCI startup synchronization

A recent patch added software synchronization during EHCI startup,
so ports aren't switched away from the companion controllers after
resets have started.  This patch adds a short delay letting hardware
finish that port switching before any new resets begin ... so both
ends of that hardware race window are closed.

Signed-off-by: David Brownell <dbrownell@users.sourceforge.net>
Cc: Dave Miller <davem@davemloft.net>
Cc: Dely Sy <dely.l.sy@intel.com>
Cc: stable <stable@kernel.org>
Cc: Alan Stern <stern@rowland.harvard.edu>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
16 years agoUSB: make the microtek driver and HAL cooperate
Oliver Neukum [Mon, 12 Nov 2007 13:08:43 +0000 (14:08 +0100)]
USB: make the microtek driver and HAL cooperate

to make HAL like the microtek driver's devices the parent must be
correctly set.

Signed-off-by: Oliver Neukum <oneukum@suse.de>
Cc: stable <stable@kernel.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
16 years agoUSB: uevent environment key fix
Alan Stern [Tue, 6 Nov 2007 20:01:52 +0000 (15:01 -0500)]
USB: uevent environment key fix

This patch (as1010) was written by both Kay Sievers and me.  It solves
the problem of duplicated keys in USB uevent structures by refactoring
the uevent subroutines, taking advantage of the way the hotplug core
calls uevent handlers for the device's bus and for the device's type.
Keys needed for both USB-device and USB-interface events are added in
usb_uevent(), which is the bus handler.  Keys appropriate only for
USB-device or USB-interface events are added in usb_dev_uevent() or
usb_if_uevent() respectively, the type handlers.

In addition, unnecessary tests for NULL pointers are removed as are
duplicated debugging log statements.

Signed-off-by: Alan Stern <stern@rowland.harvard.edu>
Cc: Kay Sievers <kay.sievers@vrfy.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
16 years agoUSB: keep track of whether interface sysfs files exist
Alan Stern [Tue, 6 Nov 2007 16:43:42 +0000 (11:43 -0500)]
USB: keep track of whether interface sysfs files exist

This patch (as1009) solves the problem of multiple registrations for
USB sysfs files in a more satisfying way than the existing code.  It
simply adds a flag to keep track of whether or not the files have been
created; that way the files can be created or removed as needed.

Signed-off-by: Alan Stern <stern@rowland.harvard.edu>
16 years agoUSB: sierra: new product id
agilmore@wirelessbeehive.com [Tue, 20 Nov 2007 20:39:03 +0000 (13:39 -0700)]
USB: sierra: new product id

Per the maintainer of the usbserial/sierra.c driver, the patch below adds
a new id to the list of supported cards for the sierra driver. Tested and
working for me on Fedora 8, kernel 2.6.23 and on the more recent sierra.c
available in
http://www.sierrawireless.com/resources/support/Software/Linux/v.1.2.6b(kernel2.6.21).zip

Hardware is a MiniPCI card in a Lenovo T61p.

Signed-off-by: Andrew Gilmore <agilmore@wirelessbeehive.com>
Cc: Kevin Lloyd <linux@sierrawireless.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
16 years agoUSB HCD: avoid duplicate local_irq_disable()
Alan Stern [Wed, 21 Nov 2007 23:13:10 +0000 (15:13 -0800)]
USB HCD: avoid duplicate local_irq_disable()

Arnd Bergmann wrote:

usb_hcd_flush_endpoint() has a retry loop that starts with a spin_lock_irq(),
but only gives up the spinlock, not the irq_disable before jumping to the
rescan label.

Alan Stern:

I agree with your sentiment, but it would be better to solve this
problem without using local_irq_disable().

Signed-off-by: Alan Stern <stern@rowland.harvard.edu>
Cc: Arnd Bergmann <arnd@arndb.de>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
16 years agoUSB: mailing lists have changed
Greg Kroah-Hartman [Wed, 21 Nov 2007 22:16:59 +0000 (15:16 -0700)]
USB: mailing lists have changed

The linux-usb-devel and linux-usb-users are now hosted in the same list
at vger.kernel.org

Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
16 years agoUSB: remove USB HUB entry from MAINTAINERS
David Brownell [Wed, 7 Nov 2007 20:59:54 +0000 (12:59 -0800)]
USB: remove USB HUB entry from MAINTAINERS

Digging through old mail, I found a note about needing to remove the
separate entry for the USB HUB driver.  It's not been separable from
usbcore (host side!) since quite early in the 2.4 kernel series.
And Johanness certainly isn't involved with it any more.

Signed-off-by: David Brownell <dbrownell@users.sourceforge.net>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
16 years agoUSB: fix directory references in usb/README
Dirk Hohndel [Thu, 8 Nov 2007 00:27:23 +0000 (16:27 -0800)]
USB: fix directory references in usb/README

Another one in the "ok, this is trivial to fix" list... :-)

[PATCH] fix directory references in usb/README

Signed-off-by: Dirk Hohndel <hohndel@linux.intel.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
16 years agoUSB: add support for an older firmware revision for the Nikon D200
Mike Pagano [Thu, 1 Nov 2007 17:53:43 +0000 (10:53 -0700)]
USB: add support for an older firmware revision for the Nikon D200

This is a resubmission of the patch to upgrade the unusual_devs.h file to
support an older firmware revision of the Nikon D200. This patch includes the
requested /proc/bus/usb/devices information.

T:  Bus=01 Lev=01 Prnt=01 Port=09 Cnt=02 Dev#=  6 Spd=480 MxCh= 0
D:  Ver= 2.00 Cls=00(>ifc ) Sub=00 Prot=00 MxPS=64 #Cfgs=  1
P:  Vendor=04b0 ProdID=040f Rev= 1.00
S:  Manufacturer=NIKON
S:  Product=NIKON DSC D200
S:  SerialNumber=0000000
C:* #Ifs= 1 Cfg#= 1 Atr=c0 MxPwr=  2mA
I:* If#= 0 Alt= 0 #EPs= 2 Cls=08(stor.) Sub=06 Prot=50 Driver=usb-storage
E:  Ad=01(O) Atr=02(Bulk) MxPS= 512 Ivl=0ms
E:  Ad=82(I) Atr=02(Bulk) MxPS= 512 Ivl=0ms

Signed-off-by: Mike Pagano <mpagano@gentoo.org>
Signed-off-by: Phil Dibowitz <phil@ipom.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
16 years agoUSB: FIx locks and urb->status in adutux (updated)
Pete Zaitcev [Wed, 31 Oct 2007 22:59:30 +0000 (15:59 -0700)]
USB: FIx locks and urb->status in adutux (updated)

Two main issues fixed here are:
 - An improper use of in-struct lock to protect an open count
 - Use of urb status for -EINPROGRESS

Also, along the way:
 - Change usb_unlink_urb to usb_kill_urb. Apparently there's no need
   to use usb_unlink_urb whatsoever in this driver, and the old use of
   usb_kill_urb was outright racy (it unlinked and immediately freed).
 - Fix indentation in adu_write. Looks like it was damaged by a script.
 - Vitaly wants -EBUSY on multiply opens.
 - bInterval was taken from a wrong endpoint.

Signed-off-by: Pete Zaitcev <zaitcev@redhat.com>
Signed-off-by: Vitaliy Ivanov <vitalivanov@gmail.com>
Tested-by: Vitaliy Ivanov <vitalivanov@gmail.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
16 years agoUSB: power-management documenation update
Alan Stern [Fri, 16 Nov 2007 16:58:15 +0000 (11:58 -0500)]
USB: power-management documenation update

This patch (as1014) was partly written by Tilman Schmidt.  It
clarifies the USB power-management documentation by explaining that
when a disconnect occurs, a suspend method call might not be followed
by either a resume or a reset_resume call.

Signed-off-by: Alan Stern <stern@rowland.harvard.edu>
Signed-off-by: Tilman Schmidt <tilman@imap.cc>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
16 years agoUSB: Fix signr comment in usbdevice_fs.h
Phil Endecott [Mon, 29 Oct 2007 20:40:30 +0000 (20:40 +0000)]
USB: Fix signr comment in usbdevice_fs.h

This trivial documentation patch corrects a comment in usbdevice_fs.h; it
previously suggested that the signal would only be sent on error, but I am
told that it is sent on both successful and unsuccessful completion, and
that zero indicates that no signal should be sent.

Signed-off-by: Phil Endecott <spam_from_usb_devel@chezphil.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
16 years agousbserial: fix inconsistent lock state
Borislav Petkov [Sun, 28 Oct 2007 12:24:16 +0000 (13:24 +0100)]
usbserial: fix inconsistent lock state

In commit acd2a847e7fee7df11817f67dba75a2802793e5d usb_serial_generic_write()
disables interrupts when taking &port->lock which is also taken in
usb_serial_generic_read_bulk_callback() resulting in an inconsistent lock state
due to the latter not disabling interrupts on the local cpu. Fix that by
disabling interrupts in the latter call site also.

Signed-off-by: Borislav Petkov <bbpetkov@yahoo.de>
Acked-by: Jiri Kosina <jkosina@suse.cz>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
16 years agoUSB: fix usbled disconnect read race #2
Oliver Neukum [Sun, 28 Oct 2007 07:21:59 +0000 (08:21 +0100)]
USB: fix usbled disconnect read race #2

usbled has a race where show methods for attributes in sysfs can
follow a NULL pointer during disconnect. The correct ordering fixes
it.

Signed-off-by: Oliver Neukum <oneukum@suse.de>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
16 years agoUSB: free memory when writing fails in usb/serial/mos7840.c
Roel Kluin [Sat, 27 Oct 2007 01:36:37 +0000 (03:36 +0200)]
USB: free memory when writing fails in usb/serial/mos7840.c

Free buffer when writing ZLP_REG5 failed

Signed-off-by: Roel Kluin <12o3l@tiscali.nl>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
16 years agoUSB: Fix priority mistakes in drivers/usb/core/hub.c
Roel Kluin [Fri, 26 Oct 2007 21:54:35 +0000 (23:54 +0200)]
USB: Fix priority mistakes in drivers/usb/core/hub.c

Fixes priority mistakes similar to '!x & y'

Signed-off-by: Roel Kluin <12o3l@tiscali.nl>
Acked-by: Alan Stern <stern@rowland.harvard.edu>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
16 years agousb-storage: always set the allow_restart flag
Mauro Carvalho Chehab [Wed, 10 Oct 2007 20:29:02 +0000 (16:29 -0400)]
usb-storage: always set the allow_restart flag

This patch (as1000) sets the SCSI allow_restart flag for USB disk
devices.  In theory this should never hurt, and there definitely are
devices out there (such as the Seagate 250-GB external drive) which
need the flag to be set.

Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
Signed-off-by: Alan Stern <stern@rowland.harvard.edu>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
16 years agoUSB: pl2303: add support for Corega CG-USBRS232R
Magnus Damm [Thu, 8 Nov 2007 07:45:46 +0000 (16:45 +0900)]
USB: pl2303: add support for Corega CG-USBRS232R

pl2303: add support for Corega CG-USBRS232R

This patch adds support for Corega CG-USBRS232R Serial Adapters.

Signed-off-by: Magnus Damm <damm@igel.co.jp>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
16 years agoUSB: omap_udc build fix
David Brownell [Fri, 26 Oct 2007 20:42:18 +0000 (13:42 -0700)]
USB: omap_udc build fix

This fixes some build errors ... unclear how this got past earlier tests.

Signed-off-by: David Brownell <dbrownell@users.sourceforge.net>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
16 years agoUSB: fix USB_OHCI_HCD_SSB dependencies
Adrian Bunk [Sat, 27 Oct 2007 01:06:47 +0000 (03:06 +0200)]
USB: fix USB_OHCI_HCD_SSB dependencies

This patch fixes a bug introduced by
commit b22817b3c81cdb18ffe3d2debfee968731a8b5f4.

Signed-off-by: Adrian Bunk <bunk@kernel.org>
Cc: Ingo Molnar <mingo@elte.hu>
Cc: Michael Buesch <mb@bu3sch.de>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
16 years agosysfs: fix off-by-one error in fill_read_buffer()
Miao Xie [Wed, 21 Nov 2007 22:55:19 +0000 (14:55 -0800)]
sysfs: fix off-by-one error in fill_read_buffer()

I found that there is a off-by-one problem in the following code.

Version: 2.6.24-rc2
File: fs/sysfs/file.c:118-122
Function: fill_read_buffer
--------------------------------------------------------------------
count = ops->show(kobj, attr_sd->s_attr.attr, buffer->page);

sysfs_put_active_two(attr_sd);

BUG_ON(count > (ssize_t)PAGE_SIZE);
--------------------------------------------------------------------

Because according to the specification of the sysfs and the implement of
the show methods, the show methods return the number of bytes which would
be generated for the given input, excluding the trailing null.So if the
return value of the show methods equals PAGE_SIZE - 1, the buffer is full
in fact.  And if the return value equals PAGE_SIZE, the resulting string
was already truncated,or buffer overflow occurred.

This patch fixes an off-by-one error in fill_read_buffer.

Signed-off-by: Miao Xie <miaox@cn.fujitsu.com>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Acked-by: Tejun Heo <teheo@suse.de>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
16 years agokobject: two typo fixes
Johannes Berg [Mon, 5 Nov 2007 12:59:11 +0000 (13:59 +0100)]
kobject: two typo fixes

This fixes two typos from commit
34358c26a2c96b2a068dc44e0ac602106a466bce.

Signed-off-by: Johannes Berg <johannes@sipsolutions.net>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
16 years agoUIO: add UIO documentation target to DocBook Makefile
Hans J Koch [Mon, 26 Nov 2007 21:10:35 +0000 (22:10 +0100)]
UIO: add UIO documentation target to DocBook Makefile

Add the DocBook documentation for the Userspace I/O framework
to the Makefile.

Signed-off-by: Satoru Takeuchi <takeuchi_satoru@jp.fujitsu.com>
Signed-off-by: Hans J Koch <hjk@linutronix.de>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
16 years agoUIO: fix up the UIO documentation
Hans J Koch [Mon, 26 Nov 2007 21:03:29 +0000 (22:03 +0100)]
UIO: fix up the UIO documentation

Remove references to the old uio_dummy demo module from UIO documentation.
Add a small paragraph to make it clearer that UIO is not a universal driver
interface.

Signed-off-by: Hans J Koch <hjk@linutronix.de>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
16 years agocreate /sys/.../power when CONFIG_PM is set
Daniel Drake [Wed, 21 Nov 2007 22:55:18 +0000 (14:55 -0800)]
create /sys/.../power when CONFIG_PM is set

The CONFIG_SUSPEND changes in 2.6.23 caused a regression under certain
configuration conditions (SUSPEND=n, USB_AUTOSUSPEND=y) where all USB
device attributes in sysfs (idVendor, idProduct, ...) silently disappeared,
causing udev breakage and more.

The cause of this is that the /sys/.../power subdirectory is now only
created when CONFIG_PM_SLEEP is set, however, it should be created whenever
CONFIG_PM is set to handle the above situation.  The following patch fixes
the regression.

Signed-off-by: Daniel Drake <dsd@gentoo.org>
Acked-by: Rafael J. Wysocki <rjw@sisk.pl>
Cc: Alan Stern <stern@rowland.harvard.edu>
Cc: Kay Sievers <kay.sievers@vrfy.org>
Cc: stable <stable@kernel.org>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
16 years agoallow LEGACY_PTYS to be set to 0
Kay Sievers [Wed, 14 Nov 2007 22:39:42 +0000 (23:39 +0100)]
allow LEGACY_PTYS to be set to 0

The count of legacy pty devices can be set by a kernel commandline
parameter. For the distro kernel, we would like to disable all pty's
by default, but keep the opportunity to request devices on the kernel
commandline.

Signed-off-by: Kay Sievers <kay.sievers@vrfy.org>
Acked-by: Jean Delvare <jdelvare@suse.de>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
16 years agoprep_zero_page: remove bogus BUG_ON
Hugh Dickins [Wed, 28 Nov 2007 18:57:12 +0000 (18:57 +0000)]
prep_zero_page: remove bogus BUG_ON

2.6.11 gave __GFP_ZERO's prep_zero_page a bogus "highmem may have to wait"
assertion.  Presumably added under the misconception that clear_highpage
uses nonatomic kmap; but then and now it uses kmap_atomic, so no problem.

Signed-off-by: Hugh Dickins <hugh@veritas.com>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
16 years agotmpfs: restore missing clear_highpage
Hugh Dickins [Wed, 28 Nov 2007 18:55:10 +0000 (18:55 +0000)]
tmpfs: restore missing clear_highpage

tmpfs was misconverted to __GFP_ZERO in 2.6.11.  There's an unusual case in
which shmem_getpage receives the page from its caller instead of allocating.
We must cover this case by clear_highpage before SetPageUptodate, as before.

Signed-off-by: Hugh Dickins <hugh@veritas.com>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
16 years agoMerge git://git.kernel.org/pub/scm/linux/kernel/git/mingo/linux-2.6-sched
Linus Torvalds [Wed, 28 Nov 2007 18:58:22 +0000 (10:58 -0800)]
Merge git://git.kernel.org/pub/scm/linux/kernel/git/mingo/linux-2.6-sched

* git://git.kernel.org/pub/scm/linux/kernel/git/mingo/linux-2.6-sched:
  sched: clean up kernel/sched_stat.h
  sched: clean up overlong line in kernel/sched_debug.c
  sched: clean up, move __sched_text_start/end to sched.h
  sched: clean up sd_alloc_ctl_cpu_table() definition
  softlockup: fix false positives on CONFIG_NOHZ

16 years agovfs: coredumping fix
Ingo Molnar [Wed, 28 Nov 2007 12:59:18 +0000 (13:59 +0100)]
vfs: coredumping fix

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

only allow coredumping to the same uid that the coredumping
task runs under.

Signed-off-by: Ingo Molnar <mingo@elte.hu>
Acked-by: Alan Cox <alan@redhat.com>
Acked-by: Christoph Hellwig <hch@lst.de>
Acked-by: Al Viro <viro@ftp.linux.org.uk>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
16 years agosched: clean up kernel/sched_stat.h
Ingo Molnar [Wed, 28 Nov 2007 14:52:56 +0000 (15:52 +0100)]
sched: clean up kernel/sched_stat.h

clean up kernel/sched_stat.h.

Signed-off-by: Ingo Molnar <mingo@elte.hu>
16 years agosched: clean up overlong line in kernel/sched_debug.c
Ingo Molnar [Wed, 28 Nov 2007 14:52:56 +0000 (15:52 +0100)]
sched: clean up overlong line in kernel/sched_debug.c

clean up overlong line in kernel/sched_debug.c.

Signed-off-by: Ingo Molnar <mingo@elte.hu>
16 years agosched: clean up, move __sched_text_start/end to sched.h
Ingo Molnar [Wed, 28 Nov 2007 14:52:56 +0000 (15:52 +0100)]
sched: clean up, move __sched_text_start/end to sched.h

move __sched_text_start/end to sched.h. No code changed:

   text    data     bss     dec     hex filename
  26582    2310      28   28920    70f8 sched.o.before
  26582    2310      28   28920    70f8 sched.o.after

Signed-off-by: Ingo Molnar <mingo@elte.hu>
16 years agosched: clean up sd_alloc_ctl_cpu_table() definition
Ingo Molnar [Wed, 28 Nov 2007 14:52:56 +0000 (15:52 +0100)]
sched: clean up sd_alloc_ctl_cpu_table() definition

clean up sd_alloc_ctl_cpu_table() definition.

Signed-off-by: Ingo Molnar <mingo@elte.hu>
16 years agosoftlockup: fix false positives on CONFIG_NOHZ
Thomas Gleixner [Wed, 28 Nov 2007 14:52:56 +0000 (15:52 +0100)]
softlockup: fix false positives on CONFIG_NOHZ

David Miller reported soft lockup false-positives that trigger
on NOHZ due to CPUs idling for more than 10 seconds.

The solution is touch the softlockup watchdog when we return from
idle. (by definition we are not 'locked up' when we were idle)

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

Reported-by: David Miller <davem@davemloft.net>
Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
Signed-off-by: Ingo Molnar <mingo@elte.hu>
16 years agoMerge branch 'upstream-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/mfashe...
Linus Torvalds [Wed, 28 Nov 2007 02:54:17 +0000 (18:54 -0800)]
Merge branch 'upstream-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/mfasheh/ocfs2

* 'upstream-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/mfasheh/ocfs2:
  ocfs2: reverse inline-data truncate args
  ocfs2: Fix comparison in ocfs2_size_fits_inline_data()
  ocfs2: Remove bug statement in ocfs2_dentry_iput()
  [PATCH] ocfs2: Remove expensive bitmap scanning
  ocfs2: log valid inode # on bad inode
  ocfs2: Filter -ENOSPC in mlog_errno()
  [PATCH] fs/ocfs2: Add missing "space"
  ocfs2: Reset journal parameters after s_mount_opt update

16 years agoMerge branch 'for-linus' of git://www.linux-m32r.org/git/takata/linux-2.6_dev
Linus Torvalds [Wed, 28 Nov 2007 02:54:08 +0000 (18:54 -0800)]
Merge branch 'for-linus' of git://www.linux-m32r.org/git/takata/linux-2.6_dev

* 'for-linus' of git://www.linux-m32r.org/git/takata/linux-2.6_dev:
  m32r: Update sys_rt_sigsuspend
  m32r: Ignore warnings for unused syscalls
  m32r: Add missing syscalls

16 years agoocfs2: reverse inline-data truncate args
Mark Fasheh [Tue, 20 Nov 2007 19:56:39 +0000 (11:56 -0800)]
ocfs2: reverse inline-data truncate args

ocfs2_truncate() and ocfs2_remove_inode_range() had reversed their "set
i_size" arguments to ocfs2_truncate_inline(). Fix things so that truncate
sets i_size, and punching a hole ignores it.

This exposed a problem where punching a hole in an inline-data file wasn't
updating the page cache, so fix that too.

Signed-off-by: Mark Fasheh <mark.fasheh@oracle.com>
16 years agoocfs2: Fix comparison in ocfs2_size_fits_inline_data()
Mark Fasheh [Tue, 20 Nov 2007 19:48:41 +0000 (11:48 -0800)]
ocfs2: Fix comparison in ocfs2_size_fits_inline_data()

This was causing us to prematurely push out inline data by one byte.

Signed-off-by: Mark Fasheh <mark.fasheh@oracle.com>
16 years agoocfs2: Remove bug statement in ocfs2_dentry_iput()
Mark Fasheh [Thu, 8 Nov 2007 00:35:14 +0000 (16:35 -0800)]
ocfs2: Remove bug statement in ocfs2_dentry_iput()

The existing bug statement didn't take into account unhashed dentries which
might not have a cluster lock on them. This could happen if a node exporting
the file system via NFS is rebooted, re-exported to nfs clients and then
unmounted. It's fine in this case to not have a dentry cluster lock.

Just remove the bug statement and replace it with an error print, which
does the proper checks. Though we want to know if something has happened
which might have prevented a cluster lock from being created, it's
definitely not necessary to panic the machine for this.

Signed-off-by: Mark Fasheh <mark.fasheh@oracle.com>
16 years ago[PATCH] ocfs2: Remove expensive bitmap scanning
Jan Kara [Tue, 13 Nov 2007 18:59:33 +0000 (19:59 +0100)]
[PATCH] ocfs2: Remove expensive bitmap scanning

Enable expensive bitmap scanning only if DEBUG option is enabled.
The bitmap scanning quite loads the CPU and on my machine the write
throughput of dd if=/dev/zero of=/ocfs2/file bs=1M count=500 conv=sync
improves from 37 MB/s to 45.4 MB/s in local mode...

Signed-off-by: Jan Kara <jack@suse.cz>
Signed-off-by: Mark Fasheh <mark.fasheh@oracle.com>
16 years agoocfs2: log valid inode # on bad inode
Mark Fasheh [Tue, 20 Nov 2007 02:40:16 +0000 (18:40 -0800)]
ocfs2: log valid inode # on bad inode

If the inode block isn't valid then we don't want to print the value from
that, instead print the block number which was passed in (which should
always be correct). Also, turn this into a debug print for now - folks who
hit an actual problem always have other logs indicating what the source is.

Signed-off-by: Mark Fasheh <mark.fasheh@oracle.com>
16 years agoocfs2: Filter -ENOSPC in mlog_errno()
Mark Fasheh [Tue, 20 Nov 2007 02:31:17 +0000 (18:31 -0800)]
ocfs2: Filter -ENOSPC in mlog_errno()

It's almost never worth printing in that situation and we keep forgetting to
manually filter it out.

Signed-off-by: Mark Fasheh <mark.fasheh@oracle.com>
16 years ago[PATCH] fs/ocfs2: Add missing "space"
Joe Perches [Tue, 20 Nov 2007 01:53:34 +0000 (17:53 -0800)]
[PATCH] fs/ocfs2: Add missing "space"

Signed-off-by: Joe Perches <joe@perches.com>
Signed-off-by: Mark Fasheh <mark.fasheh@oracle.com>
16 years agoocfs2: Reset journal parameters after s_mount_opt update
Mark Fasheh [Wed, 7 Nov 2007 22:21:45 +0000 (14:21 -0800)]
ocfs2: Reset journal parameters after s_mount_opt update

Right now we're just setting them from the existing parameters, not the
new ones that a remount specified.

Signed-off-by: Mark Fasheh <mark.fasheh@oracle.com>
16 years agoMerge git://git.kernel.org/pub/scm/linux/kernel/git/bart/ide-2.6
Linus Torvalds [Tue, 27 Nov 2007 22:29:03 +0000 (14:29 -0800)]
Merge git://git.kernel.org/pub/scm/linux/kernel/git/bart/ide-2.6

* git://git.kernel.org/pub/scm/linux/kernel/git/bart/ide-2.6:
  ide-scsi: use print_hex_dump from <linux/kernel.h>
  ide: More TSST drives with broken cable detection
  ali14xx: constify __initdata
  ide: remove bogus ide_fix_driveid() comment
  trm290: remove bogus init_hwif_trm290() comment
  piix: add HP compaq laptop to short cable list
  alim15x3: add Mitac 8317 and derivatives to ali_cable_override()
  ide: add TORiSAN model: CD-ROM CDR_U200 fw: 1.09 to DMA blacklist
  amd74xx: arm hack
  drivers/ide: Add missing "space"
  ide-cris: don't override ide_register_hw() result
  ide: move CONFIG_IDE_ETRAX to drivers/ide/Kconfig
  ide: add CONFIG_IDE_H8300 config option
  ide/Kconfig: fix mpc8xx host driver dependencies
  macide/q40ide: add missing __init tag to {macide,q40ide}_init()
  aec62xx: Fix kernel oops in driver's probe function
  ide: skip ide_wait_not_busy() on noprobe-disks
  siimage: remove resetproc() method
  ide: don't set PIO mode on pre-EIDE drives
  sis5513.c: Add Packard Bell EasyNote K5305 to laptops

16 years agoMerge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/avi/kvm
Linus Torvalds [Tue, 27 Nov 2007 22:27:56 +0000 (14:27 -0800)]
Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/avi/kvm

* 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/avi/kvm:
  KVM: SVM: Fix FPU leak while emulating clts
  KVM: SVM: Unload guest fpu on vcpu_put()
  KVM: x86 emulator: Use emulator_write_emulated and not emulator_write_std
  KVM: x86 emulator: fix the saving of of the eip value
  KVM: x86 emulator: fix JMP_REL

16 years agoMerge branch 'for-linus' of git://git.kernel.dk/linux-2.6-block
Linus Torvalds [Tue, 27 Nov 2007 22:21:19 +0000 (14:21 -0800)]
Merge branch 'for-linus' of git://git.kernel.dk/linux-2.6-block

* 'for-linus' of git://git.kernel.dk/linux-2.6-block:
  scatterlist: add more safeguards
  Revert "ll_rw_blk: temporarily enable max_segments tweaking"
  mmc: Add missing sg_init_table() call
  block: Fix memory leak in alloc_disk_node()
  alpha: fix sg_page breakage
  blktrace: Make sure BLKTRACETEARDOWN does the full cleanup.

16 years agoMerge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/roland...
Linus Torvalds [Tue, 27 Nov 2007 22:20:51 +0000 (14:20 -0800)]
Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/roland/infiniband

* 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/roland/infiniband:
  IB/iser: Add missing counter increment in iser_data_buf_aligned_len()
  IB/ehca: Fix static rate regression
  mlx4_core: Fix state check in mlx4_qp_modify()
  IB/ipath: Normalize error return codes for posting work requests
  IB/ipath: Fix offset returned to ibv_modify_srq()
  IB/ipath: Fix error path in QP creation
  IB/ipath: Fix offset returned to ibv_resize_cq()

16 years agoMerge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/dtor/input
Linus Torvalds [Tue, 27 Nov 2007 22:20:35 +0000 (14:20 -0800)]
Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/dtor/input

* 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/dtor/input:
  Input: adds the context menu key (HUT GenDesc 0x84)
  Input: add definitions for frame forward and frame back keys
  Input: bf54x-keys - keypad does not exist on BF544 parts
  Input: gpio-keys - request and configure GPIOs
  Input: i8042 - add i8042.noloop quirk for MS Virtual Machine
  Sonypi: use synchronize_irq instead of sycnronize_sched
  sonypi: fit input devices into sysfs tree
  sony-laptop: fit input devices into sysfs tree

16 years agoide-scsi: use print_hex_dump from <linux/kernel.h>
Denis Cheng [Tue, 27 Nov 2007 20:35:58 +0000 (21:35 +0100)]
ide-scsi: use print_hex_dump from <linux/kernel.h>

these utilities implemented in lib/hexdump.c are more handy, please use this.

Bart:
- s/KERN_DEBUG/KERN_CONT/ as pointed out by Randy
- s/DUMP_PREFIX_OFFSET/DUMP_PREFIX_NONE/
- don't include ASCII dump
- respect 80-columns limit

Signed-off-by: Denis Cheng <crquan@gmail.com>
Cc: Randy Dunlap <randy.dunlap@oracle.com>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Bartlomiej Zolnierkiewicz <bzolnier@gmail.com>
16 years agoide: More TSST drives with broken cable detection
Peter Missel [Tue, 27 Nov 2007 20:35:57 +0000 (21:35 +0100)]
ide: More TSST drives with broken cable detection

Add more TSST (Toshiba/Samsung) drives to the
'broken cable detection' blacklist.

Signed-off-by: Peter Missel (peter.missel@onlinehome.de)
Cc: Alan Cox <alan@redhat.com>
Signed-off-by: Bartlomiej Zolnierkiewicz <bzolnier@gmail.com>
16 years agoali14xx: constify __initdata
Bartlomiej Zolnierkiewicz [Tue, 27 Nov 2007 20:35:57 +0000 (21:35 +0100)]
ali14xx: constify __initdata

Acked-by: Sergei Shtylyov <sshtylyov@ru.mvista.com>
Signed-off-by: Bartlomiej Zolnierkiewicz <bzolnier@gmail.com>
16 years agoide: remove bogus ide_fix_driveid() comment
Bartlomiej Zolnierkiewicz [Tue, 27 Nov 2007 20:35:57 +0000 (21:35 +0100)]
ide: remove bogus ide_fix_driveid() comment

Acked-by: Sergei Shtylyov <sshtylyov@ru.mvista.com>
Signed-off-by: Bartlomiej Zolnierkiewicz <bzolnier@gmail.com>
16 years agotrm290: remove bogus init_hwif_trm290() comment
Bartlomiej Zolnierkiewicz [Tue, 27 Nov 2007 20:35:56 +0000 (21:35 +0100)]
trm290: remove bogus init_hwif_trm290() comment

Acked-by: Sergei Shtylyov <sshtylyov@ru.mvista.com>
Signed-off-by: Bartlomiej Zolnierkiewicz <bzolnier@gmail.com>
16 years agopiix: add HP compaq laptop to short cable list
Bartlomiej Zolnierkiewicz [Tue, 27 Nov 2007 20:35:56 +0000 (21:35 +0100)]
piix: add HP compaq laptop to short cable list

Port of Jeff's libata commit 54174db300ee1bac632d62e4ac37fe02e47d1f18
("[libata] ata_piix: add HP compaq laptop to short cable list").

Cc: Jeff Garzik <jeff@garzik.org>
Acked-by: Sergei Shtylyov <sshtylyov@ru.mvista.com>
Signed-off-by: Bartlomiej Zolnierkiewicz <bzolnier@gmail.com>
16 years agoalim15x3: add Mitac 8317 and derivatives to ali_cable_override()
Bartlomiej Zolnierkiewicz [Tue, 27 Nov 2007 20:35:56 +0000 (21:35 +0100)]
alim15x3: add Mitac 8317 and derivatives to ali_cable_override()

Port of Alan's patch for pata_ali.c.

Cc: Alan Cox <alan@redhat.com>
Acked-by: Sergei Shtylyov <sshtylyov@ru.mvista.com>
Signed-off-by: Bartlomiej Zolnierkiewicz <bzolnier@gmail.com>
16 years agoide: add TORiSAN model: CD-ROM CDR_U200 fw: 1.09 to DMA blacklist
Bartlomiej Zolnierkiewicz [Tue, 27 Nov 2007 20:35:56 +0000 (21:35 +0100)]
ide: add TORiSAN model: CD-ROM CDR_U200 fw: 1.09 to DMA blacklist

Based on the report from snowbat@gmail.com.

Fixes kernel bugzilla bug #9195.

Tested-by: snowbat@gmail.com
Acked-by: Sergei Shtylyov <sshtylyov@ru.mvista.com>
Signed-off-by: Bartlomiej Zolnierkiewicz <bzolnier@gmail.com>
16 years agoamd74xx: arm hack
Andrew Morton [Tue, 27 Nov 2007 20:35:56 +0000 (21:35 +0100)]
amd74xx: arm hack

drivers/ide/pci/amd74xx.c: In function `init_hwif_amd74xx':
drivers/ide/pci/amd74xx.c:387: error: implicit declaration of function `pci_get_legacy_ide_irq'

Cc: Russell King <rmk@arm.linux.org.uk>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Bartlomiej Zolnierkiewicz <bzolnier@gmail.com>
16 years agodrivers/ide: Add missing "space"
Joe Perches [Tue, 27 Nov 2007 20:35:55 +0000 (21:35 +0100)]
drivers/ide: Add missing "space"

Signed-off-by: Joe Perches <joe@perches.com>
Signed-off-by: Bartlomiej Zolnierkiewicz <bzolnier@gmail.com>
16 years agoide-cris: don't override ide_register_hw() result
Bartlomiej Zolnierkiewicz [Tue, 27 Nov 2007 20:35:55 +0000 (21:35 +0100)]
ide-cris: don't override ide_register_hw() result

* Don't override ide_register_hw() result and check if there is a hwif
  available to use.

* MAX_HWIFS is user configurable nowadays so replace it by hard-coded value.

* Remove the comment about ide_hwifs[].

Acked-by: Mikael Starvik <starvik@axis.com>
Acked-by: Sergei Shtylyov <sshtylyov@ru.mvista.com>
Signed-off-by: Bartlomiej Zolnierkiewicz <bzolnier@gmail.com>
16 years agoide: move CONFIG_IDE_ETRAX to drivers/ide/Kconfig
Bartlomiej Zolnierkiewicz [Tue, 27 Nov 2007 20:35:55 +0000 (21:35 +0100)]
ide: move CONFIG_IDE_ETRAX to drivers/ide/Kconfig

* Move ETRAX_IDE and friends from arch/cris/arch-{v10,v32}/drivers/Kconfig
  to drivers/ide/Kconfig.

* Don't force selecting ide-disk and ide-cd device drivers
  (please handle this through defconfig if necessary).

* Make ETRAX_IDE depend on BROKEN for the time being
  (it doesn't even compile currently).

Cc: Mikael Starvik <starvik@axis.com>
Acked-by: Sergei Shtylyov <sshtylyov@ru.mvista.com>
Signed-off-by: Bartlomiej Zolnierkiewicz <bzolnier@gmail.com>
16 years agoide: add CONFIG_IDE_H8300 config option
Bartlomiej Zolnierkiewicz [Tue, 27 Nov 2007 20:35:54 +0000 (21:35 +0100)]
ide: add CONFIG_IDE_H8300 config option

Add a separate config option for ide-8300 host driver instead of depending
on CONFIG_H8300.

This change is a preparation for the future changes and also allows ide-h8300
to be disabled if needed.

Acked-by: Sergei Shtylyov <sshtylyov@ru.mvista.com>
Signed-off-by: Bartlomiej Zolnierkiewicz <bzolnier@gmail.com>
16 years agoide/Kconfig: fix mpc8xx host driver dependencies
Bartlomiej Zolnierkiewicz [Tue, 27 Nov 2007 20:35:54 +0000 (21:35 +0100)]
ide/Kconfig: fix mpc8xx host driver dependencies

Only LWMON, IVMS8, IVML24 and TQM8xxL platforms have the needed
defines (IDE0_BASE_OFFSET and friends) in the platform header file.

Acked-by: Sergei Shtylyov <sshtylyov@ru.mvista.com>
Signed-off-by: Bartlomiej Zolnierkiewicz <bzolnier@gmail.com>
16 years agomacide/q40ide: add missing __init tag to {macide,q40ide}_init()
Bartlomiej Zolnierkiewicz [Tue, 27 Nov 2007 20:35:54 +0000 (21:35 +0100)]
macide/q40ide: add missing __init tag to {macide,q40ide}_init()

Acked-by: Sergei Shtylyov <sshtylyov@ru.mvista.com>
Signed-off-by: Bartlomiej Zolnierkiewicz <bzolnier@gmail.com>
16 years agoaec62xx: Fix kernel oops in driver's probe function
Aleksandar Radovanovic [Tue, 27 Nov 2007 20:35:53 +0000 (21:35 +0100)]
aec62xx: Fix kernel oops in driver's probe function

Add pci_enable_device() to aec62xx probe function
before doing any I/O.

Original probe function tries to read from device's
PCI region 4 before calling ide_setup_pci_device().
Since the device is not enabled at this point,
on machines that have no firmware PCI initialization
(e.g. ASUS WL-700gE router), corresponding PCI BAR
is 0 and the following inb() causes a kernel oops.

Signed-off-by: Aleksandar Radovanovic <biblbroks@sezampro.yu>
Cc: Linus Torvalds <torvalds@linux-foundation.org>,
Signed-off-by: Bartlomiej Zolnierkiewicz <bzolnier@gmail.com>
16 years agoide: skip ide_wait_not_busy() on noprobe-disks
Jonas Stare [Tue, 27 Nov 2007 20:35:53 +0000 (21:35 +0100)]
ide: skip ide_wait_not_busy() on noprobe-disks

There is a problem in some hardware where the kernel will stall for
35 seconds waiting for disks that don't exist. This patch will skip
waiting for the BSY-bit on IDE drives to go away if you set "hdx=noprobe"
as a kernel option and the disk is not marked as 'present' (like when
you set the geometry by hand).

If no noprobe-option is set the code will work (more or less) as the
original but if set the code will skip the ide_wait_not_busy() for
that drive. Even if there would be a drive there and it is still busy
afterwards it should not matter since it isn't probed for later.

The code also honors the MAX_DRIVES variable instead of assuming that
there will be two harddrives on the bus.

Bart: minor cleanups

Signed-off-by: Jonas Stare <jonas.stare@purplescout.se>
CC: Andrew Morton <akpm@linux-foundation.org>,
Cc: Linus Torvalds <torvalds@linux-foundation.org>
Cc: Alan Cox <alan@lxorguk.ukuu.org.uk>
Cc: Benjamin Herrenschmidt <benh@kernel.crashing.org>
Signed-off-by: Bartlomiej Zolnierkiewicz <bzolnier@gmail.com>
16 years agosiimage: remove resetproc() method
Sergei Shtylyov [Tue, 27 Nov 2007 20:35:53 +0000 (21:35 +0100)]
siimage: remove resetproc() method

The intent behind siimage_reset() was probably to hard reset the interface and
the SATA PHY but as the code writes to two reserved bits instead, it obviously
has been ineffective from the start. So, just remove it.

Signed-off-by: Sergei Shtylyov <sshtylyov@ru.mvista.com>
Cc: Alan Cox <alan@lxorguk.ukuu.org.uk>
Signed-off-by: Bartlomiej Zolnierkiewicz <bzolnier@gmail.com>
16 years agoide: don't set PIO mode on pre-EIDE drives
Sergei Shtylyov [Tue, 27 Nov 2007 20:35:52 +0000 (21:35 +0100)]
ide: don't set PIO mode on pre-EIDE drives

Fix handling of the PIO modes for the pre-EIDE drives that did not support
the PIO Flow Control Transfer Mode value (00001 nnn) of the Set Transfer Mode
feature by skipping the actual mode programming.

Signed-off-by: Sergei Shtylyov <sshtylyov@ru.mvista.com>
Signed-off-by: Bartlomiej Zolnierkiewicz <bzolnier@gmail.com>
16 years agosis5513.c: Add Packard Bell EasyNote K5305 to laptops
Gabriel Craciunescu [Tue, 27 Nov 2007 20:35:52 +0000 (21:35 +0100)]
sis5513.c: Add Packard Bell EasyNote K5305 to laptops

With newer kernels HDD in my old laptop is limited to UDMA 33.
With this patch I get UDMA 100 again.

Signed-off-by: Gabriel Craciunescu <nix.or.die@googlemail.com>
Signed-off-by: Bartlomiej Zolnierkiewicz <bzolnier@gmail.com>
16 years agom32r: Update sys_rt_sigsuspend
Hirokazu Takata [Wed, 12 Sep 2007 08:51:35 +0000 (17:51 +0900)]
m32r: Update sys_rt_sigsuspend

Update sys_rt_sigsuspend() of arch/m32r/signal.c.
This modification is derived from generic one of kernel/signal.c.

Signed-off-by: Hirokazu Takata <takata@linux-m32r.org>
16 years agom32r: Ignore warnings for unused syscalls
Hirokazu Takata [Thu, 13 Sep 2007 09:31:34 +0000 (18:31 +0900)]
m32r: Ignore warnings for unused syscalls

checksyscalls.sh reports warnings for missing syscalls.
But, on m32r, some legacy syscalls were removed elaborately.

This patch kills warnings for obsolete syscalls, which are
no longer used in the m32r kernel.

Signed-off-by: Hirokazu Takata <takata@linux-m32r.org>
16 years agom32r: Add missing syscalls
Hirokazu Takata [Wed, 12 Sep 2007 08:46:53 +0000 (17:46 +0900)]
m32r: Add missing syscalls

Add the following 39 syscalls for m32r:
  sys_add_key, sys_request_key, sys_keyctl, sys_ioprio_set,
  sys_ioprio_get, sys_inotify_init, sys_inotify_add_watch,
  sys_inotify_rm_watch, sys_migrate_pages, sys_openat,
  sys_mkdirat, sys_mknodat, sys_fchownat, sys_futimesat,
  sys_fstatat64, sys_unlinkat, sys_renameat, sys_linkat,
  sys_symlinkat, sys_readlinkat, sys_fchmodat, sys_faccessat,
  sys_pselect6, sys_ppoll, sys_unshare, sys_set_robust_list,
  sys_get_robust_list, sys_splice, sys_sync_file_range,
  sys_tee, sys_vmsplice, sys_move_pages, sys_getcpu, sys_epoll_pwait,
  sys_utimensat, sys_signalfd, sys_timerfd, sys_eventfd, sys_fallocate

Signed-off-by: Hirokazu Takata <takata@linux-m32r.org>
16 years agoKVM: SVM: Fix FPU leak while emulating clts
Amit Shah [Mon, 19 Nov 2007 15:57:35 +0000 (17:57 +0200)]
KVM: SVM: Fix FPU leak while emulating clts

The clts code didn't use set_cr0 properly, so our lazy FPU
processing wasn't being done by the clts instruction at all.

(this isn't called on Intel as the hardware does the decode for us)

Signed-off-by: Amit Shah <amit.shah@qumranet.com>
Signed-off-by: Avi Kivity <avi@qumranet.com>
16 years agoKVM: SVM: Unload guest fpu on vcpu_put()
Avi Kivity [Tue, 27 Nov 2007 13:33:10 +0000 (15:33 +0200)]
KVM: SVM: Unload guest fpu on vcpu_put()

Not unloading the guest fpu can cause fpu leaks from guest to guest (or host
to guest).

Signed-off-by: Avi Kivity <avi@qumranet.com>
16 years agoKVM: x86 emulator: Use emulator_write_emulated and not emulator_write_std
Amit Shah [Sun, 18 Nov 2007 16:55:40 +0000 (22:25 +0530)]
KVM: x86 emulator: Use emulator_write_emulated and not emulator_write_std

emulator_write_std() is not implemented, and calling write_emulated should
work just as well in place of write_std.

Fixes emulator failures with the push r/m instruction.

Signed-off-by: Amit Shah <amit.shah@qumranet.com>
Signed-off-by: Avi Kivity <avi@qumranet.com>
16 years agoKVM: x86 emulator: fix the saving of of the eip value
Izik Eidus [Sun, 11 Nov 2007 12:46:34 +0000 (14:46 +0200)]
KVM: x86 emulator: fix the saving of of the eip value

this make sure that no matter what is the operand size,
all the value of the eip will be saved

Signed-off-by: Izik Eidus <izike@qumranet.com>
Signed-off-by: Avi Kivity <avi@qumranet.com>