firefly-linux-kernel-4.4.55.git
18 years agoRevert "[PATCH] fix Data Acess error in dup_fd"
Linus Torvalds [Tue, 14 Nov 2006 23:20:51 +0000 (15:20 -0800)]
Revert "[PATCH] fix Data Acess error in dup_fd"

This reverts commit 0130b0b32ee53dc7add773fcea984f6a26ef1da3.

Sergey Vlasov points out (and Vadim Lobanov concurs) that the bug it was
supposed to fix must be some unrelated memory corruption, and the "fix"
actually causes more problems:

  "However, the new code does not look safe in all cases.  If some other
   task has opened more files while dup_fd() released oldf->file_lock, the
   new code will update open_files to the new larger value.  But newf was
   allocated with the old smaller value of open_files, therefore subsequent
   accesses to newf may try to write into unallocated memory."

so revert it.

Cc: Sharyathi Nagesh <sharyath@in.ibm.com>
Cc: Sergey Vlasov <vsu@altlinux.ru>
Cc: Vadim Lobanov <vlobanov@speakeasy.net>
Cc: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
18 years agoMerge branch 'upstream-linus' of master.kernel.org:/pub/scm/linux/kernel/git/jgarzik...
Linus Torvalds [Tue, 14 Nov 2006 23:15:31 +0000 (15:15 -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: fix double-completion on error
  [PATCH] pata_artop: fix "& (1 >>" typo
  [PATCH] hpt37x: Check the enablebits

18 years ago[PATCH] hugetlb: fix error return for brk() entering a hugepage region
Hugh Dickins [Tue, 14 Nov 2006 13:43:38 +0000 (13:43 +0000)]
[PATCH] hugetlb: fix error return for brk() entering a hugepage region

Commit cb07c9a1864a8eac9f3123e428100d5b2a16e65a causes the wrong return
value.  is_hugepage_only_range() is a boolean, so we should return
-EINVAL rather than 1.

Also - we can use "mm" instead of looking up "current->mm" again.

Signed-off-by: Hugh Dickins <hugh@veritas.com>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
18 years ago[PATCH] cpqarray: fix iostat
Jens Axboe [Tue, 14 Nov 2006 11:36:45 +0000 (12:36 +0100)]
[PATCH] cpqarray: fix iostat

cpqarray needs to call disk_stat_add() for iostat to work.

Signed-off-by: Jens Axboe <jens.axboe@oracle.com>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
18 years ago[PATCH] cciss: fix iostat
Jens Axboe [Tue, 14 Nov 2006 11:36:03 +0000 (12:36 +0100)]
[PATCH] cciss: fix iostat

cciss needs to call disk_stat_add() for iostat to work.

Signed-off-by: Jens Axboe <jens.axboe@oracle.com>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
18 years ago[PATCH] libata: Convert from module_init to subsys_initcall
Brian King [Mon, 13 Nov 2006 22:32:36 +0000 (16:32 -0600)]
[PATCH] libata: Convert from module_init to subsys_initcall

When building a monolithic kernel, the load order of drivers does not
work for SAS libata users, resulting in a kernel oops.

Convert libata to use subsys_initcall instead of module_init, which
ensures that libata gets loaded before any LLDD.

This is the same thing that scsi core does to solve the problem.  The
load order problem was observed on ipr SAS adapters and should exist for
other SAS users as well.

Signed-off-by: Brian King <brking@us.ibm.com>
Acked-by: Jeff Garzik <jgarzik@pobox.com>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
18 years ago[PATCH] hugetlb: check for brk() entering a hugepage region
David Gibson [Tue, 14 Nov 2006 10:03:38 +0000 (02:03 -0800)]
[PATCH] hugetlb: check for brk() entering a hugepage region

Unlike mmap(), the codepath for brk() creates a vma without first checking
that it doesn't touch a region exclusively reserved for hugepages.  On
powerpc, this can allow it to create a normal page vma in a hugepage
region, causing oopses and other badness.

Add a test to prevent this.  With this patch, brk() will simply fail if it
attempts to move the break into a hugepage reserved region.

Signed-off-by: David Gibson <david@gibson.dropbear.id.au>
Cc: Adam Litke <agl@us.ibm.com>
Cc: Hugh Dickins <hugh@veritas.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
18 years ago[PATCH] hugetlb: prepare_hugepage_range check offset too
Hugh Dickins [Tue, 14 Nov 2006 10:03:32 +0000 (02:03 -0800)]
[PATCH] hugetlb: prepare_hugepage_range check offset too

(David:)

If hugetlbfs_file_mmap() returns a failure to do_mmap_pgoff() - for example,
because the given file offset is not hugepage aligned - then do_mmap_pgoff
will go to the unmap_and_free_vma backout path.

But at this stage the vma hasn't been marked as hugepage, and the backout path
will call unmap_region() on it.  That will eventually call down to the
non-hugepage version of unmap_page_range().  On ppc64, at least, that will
cause serious problems if there are any existing hugepage pagetable entries in
the vicinity - for example if there are any other hugepage mappings under the
same PUD.  unmap_page_range() will trigger a bad_pud() on the hugepage pud
entries.  I suspect this will also cause bad problems on ia64, though I don't
have a machine to test it on.

(Hugh:)

prepare_hugepage_range() should check file offset alignment when it checks
virtual address and length, to stop MAP_FIXED with a bad huge offset from
unmapping before it fails further down.  PowerPC should apply the same
prepare_hugepage_range alignment checks as ia64 and all the others do.

Then none of the alignment checks in hugetlbfs_file_mmap are required (nor
is the check for too small a mapping); but even so, move up setting of
VM_HUGETLB and add a comment to warn of what David Gibson discovered - if
hugetlbfs_file_mmap fails before setting it, do_mmap_pgoff's unmap_region
when unwinding from error will go the non-huge way, which may cause bad
behaviour on architectures (powerpc and ia64) which segregate their huge
mappings into a separate region of the address space.

Signed-off-by: Hugh Dickins <hugh@veritas.com>
Cc: "Luck, Tony" <tony.luck@intel.com>
Cc: "David S. Miller" <davem@davemloft.net>
Acked-by: Adam Litke <agl@us.ibm.com>
Acked-by: David Gibson <david@gibson.dropbear.id.au>
Cc: Paul Mackerras <paulus@samba.org>
Cc: Benjamin Herrenschmidt <benh@kernel.crashing.org>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
18 years ago[PATCH] usb: MAINTAINERS updates
David Brownell [Tue, 14 Nov 2006 10:03:31 +0000 (02:03 -0800)]
[PATCH] usb: MAINTAINERS updates

Looks like I still take care of the USB gadget/peripheral framework.

Signed-off-by: David Brownell <dbrownell@users.sourceforge.net>
Acked-by: Greg KH <greg@kroah.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
18 years ago[PATCH] nvidiafb: fix unreachable code in nv10GetConfig
Nathan Lynch [Tue, 14 Nov 2006 10:03:30 +0000 (02:03 -0800)]
[PATCH] nvidiafb: fix unreachable code in nv10GetConfig

Fix binary/logical operator typo which leads to unreachable code.  Noticed
while looking at other issues; I don't have the relevant hardware to test
this.

Signed-off-by: Nathan Lynch <ntl@pobox.com>
Cc: "Antonino A. Daplas" <adaplas@pol.net>
Acked-by: James Simmons <jsimmons@infradead.org>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
18 years ago[PATCH] autofs4: panic after mount fail
Ian Kent [Tue, 14 Nov 2006 10:03:29 +0000 (02:03 -0800)]
[PATCH] autofs4: panic after mount fail

Resolve the panic on failed mount of an autofs filesystem originally
reported by Mao Bibo.

It addresses two issues that happen after the mount fail.  The first a NULL
pointer reference to a field (pipe) in the autofs superblock info structure
and second the lack of super block cleanup by the autofs and autofs4
modules.

Signed-off-by: Ian Kent <raven@themaw.net>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
18 years ago[PATCH] drivers/ide: stray bracket
Nicolas Kaiser [Tue, 14 Nov 2006 10:03:28 +0000 (02:03 -0800)]
[PATCH] drivers/ide: stray bracket

Stray bracket in debug code.

Signed-off-by: Nicolas Kaiser <nikai@nikai.net>
Cc: Alan Cox <alan@lxorguk.ukuu.org.uk>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
18 years ago[PATCH] revert "PCI: quirk for IBM Dock II cardbus controllers"
Andrew Morton [Tue, 14 Nov 2006 10:03:26 +0000 (02:03 -0800)]
[PATCH] revert "PCI: quirk for IBM Dock II cardbus controllers"

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

We need to target this quirk a little more tightly, using the T20 DMI string.

Cc: Pavel Kysilka <goldenfish@bsys.cz>
Acked-by: Kristen Carlson Accardi <kristen.c.accardi@intel.com>
Cc: Greg Kroah-Hartman <gregkh@suse.de>
Cc: Dominik Brodowski <linux@dominikbrodowski.net>
Cc: Daniel Ritz <daniel.ritz@gmx.ch>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
18 years ago[PATCH] fix via586 irq routing for pirq 5
Daniel Ritz [Tue, 14 Nov 2006 10:03:25 +0000 (02:03 -0800)]
[PATCH] fix via586 irq routing for pirq 5

Fix interrupt routing for via 586 bridges.  pirq can be 5 which needs to be
mapped to INTD.  But currently the access functions can handle only pirq
1-4.  this is similar to the other via chipsets where pirq 4 and 5 are both
mapped to INTD.  Fixes bugzilla #7490

Cc: Daniel Paschka <monkey20181@gmx.net>
Cc: Adrian Bunk <bunk@susta.de>
Signed-off-by: Daniel Ritz <daniel.ritz@gmx.ch>
Cc: <stable@kernel.org>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
18 years ago[PATCH] setup_irq(): better mismatch debugging
Andrew Morton [Tue, 14 Nov 2006 10:03:23 +0000 (02:03 -0800)]
[PATCH] setup_irq(): better mismatch debugging

When we get a mismatch between handlers on the same IRQ, all we get is "IRQ
handler type mismatch for IRQ n".  Let's print the name of the
presently-registered handler with which we got the mismatch.

Cc: Ingo Molnar <mingo@elte.hu>
Cc: Thomas Gleixner <tglx@linutronix.de>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
18 years agolibata: fix double-completion on error
Darrick J. Wong [Tue, 14 Nov 2006 14:55:41 +0000 (09:55 -0500)]
libata: fix double-completion on error

A curious thing happens, however, when ata_qc_new_init fails to get
an ata_queued_cmd:

First, ata_qc_new_init handles the failure like this:
    cmd->result = (DID_OK << 16) | (QUEUE_FULL << 1);
    done(cmd);

Then, we return to ata_scsi_translate and do this:
    err_mem:
        cmd->result = (DID_ERROR << 16);
        done(cmd);

It appears to me that first we set a status code indicating that we're
ok but the device queue is full and finish the command,  but then
we blow away that status code and replace it with an error flag and
finish the command a second time!  That does not seem to be desirable
behavior since we merely want the I/O to wait until a command slot
frees up, not send errors up the block layer.

In the err_mem case, we should simply exit out of ata_scsi_translate
instead.

Signed-off-by: Darrick J. Wong <djwong@us.ibm.com>
Signed-off-by: Jeff Garzik <jeff@garzik.org>
18 years ago[PATCH] pata_artop: fix "& (1 >>" typo
Alexey Dobriyan [Fri, 10 Nov 2006 19:52:46 +0000 (22:52 +0300)]
[PATCH] pata_artop: fix "& (1 >>" typo

Signed-off-by: Alexey Dobriyan <adobriyan@openvz.org>
Signed-off-by: Jeff Garzik <jeff@garzik.org>
18 years ago[PATCH] hpt37x: Check the enablebits
Alan Cox [Wed, 8 Nov 2006 16:18:26 +0000 (16:18 +0000)]
[PATCH] hpt37x: Check the enablebits

Helps for PATA but SATA bridged devices lie and always set all the bits
so will need the error handling fixes from Tejun.

Signed-off-by: Alan Cox <alan@redhat.com>
Signed-off-by: Jeff Garzik <jeff@garzik.org>
18 years agoMerge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/drzeus/mmc
Linus Torvalds [Mon, 13 Nov 2006 19:50:28 +0000 (11:50 -0800)]
Merge branch 'for-linus' of git://git./linux/kernel/git/drzeus/mmc

* 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/drzeus/mmc:
  MMC: Do not set unsupported bits in OCR response
  MMC: Poll card status after rescanning cards

18 years agoMerge branch 'for-linus' of master.kernel.org:/pub/scm/linux/kernel/git/roland/infiniband
Linus Torvalds [Mon, 13 Nov 2006 17:52:04 +0000 (09:52 -0800)]
Merge branch 'for-linus' of /linux/kernel/git/roland/infiniband

* 'for-linus' of master.kernel.org:/pub/scm/linux/kernel/git/roland/infiniband:
  IB/mad: Fix race between cancel and receive completion
  RDMA/amso1100: Fix && typo
  RDMA/amso1100: Fix unitialized pseudo_netdev accessed in c2_register_device
  IB/ehca: Activate scaling code by default
  IB/ehca: Use named constant for max mtu
  IB/ehca: Assure 4K alignment for firmware control blocks

18 years ago[dvb saa7134] Fix missing 'break' for avermedia card case
Linus Torvalds [Mon, 13 Nov 2006 17:50:11 +0000 (09:50 -0800)]
[dvb saa7134] Fix missing 'break' for avermedia card case

Commit 450efcfd2e1d941e302a8c89322fbfcef237be98 broke Avermedia 777
support.

Added obvious missing "break" statement.

Cc: José Suárez <j.suarez.agapito@gmail.com>
Cc: Michael Krufky <mkrufky@linuxtv.org>
Cc: Mauro Carvalho Chehab <mchehab@infradead.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
18 years ago[PATCH] ide-cd: only set rq->errors SCSI style for block pc requests
Jens Axboe [Mon, 13 Nov 2006 17:05:02 +0000 (18:05 +0100)]
[PATCH] ide-cd: only set rq->errors SCSI style for block pc requests

We should only set ->errors to CHECK_CONDITION and so on for requests
that use this field in the SCSI manner.

Signed-off-by: Jens Axboe <jens.axboe@oracle.com>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
18 years ago[PATCH] Fix bad data direction in SG_IO
Jens Axboe [Mon, 13 Nov 2006 17:04:59 +0000 (18:04 +0100)]
[PATCH] Fix bad data direction in SG_IO

Contrary to what the name misleads you to believe, SG_DXFER_TO_FROM_DEV
is really just a normal read seen from the device side.

This patch fixes http://lkml.org/lkml/2006/10/13/100

Signed-off-by: Jens Axboe <jens.axboe@oracle.com>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
18 years agoIB/mad: Fix race between cancel and receive completion
Roland Dreier [Mon, 13 Nov 2006 17:38:07 +0000 (09:38 -0800)]
IB/mad: Fix race between cancel and receive completion

When ib_cancel_mad() is called, it puts the canceled send on a list
and schedules a "flushed" callback from process context.  However,
this leaves a window where a receive completion could be processed
before the send is fully flushed.

This is fine, except that ib_find_send_mad() will find the MAD and
return it to the receive processing, which results in the sender
getting both a successful receive and a "flushed" send completion for
the same request.  Understandably, this confuses the sender, which is
expecting only one of these two callbacks, and leads to grief such as
a use-after-free in IPoIB.

Fix this by changing ib_find_send_mad() to return a send struct only
if the status is still successful (and not "flushed").  The search of
the send_list already had this check, so this patch just adds the same
check to the search of the wait_list.

Signed-off-by: Roland Dreier <rolandd@cisco.com>
18 years agoRDMA/amso1100: Fix && typo
Jean Delvare [Thu, 9 Nov 2006 20:02:26 +0000 (21:02 +0100)]
RDMA/amso1100: Fix && typo

Fix the AMSO1100 firmware version computation, which was broken
due to "&&" being used where "&" should have.

Signed-off-by: Jean Delvare <khali@linux-fr.org>
Signed-off-by: Roland Dreier <rolandd@cisco.com>
18 years agoRDMA/amso1100: Fix unitialized pseudo_netdev accessed in c2_register_device
Tom Tucker [Wed, 8 Nov 2006 20:23:22 +0000 (14:23 -0600)]
RDMA/amso1100: Fix unitialized pseudo_netdev accessed in c2_register_device

Rework some load-time error handling: c2_register_device() leaked when
it failed, and the function that called it didn't check the return code.

Signed-off-by: Tom Tucker <tom@opengridcomputing.com>
Signed-off-by: Roland Dreier <rolandd@cisco.com>
18 years agoIB/ehca: Activate scaling code by default
Hoang-Nam Nguyen [Sun, 5 Nov 2006 20:42:20 +0000 (21:42 +0100)]
IB/ehca: Activate scaling code by default

Change ehca's Kconfig to activates scaling code as default.  After
several measurements we saw that this feature prevents dropped packets
(UD) in stress situation. Thus, enabling it helps to improve ehca's
bandwidth through IPoIB.

Signed-off-by: Hoang-Nam Nguyen <hnguyen@de.ibm.com>
Signed-off-by: Roland Dreier <rolandd@cisco.com>
18 years agoIB/ehca: Use named constant for max mtu
Hoang-Nam Nguyen [Sun, 5 Nov 2006 20:42:56 +0000 (21:42 +0100)]
IB/ehca: Use named constant for max mtu

Define and use a constant EHCA_MAX_MTU instead hardcoded value.

Signed-off-by: Hoang-Nam Nguyen <hnguyen@de.ibm.com>
Signed-off-by: Roland Dreier <rolandd@cisco.com>
18 years agoMerge branch 'master' of master.kernel.org:/pub/scm/linux/kernel/git/mchehab/v4l-dvb
Linus Torvalds [Mon, 13 Nov 2006 16:27:17 +0000 (08:27 -0800)]
Merge branch 'master' of /linux/kernel/git/mchehab/v4l-dvb

* 'master' of master.kernel.org:/pub/scm/linux/kernel/git/mchehab/v4l-dvb:
  V4L/DVB (4818): Flexcop-usb: fix debug printk
  V4L/DVB (4817): Fix uses of "&&" where "&" was intended
  V4L/DVB (4816): Change tuner type for Avermedia A16AR
  V4L/DVB (4815): Remote support for Avermedia A16AR
  V4L/DVB (4814): Remote support for Avermedia 777
  V4L/DVB (4804): Fix missing i2c dependency for saa7110
  V4L/DVB (4802): Cx88: fix remote control on WinFast 2000XP Expert
  V4L/DVB (4795): Tda826x: use correct max frequency

18 years agoMerge branch 'merge' of git://git.kernel.org/pub/scm/linux/kernel/git/paulus/powerpc
Linus Torvalds [Mon, 13 Nov 2006 16:20:38 +0000 (08:20 -0800)]
Merge branch 'merge' of git://git./linux/kernel/git/paulus/powerpc

* 'merge' of git://git.kernel.org/pub/scm/linux/kernel/git/paulus/powerpc:
  [POWERPC] cell: set ARCH_SPARSEMEM_DEFAULT in Kconfig
  [POWERPC] Fix cell "new style" mapping and add debug
  [POWERPC] pseries: Force 4k update_flash block and list sizes
  [POWERPC] CPM_UART: Fix non-console initialisation
  [POWERPC] CPM_UART: Fix non-console transmit
  [POWERPC] Make sure initrd and dtb sections get into zImage correctly

18 years agoMerge git://oss.sgi.com:8090/xfs/xfs-2.6
Linus Torvalds [Mon, 13 Nov 2006 16:15:30 +0000 (08:15 -0800)]
Merge git://oss.sgi.com:8090/xfs/xfs-2.6

* git://oss.sgi.com:8090/xfs/xfs-2.6:
  [XFS] Remove KERNEL_VERSION macros from xfs_dmapi.h
  [XFS] Prevent a deadlock when xfslogd unpins inodes.
  [XFS] Clean up i_flags and i_flags_lock handling.
  [XFS] 956664: dm_read_invis() changes i_atime
  [XFS] rename uio_read() to xfs_uio_read()
  [XFS] Keep lockdep happy.
  [XFS] 956618: Linux crashes on boot with XFS-DMAPI filesystem when

18 years agoMerge master.kernel.org:/pub/scm/linux/kernel/git/davem/net-2.6
Linus Torvalds [Mon, 13 Nov 2006 16:14:13 +0000 (08:14 -0800)]
Merge /pub/scm/linux/kernel/git/davem/net-2.6

* master.kernel.org:/pub/scm/linux/kernel/git/davem/net-2.6:
  [IPVS]: More endianness fixed.
  [IPVS]: Compile fix for annotations in userland.

18 years agoMerge master.kernel.org:/pub/scm/linux/kernel/git/sfrench/cifs-2.6
Linus Torvalds [Mon, 13 Nov 2006 16:09:49 +0000 (08:09 -0800)]
Merge /pub/scm/linux/kernel/git/sfrench/cifs-2.6

* master.kernel.org:/pub/scm/linux/kernel/git/sfrench/cifs-2.6:
  [CIFS] Fix minor problem with previous patch
  [CIFS]  Fix mount failure when domain not specified
  [CIFS] Explicitly set stat->blksize
  [CIFS] NFS stress test generates flood of "close with pending write" messages

18 years agoMerge branch 'upstream-linus' of master.kernel.org:/pub/scm/linux/kernel/git/jgarzik...
Linus Torvalds [Mon, 13 Nov 2006 16:03:32 +0000 (08:03 -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:
  [PATCH] drivers cris: return on NULL dev_alloc_skb()
  [PATCH] com20020 build fix
  [PATCH] bonding: lockdep annotation
  [PATCH] bcm43xx: Add error checking in bcm43xx_sprom_write()
  [PATCH] bcm43xx: Drain TX status before starting IRQs

18 years ago[PATCH] SCSI core: always store >= 36 bytes of INQUIRY data
Alan Stern [Fri, 10 Nov 2006 20:27:57 +0000 (12:27 -0800)]
[PATCH] SCSI core: always store >= 36 bytes of INQUIRY data

This patch (as810c) copies a minimum of 36 bytes of INQUIRY data, even if
the device claims that not all of them are valid.  Often badly behaved
devices put plausible data in the Vendor, Product, and Revision strings but
set the Additional Length byte to a small value.  Using potentially valid
data is certainly better than allocating a short buffer and then reading
beyond the end of it, which is what we do now.

Signed-off-by: Alan Stern <stern@rowland.harvard.edu>
Cc: James Bottomley <James.Bottomley@steeleye.com>
Cc: Greg KH <greg@kroah.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
18 years ago[PATCH] Fix misrouted interrupts deadlocks
Pavel Emelianov [Fri, 10 Nov 2006 20:27:56 +0000 (12:27 -0800)]
[PATCH] Fix misrouted interrupts deadlocks

While testing kernel on machine with "irqpoll" option I've caught such a
lockup:

__do_IRQ()
   spin_lock(&desc->lock);
           desc->chip->ack(); /* IRQ is ACKed */
note_interrupt()
misrouted_irq()
handle_IRQ_event()
           if (...)
      local_irq_enable_in_hardirq();
/* interrupts are enabled from now */
...
__do_IRQ() /* same IRQ we've started from */
   spin_lock(&desc->lock); /* LOCKUP */

Looking at misrouted_irq() code I've found that a potential deadlock like
this can also take place:

1CPU:
__do_IRQ()
   spin_lock(&desc->lock); /* irq = A */
misrouted_irq()
   for (i = 1; i < NR_IRQS; i++) {
      spin_lock(&desc->lock); /* irq = B */
      if (desc->status & IRQ_INPROGRESS) {

2CPU:
__do_IRQ()
   spin_lock(&desc->lock); /* irq = B */
misrouted_irq()
   for (i = 1; i < NR_IRQS; i++) {
      spin_lock(&desc->lock); /* irq = A */
      if (desc->status & IRQ_INPROGRESS) {

As the second lock on both CPUs is taken before checking that this irq is
being handled in another processor this may cause a deadlock.  This issue
is only theoretical.

I propose the attached patch to fix booth problems: when trying to handle
misrouted IRQ active desc->lock may be unlocked.

Acked-by: Ingo Molnar <mingo@redhat.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
18 years ago[PATCH] fix Data Acess error in dup_fd
Sharyathi Nagesh [Fri, 10 Nov 2006 20:27:54 +0000 (12:27 -0800)]
[PATCH] fix Data Acess error in dup_fd

On running the Stress Test on machine for more than 72 hours following
error message was observed.

0:mon> e
cpu 0x0: Vector: 300 (Data Access) at [c00000007ce2f7f0]
    pc: c000000000060d90: .dup_fd+0x240/0x39c
    lr: c000000000060d6c: .dup_fd+0x21c/0x39c
    sp: c00000007ce2fa70
   msr: 800000000000b032
   dar: ffffffff00000028
 dsisr: 40000000
  current = 0xc000000074950980
  paca    = 0xc000000000454500
    pid   = 27330, comm = bash

0:mon> t
[c00000007ce2fa70c000000000060d28 .dup_fd+0x1d8/0x39c (unreliable)
[c00000007ce2fb30c000000000060f48 .copy_files+0x5c/0x88
[c00000007ce2fbd0c000000000061f5c .copy_process+0x574/0x1520
[c00000007ce2fcd0c000000000062f88 .do_fork+0x80/0x1c4
[c00000007ce2fdc0c000000000011790 .sys_clone+0x5c/0x74
[c00000007ce2fe30c000000000008950 .ppc_clone+0x8/0xc

The problem is because of race window.  When if(expand) block is executed in
dup_fd unlocking of oldf->file_lock give a window for fdtable in oldf to be
modified.  So actual open_files in oldf may not match with open_files
variable.

Cc: Vadim Lobanov <vlobanov@speakeasy.net>
Cc: <stable@kernel.org>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
18 years ago[PATCH] .gitignore: add miscellaneous files
Franck Bui-Huu [Fri, 10 Nov 2006 20:27:53 +0000 (12:27 -0800)]
[PATCH] .gitignore: add miscellaneous files

Prevent git from reporting this useless status:

On branch refs/heads/master
Untracked files:
  (use "git add" to add to commit)

      TAGS
      scripts/kconfig/lkc_defs.h
      scripts/kconfig/qconf.moc
nothing to commit

Signed-off-by: Franck Bui-Huu <fbuihuu@gmail.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
18 years ago[PATCH] Fix missing parens in set_personality()
Russell King [Fri, 10 Nov 2006 20:27:53 +0000 (12:27 -0800)]
[PATCH] Fix missing parens in set_personality()

If you call set_personality() with an expression such as:

set_personality(foo ? PERS_FOO1 : PERS_FOO2);

then this evaluates to:

((current->personality == foo ? PERS_FOO1 : PERS_FOO2) ? ...

which is obviously not the intended result.  Add the missing parents
to ensure this gets evaluated as expected:

((current->personality == (foo ? PERS_FOO1 : PERS_FOO2)) ? ...

Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
18 years ago[PATCH] Patch for nvidia divide by zero error for 7600 pci-express card
Wink Saville [Fri, 10 Nov 2006 20:27:52 +0000 (12:27 -0800)]
[PATCH] Patch for nvidia divide by zero error for 7600 pci-express card

The following patch resolves the divide by zero error I encountered on my
system:

http://marc.10east.com/?l=linux-fbdev-devel&m=116058257024413&w=2

I accomplished this by merging what I thought was appropriate from:

http://webcvs.freedesktop.org/xorg/driver/xf86-video-nv/src/

Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
18 years ago[PATCH] IPMI: Fix more && typos
Corey Minyard [Fri, 10 Nov 2006 20:27:50 +0000 (12:27 -0800)]
[PATCH] IPMI: Fix more && typos

Fix improper use of "&&" when "&" was intended.

Signed-off-by: Jean Delvare <khali@linux-fr.org>
Signed-off-by: Corey Minyard <minyard@acm.org>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
18 years ago[PATCH] mspec driver build fix
Jes Sorensen [Fri, 10 Nov 2006 20:27:49 +0000 (12:27 -0800)]
[PATCH] mspec driver build fix

Fix MSPEC driver to build for non SN2 enabled configs as the driver should
work in cached and uncached modes (no fetchop) on these systems.  In
addition make MSPEC select IA64_UNCACHED_ALLOCATOR, which is required for
it and move it to arch/ia64/Kconfig to avoid warnings on non ia64
architectures running allmodconfig.  Once the Kconfig code is fixed, we can
move it back.

Signed-off-by: Jes Sorensen <jes@sgi.com>
Cc: Fernando Luis Vzquez Cao <fernando@oss.ntt.co.jp>
Cc: "Luck, Tony" <tony.luck@intel.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
18 years ago[PATCH] pci: don't try to remove sysfs files before they are setup.
David Miller [Fri, 10 Nov 2006 20:27:48 +0000 (12:27 -0800)]
[PATCH] pci: don't try to remove sysfs files before they are setup.

The PCI sysfs attributes are created after the initial PCI bus scan.  With
the addition of more return value checking and assertions in the device and
sysfs layers we now can get dumps like this on sparc64:

[   20.135032] Call Trace:
[   20.135042]  [0000000000537f88] pci_remove_bus_device+0x30/0xc0
[   20.135076]  [000000000078f890] pci_fill_in_pbm_cookies+0x98/0x440
[   20.135109]  [000000000042e828] sabre_scan_bus+0x230/0x400
[   20.135139]  [000000000078c710] pcibios_init+0x58/0xa0
[   20.135159]  [0000000000416f14] init+0x9c/0x2e0
[   20.135190]  [0000000000417a50] kernel_thread+0x38/0x60
[   20.135211]  [0000000000417170] rest_init+0x18/0x40
[   20.135514] PCI0(PBMB): Bus running at 33MHz

It's triggering because removal of the "config" PCI sysfs file for the
device fails.

On sparc64, after probing the device, we'll delete the PCI device via
pci_remove_bus_device() if we cannot find the firmware device tree node
corresponding to it.

This is fine, but at this point the sysfs files for the PCI device won't be
setup yet.

So we should not try to do anything in pci_remove_sysfs_dev_files() if
pci_sysfs_init() has not run yet.

Signed-off-by: David S. Miller <davem@davemloft.net>
Acked-by: Greg Kroah-Hartman <gregkh@suse.de>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
18 years ago[PATCH] vmalloc: optimization, cleanup, bugfixes
Eric Dumazet [Fri, 10 Nov 2006 20:27:48 +0000 (12:27 -0800)]
[PATCH] vmalloc: optimization, cleanup, bugfixes

- reorder 'struct vm_struct' to speedup lookups on CPUS with small cache
  lines.  The fields 'next,addr,size' should be now in the same cache line,
  to speedup lookups.

- One minor cleanup in __get_vm_area_node()

- Bugfixes in vmalloc_user() and vmalloc_32_user() NULL returns from
  __vmalloc() and __find_vm_area() were not tested.

[akpm@osdl.org: remove redundant BUG_ONs]
Signed-off-by: Eric Dumazet <dada1@cosmosbay.com>
Cc: Nick Piggin <nickpiggin@yahoo.com.au>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
18 years agoV4L/DVB (4818): Flexcop-usb: fix debug printk
Alexey Dobriyan [Thu, 9 Nov 2006 20:36:44 +0000 (17:36 -0300)]
V4L/DVB (4818): Flexcop-usb: fix debug printk

.. fix debug printk. Why, oh why, one would want to do
(u16 & 0xff) << 8
and print it with %02x format?
Acked-by: Patrick Boettcher <pb@linuxtv.org>
Signed-off-by: Alexey Dobriyan <adobriyan@gmail.com>
Signed-off-by: Michael Krufky <mkrufky@linuxtv.org>
Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
18 years agoV4L/DVB (4817): Fix uses of "&&" where "&" was intended
Jean Delvare [Thu, 9 Nov 2006 20:25:28 +0000 (17:25 -0300)]
V4L/DVB (4817): Fix uses of "&&" where "&" was intended

Fix uses of "&&" where "&" was intended in bttv-cards.c and tveeprom.c

Signed-off-by: Jean Delvare <khali@linux-fr.org>
Signed-off-by: Michael Krufky <mkrufky@linuxtv.org>
Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
18 years agoV4L/DVB (4816): Change tuner type for Avermedia A16AR
pasky@ucw.cz [Sun, 12 Nov 2006 17:24:57 +0000 (14:24 -0300)]
V4L/DVB (4816): Change tuner type for Avermedia A16AR

This changes it from TDA8290 which is allegedly very unlikely to TD1316 which
is allegedly very likely. I didn't get it to work with either, but expected
that this got applied when Mauro sent it to me, so here it goes again; feel
free to drop it to the floor. :-)

Signed-off-by: Petr Baudis <pasky@ucw.cz>
Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
18 years agoV4L/DVB (4815): Remote support for Avermedia A16AR
pasky@ucw.cz [Sun, 12 Nov 2006 17:23:32 +0000 (14:23 -0300)]
V4L/DVB (4815): Remote support for Avermedia A16AR

The remote as well as the GPIO interface is the same as what comes with 777.
For an example of mplayer lirc configuration, see
http://pasky.or.cz/~pasky/dev/v4l/lircrc

Signed-off-by: Petr Baudis <pasky@ucw.cz>
Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
18 years agoV4L/DVB (4814): Remote support for Avermedia 777
pasky@ucw.cz [Sun, 12 Nov 2006 17:22:32 +0000 (14:22 -0300)]
V4L/DVB (4814): Remote support for Avermedia 777

I didn't test it personally since I don't have this card, but A16AR uses the
same interface and that one certainly does work perfectly (see the next patch).
This patch was originally sent in
http://marc.theaimsgroup.com/?l=linux-video&m=114743413825375&w=2
https://www.redhat.com/mailman/private/video4linux-list/2006-May/msg00103.html
but never got applied. This version has some trivial modifications and drops
the weird gpio hack (it's not clear what practical purpose does it serve).

Signed-off-by: Jose Alberto Reguero <jareguero@telefonica.net>
Signed-off-by: Petr Baudis <pasky@ucw.cz>
Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
18 years agoV4L/DVB (4804): Fix missing i2c dependency for saa7110
Mauro Carvalho Chehab [Sun, 5 Nov 2006 12:02:13 +0000 (09:02 -0300)]
V4L/DVB (4804): Fix missing i2c dependency for saa7110

drivers/media/video/saa7110.c:112: undefined reference to `i2c_master_send'
drivers/built-in.o: In function `saa7110_read':
drivers/media/video/saa7110.c:130: undefined reference to `i2c_smbus_read_byte'
drivers/media/video/saa7110.c:130: undefined reference to `i2c_smbus_read_byte'

Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
18 years agoV4L/DVB (4802): Cx88: fix remote control on WinFast 2000XP Expert
Hermann Pitton [Fri, 3 Nov 2006 13:45:52 +0000 (10:45 -0300)]
V4L/DVB (4802): Cx88: fix remote control on WinFast 2000XP Expert

fix remote control on WinFast 2000XP Expert by setting timing back to 1 ms,
like it was in the original patch by Robert Reid.

Signed-off-by: Hermann Pitton <hermann-pitton@arcor.de>
Signed-off-by: Michael Krufky <mkrufky@linuxtv.org>
Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
18 years agoV4L/DVB (4795): Tda826x: use correct max frequency
Alexey Dobriyan [Fri, 3 Nov 2006 10:14:32 +0000 (07:14 -0300)]
V4L/DVB (4795): Tda826x: use correct max frequency

sparse "defined twice" warning

Signed-off-by: Alexey Dobriyan <adobriyan@gmail.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Michael Krufky <mkrufky@linuxtv.org>
Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
18 years ago[XFS] Remove KERNEL_VERSION macros from xfs_dmapi.h
David Chinner [Sat, 11 Nov 2006 07:05:06 +0000 (18:05 +1100)]
[XFS] Remove KERNEL_VERSION macros from xfs_dmapi.h

SGI-PV: 957005
SGI-Modid: xfs-linux-melb:xfs-kern:27398a

Signed-off-by: David Chinner <dgc@sgi.com>
Signed-off-by: Michal Piotrowski <michal.k.k.piotrowski@gmail.com>
Signed-off-by: Tim Shimmin <tes@sgi.com>
18 years ago[XFS] Prevent a deadlock when xfslogd unpins inodes.
David Chinner [Sat, 11 Nov 2006 07:05:00 +0000 (18:05 +1100)]
[XFS] Prevent a deadlock when xfslogd unpins inodes.

The previous fixes for the use after free in xfs_iunpin left a nasty log
deadlock when xfslogd unpinned the inode and dropped the last reference to
the inode. the ->clear_inode() method can issue transactions, and if the
log was full, the transaction could push on the log and get stuck trying
to push the inode it was currently unpinning.

To fix this, we provide xfs_iunpin a guarantee that it will always have a
valid xfs_inode <-> linux inode link or a particular flag will be set on
the inode. We then use log forces during lookup to ensure transactions are
completed before we recycle the inode. This ensures that xfs_iunpin will
never use the linux inode after it is being freed, and any lookup on an
inode on the reclaim list will wait until it is safe to attach a new linux
inode to the xfs inode.

SGI-PV: 956832
SGI-Modid: xfs-linux-melb:xfs-kern:27359a

Signed-off-by: David Chinner <dgc@sgi.com>
Signed-off-by: Shailendra Tripathi <stripathi@agami.com>
Signed-off-by: Takenori Nagano <t-nagano@ah.jp.nec.com>
Signed-off-by: Tim Shimmin <tes@sgi.com>
18 years ago[XFS] Clean up i_flags and i_flags_lock handling.
David Chinner [Sat, 11 Nov 2006 07:04:54 +0000 (18:04 +1100)]
[XFS] Clean up i_flags and i_flags_lock handling.

SGI-PV: 956832
SGI-Modid: xfs-linux-melb:xfs-kern:27358a

Signed-off-by: David Chinner <dgc@sgi.com>
Signed-off-by: Nathan Scott <nscott@aconex.com>
Signed-off-by: Tim Shimmin <tes@sgi.com>
18 years ago[XFS] 956664: dm_read_invis() changes i_atime
Vlad Apostolov [Sat, 11 Nov 2006 07:04:47 +0000 (18:04 +1100)]
[XFS] 956664: dm_read_invis() changes i_atime

SGI-PV: 956664
SGI-Modid: xfs-linux-melb:xfs-kern:27315a

Signed-off-by: Vlad Apostolov <vapo@sgi.com>
Signed-off-by: Sam Vaughan <sjv@sgi.com>
Signed-off-by: Tim Shimmin <tes@sgi.com>
18 years ago[XFS] rename uio_read() to xfs_uio_read()
Vlad Apostolov [Sat, 11 Nov 2006 07:04:41 +0000 (18:04 +1100)]
[XFS] rename uio_read() to xfs_uio_read()

SGI-PV: 957004
SGI-Modid: xfs-linux-melb:xfs-kern:27231a

Signed-off-by: Vlad Apostolov <vapo@sgi.com>
Signed-off-by: Tim Shimmin <tes@sgi.com>
18 years ago[XFS] Keep lockdep happy.
Tim Shimmin [Sat, 11 Nov 2006 07:04:34 +0000 (18:04 +1100)]
[XFS] Keep lockdep happy.

SGI-PV: 956964
SGI-Modid: xfs-linux-melb:xfs-kern:27200a

Signed-off-by: Tim Shimmin <tes@sgi.com>
Signed-off-by: David Chinner <dgc@sgi.com>
Signed-off-by: Eric Sandeen <sandeen@sandeen.net>
18 years ago[XFS] 956618: Linux crashes on boot with XFS-DMAPI filesystem when
Vlad Apostolov [Sat, 11 Nov 2006 07:03:49 +0000 (18:03 +1100)]
[XFS] 956618: Linux crashes on boot with XFS-DMAPI filesystem when
CONFIG_XFS_TRACE is on

SGI-PV: 956618
SGI-Modid: xfs-linux-melb:xfs-kern:27196a

Signed-off-by: Vlad Apostolov <vapo@sgi.com>
Signed-off-by: Tim Shimmin <tes@sgi.com>
18 years ago[IPVS]: More endianness fixed.
Julian Anastasov [Fri, 10 Nov 2006 22:57:37 +0000 (14:57 -0800)]
[IPVS]: More endianness fixed.

- make sure port in FTP data is in network order (in fact it was looking
buggy for big endian boxes before Viro's changes)
- htonl -> htons for port

Signed-off-by: Julian Anastasov <ja@ssi.bg>
Signed-off-by: David S. Miller <davem@davemloft.net>
18 years agoMerge branch 'upstream-fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/linvil...
Jeff Garzik [Fri, 10 Nov 2006 16:10:51 +0000 (11:10 -0500)]
Merge branch 'upstream-fixes' of git://git./linux/kernel/git/linville/wireless-2.6 into upstream-fixes

18 years ago[PATCH] drivers cris: return on NULL dev_alloc_skb()
David Rientjes [Thu, 9 Nov 2006 03:49:15 +0000 (19:49 -0800)]
[PATCH] drivers cris: return on NULL dev_alloc_skb()

If the next descriptor array entry cannot be allocated by dev_alloc_skb(),
return immediately so it is not dereferenced later.  We cannot register the
device with a partial descriptor list.

Cc: Mikael Starvik <starvik@axis.com>
Signed-off-by: David Rientjes <rientjes@cs.washington.edu>
Cc: Jeff Garzik <jeff@garzik.org>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Jeff Garzik <jeff@garzik.org>
18 years ago[PATCH] com20020 build fix
Randy Dunlap [Thu, 9 Nov 2006 03:51:03 +0000 (19:51 -0800)]
[PATCH] com20020 build fix

com20020.c needs to export functions if either of the ISA or PCI modules
are built as loadable modules.  Or they could always be exported.

WARNING: "com20020_found" [drivers/net/arcnet/com20020-pci.ko] undefined!
WARNING: "com20020_check" [drivers/net/arcnet/com20020-pci.ko] undefined!

Signed-off-by: Randy Dunlap <randy.dunlap@oracle.com>
Cc: Toralf Forster <toralf.foerster@gmx.de>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Jeff Garzik <jeff@garzik.org>
18 years ago[PATCH] bonding: lockdep annotation
Peter Zijlstra [Thu, 9 Nov 2006 03:51:01 +0000 (19:51 -0800)]
[PATCH] bonding: lockdep annotation

=============================================
[ INFO: possible recursive locking detected ]
2.6.17-1.2600.fc6 #1

Signed-off-by: Jeff Garzik <jeff@garzik.org>
18 years ago[POWERPC] cell: set ARCH_SPARSEMEM_DEFAULT in Kconfig
Geoff Levand [Fri, 3 Nov 2006 05:08:45 +0000 (21:08 -0800)]
[POWERPC] cell: set ARCH_SPARSEMEM_DEFAULT in Kconfig

The current cell processor support needs sparsemem, so set it as
the default memory model.

Signed-off-by: Geoff Levand <geoffrey.levand@am.sony.com>
Acked-by: Arnd Bergmann <arnd.bergmann@de.ibm.com>
Signed-off-by: Paul Mackerras <paulus@samba.org>
18 years ago[POWERPC] Fix cell "new style" mapping and add debug
Benjamin Herrenschmidt [Fri, 10 Nov 2006 04:11:20 +0000 (15:11 +1100)]
[POWERPC] Fix cell "new style" mapping and add debug

This fixes a typo in the "new style" code for mapping SPE resources,
which causes it to try to map the same resource 4 times.

It also adds some pr_debug's that are useful to track down issues with
the firmware when bringinh up new machines.

Signed-off-by: Benjamin Herrenschmidt <benh@kernel.crashing.org>
Signed-off-by: Paul Mackerras <paulus@samba.org>
18 years ago[POWERPC] pseries: Force 4k update_flash block and list sizes
John Rose [Wed, 8 Nov 2006 16:07:30 +0000 (10:07 -0600)]
[POWERPC] pseries: Force 4k update_flash block and list sizes

The enablement of 64k pages on pseries platforms exposed a bug in
the RTAS mechanism for updating firmware.  RTAS assumes 4k for flash
block and list sizes, and use of any other sizes results in a failure,
even though PAPR does not specify any such requirement.

This patch changes the rtas_flash module to force the use of 4k memory
block and list sizes when preparing and sending a firmware image to
RTAS.  The rtas_flash function now uses a slab cache of 4k blocks with
4k alignment, rather than get_zeroed_page(), to allocate the memory for
the flash blocks and lists.  The 4k alignment requirement is specified
in PAPR.

Signed-off-by: John Rose <johnrose@austin.ibm.com>
Signed-off-by: Paul Mackerras <paulus@samba.org>
18 years ago[POWERPC] CPM_UART: Fix non-console initialisation
Kalle Pokki [Wed, 1 Nov 2006 13:08:13 +0000 (15:08 +0200)]
[POWERPC] CPM_UART: Fix non-console initialisation

The cpm_uart driver is initialised incorrectly, if there is a frame buffer
console, and CONFIG_SERIAL_CPM_CONSOLE is defined. The driver fails to
call cpm_uart_init_portdesc() and set_lineif() in this case.

Signed-off-by: Kalle Pokki <kalle.pokki@iki.fi>
Signed-off-by: Vitaly Bordug <vbordug@ru.mvista.com>
Signed-off-by: Paul Mackerras <paulus@samba.org>
18 years ago[POWERPC] CPM_UART: Fix non-console transmit
Kalle Pokki [Wed, 1 Nov 2006 07:52:41 +0000 (09:52 +0200)]
[POWERPC] CPM_UART: Fix non-console transmit

The SMC and SCC hardware transmitter is enabled at the wrong
place. Simply writing twice to the non-console port, like

$ echo asdf > /dev/ttyCPM1
$ echo asdf > /dev/ttyCPM1

puts the shell into endless uninterruptible sleep, since the
transmitter is stopped after the first write, and is not enabled
before the shutdown function of the second write. Thus the transmit
buffers are never emptied.

Signed-off-by: Kalle Pokki <kalle.pokki@iki.fi>
Signed-off-by: Vitaly Bordug <vbordug@ru.mvista.com>
Signed-off-by: Paul Mackerras <paulus@samba.org>
18 years ago[IPVS]: Compile fix for annotations in userland.
Simon Horman [Fri, 10 Nov 2006 04:00:55 +0000 (20:00 -0800)]
[IPVS]: Compile fix for annotations in userland.

This change makes __beXX available to user-space applications, such as
ipvsadm, which include ip_vs.h

Signed-Off-By: Simon Horman <horms@verge.net.au>
Signed-off-by: David S. Miller <davem@davemloft.net>
18 years ago[CIFS] Fix minor problem with previous patch
Steve French [Thu, 9 Nov 2006 21:25:37 +0000 (21:25 +0000)]
[CIFS] Fix minor problem with previous patch

The patch
NFS stress test generates flood of "close with pending write

was missing an if

Signed-off-by: Steve French <sfrench@us.ibm.com>
18 years agoIB/ehca: Assure 4K alignment for firmware control blocks
Hoang-Nam Nguyen [Mon, 6 Nov 2006 23:56:39 +0000 (00:56 +0100)]
IB/ehca: Assure 4K alignment for firmware control blocks

Assure 4K alignment for firmware control blocks in 64K page mode,
because kzalloc()'s result address might not be 4K aligned if 64K
pages are enabled. Thus, we introduce wrappers called
ehca_{alloc,free}_fw_ctrlblock(), which use a slab cache for objects
with 4K length and 4K alignment in order to alloc/free firmware
control blocks in 64K page mode. In 4K page mode those wrappers just
are defines of get_zeroed_page() and free_page().

Signed-off-by: Hoang-Nam Nguyen <hnguyen@de.ibm.com>
Signed-off-by: Roland Dreier <rolandd@cisco.com>
18 years agoMMC: Do not set unsupported bits in OCR response
Timo Teras [Thu, 2 Nov 2006 18:43:27 +0000 (19:43 +0100)]
MMC: Do not set unsupported bits in OCR response

The card might go to inactive state (according to specification), if
there are unsupported bits set in the OCR.

Signed-off-by: Timo Teras <timo.teras@solidboot.com>
Signed-off-by: Pierre Ossman <drzeus@drzeus.cx>
18 years agoMMC: Poll card status after rescanning cards
Timo Teras [Wed, 25 Oct 2006 06:37:41 +0000 (09:37 +0300)]
MMC: Poll card status after rescanning cards

Some broken cards seem to process CMD1 even in stand-by state. The result is
that the card replies with ILLEGAL_COMMAND error for the next command sent
after rescanning. Currently the next command is select card, which would
return the error. But CMD7 does actually succeed and retries of the command
will timeout. The workaround is to poll card status after CMD1 to clear the
pending error.

Signed-off-by: Timo Teras <timo.teras@solidboot.com>
Signed-off-by: Pierre Ossman <drzeus@drzeus.cx>
18 years ago[POWERPC] Make sure initrd and dtb sections get into zImage correctly
Paul Mackerras [Thu, 9 Nov 2006 05:00:06 +0000 (16:00 +1100)]
[POWERPC] Make sure initrd and dtb sections get into zImage correctly

The "wrapper" script was using the wrong names for the initrd and
dtb (device-tree blob) sections.  This fixes it, and also ensures
the symbols for the start and end of the dtb get defined correctly.

Signed-off-by: Paul Mackerras <paulus@samba.org>
18 years ago[PATCH] nfsd: fix spurious error return from nfsd_create in async case
J. Bruce Fields [Thu, 9 Nov 2006 01:44:59 +0000 (17:44 -0800)]
[PATCH] nfsd: fix spurious error return from nfsd_create in async case

Commit 6264d69d7df654ca64f625e9409189a0e50734e9 modified the nfsd_create()
error handling in such a way that nfsd_create will usually return
nfserr_perm even when succesful, if the export has the async export option.

This introduced a regression that could cause mkdir() to always return a
permissions error, even though the directory in question was actually
succesfully created.

Signed-off-by: J. Bruce Fields <bfields@citi.umich.edu>
Acked-by: NeilBrown <neilb@suse.de>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
18 years ago[PATCH] IB/ipath - program intconfig register using new HT irq hook
Bryan O'Sullivan [Thu, 9 Nov 2006 01:44:58 +0000 (17:44 -0800)]
[PATCH] IB/ipath - program intconfig register using new HT irq hook

Eric's changes to the htirq infrastructure require corresponding
modifications to the ipath HT driver code so that interrupts are still
delivered properly.

Signed-off-by: Bryan O'Sullivan <bryan.osullivan@qlogic.com>
Cc: Eric W. Biederman <ebiederm@xmission.com>
Cc: Roland Dreier <rdreier@cisco.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
18 years ago[PATCH] htirq: allow buggy drivers of buggy hardware to write the registers
Eric W. Biederman [Thu, 9 Nov 2006 01:44:57 +0000 (17:44 -0800)]
[PATCH] htirq: allow buggy drivers of buggy hardware to write the registers

This patch adds a variant of ht_create_irq __ht_create_irq that takes an
aditional parameter update that is a function that is called whenever we want
to write to a drivers htirq configuration registers.

This is needed to support the ipath_iba6110 because it's registers in the
proper location are not actually conected to the hardware that controlls
interrupt delivery.

[bos@serpentine.com: fixes]
Signed-off-by: Eric W. Biederman <ebiederm@xmission.com>
Cc: Andi Kleen <ak@suse.de>
Cc: <olson@pathscale.com>
Cc: Roland Dreier <rolandd@cisco.com>
Signed-off-by: Bryan O'Sullivan <bryan.osullivan@qlogic.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
18 years ago[PATCH] htirq: refactor so we only have one function that writes to the chip
Eric W. Biederman [Thu, 9 Nov 2006 01:44:57 +0000 (17:44 -0800)]
[PATCH] htirq: refactor so we only have one function that writes to the chip

This refactoring actually optimizes the code a little by caching the value
that we think the device is programmed with instead of reading it back from
the hardware.  Which simplifies the code a little and should speed things up a
bit.

This patch introduces the concept of a ht_irq_msg and modifies the
architecture read/write routines to update this code.

There is a minor consistency fix here as well as x86_64 forgot to initialize
the htirq as masked.

Signed-off-by: Eric W. Biederman <ebiederm@xmission.com>
Cc: Andi Kleen <ak@suse.de>
Acked-by: Bryan O'Sullivan <bos@pathscale.com>
Cc: <olson@pathscale.com>
Cc: Roland Dreier <rolandd@cisco.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
18 years ago[PATCH] ipmi_si_intf.c: fix "&& 0xff" typos
Alexey Dobriyan [Thu, 9 Nov 2006 01:44:56 +0000 (17:44 -0800)]
[PATCH] ipmi_si_intf.c: fix "&& 0xff" typos

Signed-off-by: Alexey Dobriyan <adobriyan@gmail.com>
Acked-by: Corey Minyard <minyard@acm.org>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
18 years ago[PATCH] IPMI: retry messages on certain error returns
Corey Minyard [Thu, 9 Nov 2006 01:44:55 +0000 (17:44 -0800)]
[PATCH] IPMI: retry messages on certain error returns

Some more errors from the IPMI send message command are retryable, but are not
being retried by the IPMI code.  Make sure they get retried.

Signed-off-by: Corey Minyard <minyard@acm.org>
Cc: Frederic Lelievre <Frederic.Lelievre@ca.kontron.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
18 years ago[PATCH] IPMI: Clean up the waiting message queue properly on unload
Corey Minyard [Thu, 9 Nov 2006 01:44:52 +0000 (17:44 -0800)]
[PATCH] IPMI: Clean up the waiting message queue properly on unload

A wrong function was being used to free a list; this fixes the problem.
Otherwise, an oops at unload time was possible.  But not likely, since you
can't have any users when you unload the modules and it is very hard to get
messages into this queue without users.

Signed-off-by: Corey Minyard <minyard@acm.org>
Cc: Patrick Schoeller <Patrick.Schoeller@hp.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
18 years ago[PATCH] sysctl: Undeprecate sys_sysctl
Eric W. Biederman [Thu, 9 Nov 2006 01:44:51 +0000 (17:44 -0800)]
[PATCH] sysctl: Undeprecate sys_sysctl

The basic issue is that despite have been deprecated and warned about as a
very bad thing in the man pages since its inception there are a few real
users of sys_sysctl.  It was my assumption that because sysctl had been
deprecated for all of 2.6 there would be no user space users by this point,
so I initially gave sys_sysctl a very short deprecation period.

Now that I know there are a few real users the only sane way to proceed
with deprecation is to push the time limit out to a year or two work and
work with distributions that have big testing pools like fedora core to
find these last remaining users.

Which means that the sys_sysctl interface needs to be maintained in the
meantime.

Since I have provided a technical measure that allows us to add new sysctl
entries without reserving more binary numbers I believe that is enough to
fix the sys_sysctl binary interface maintenance problems, because there is
no longer a need to change the binary interface at all.

Since the sys_sysctl implementation needs to stay around for a while and
the worst of the maintenance issues that caused us to occasionally break
the ABI have been addressed I don't see any advantage in continuing with
the removal of sys_sysctl.

So instead of merely increasing the deprecation period this patch removes
the deprecation of sys_sysctl and modifies the kernel to compile the code
in by default.

With committing to maintain sys_sysctl we get all of the advantages of a
fast interface for anything that needs it.  Currently sys_sysctl is about
5x faster than /proc/sys, for the same string data.

Signed-off-by: Eric W. Biederman <ebiederm@xmission.com>
Acked-by: Alan Cox <alan@redhat.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
18 years ago[PATCH] ia64: select ACPI_NUMA if ACPI
KAMEZAWA Hiroyuki [Thu, 9 Nov 2006 01:44:50 +0000 (17:44 -0800)]
[PATCH] ia64: select ACPI_NUMA if ACPI

When ACPI && NUMA, pxm_to_node is used and it exists in drivers/acpi/numa.c

Tony said:

  The patch makes sense ...  if you pick both of "ACPI" and "NUMA", then you
  need (and should automatically be given) ACPI_NUMA too.

  The only open question is whether there is a better way of getting there.
  Perhaps with less configuration options in the first place?  We are heading
  towards a future where so many systems will be NUMA that there would seem to
  be little benefit in keeping ACPI_NUMA separate from ACPI ...  but perhaps
  we aren't quite there yet.

Signed-off-by: KAMEZAWA Hiroyuki <kamezawa.hiroyu@jp.fujtisu.com>
Cc: Len Brown <lenb@kernel.org>
Acked-by: "Luck, Tony" <tony.luck@intel.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
18 years ago[PATCH] kretprobe: fix kretprobe-booster to save regs and set status
Masami Hiramatsu [Thu, 9 Nov 2006 01:44:49 +0000 (17:44 -0800)]
[PATCH] kretprobe: fix kretprobe-booster to save regs and set status

There are two bugs in the kretprobe-booster.

1) It doesn't make room for gs registers.

2) It doesn't change status of the current kprobe.  This status will
   effect the fault handling.

This patch fixes these bugs and, additionally, saves skipped registers for
compatibility with the original kretprobe.

Signed-off-by: Masami Hiramatsu <masami.hiramatsu.pt@hitachi.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
18 years ago[PATCH] md: do not freeze md threads for suspend
Rafael J. Wysocki [Thu, 9 Nov 2006 01:44:48 +0000 (17:44 -0800)]
[PATCH] md: do not freeze md threads for suspend

If there's a swap file on a software RAID, it should be possible to use this
file for saving the swsusp's suspend image.  Also, this file should be
available to the memory management subsystem when memory is being freed before
the suspend image is created.

For the above reasons it seems that md_threads should not be frozen during the
suspend and the appended patch makes this happen, but then there is the
question if they don't cause any data to be written to disks after the suspend
image has been created, provided that all filesystems are frozen at that time.

Signed-off-by: Neil Brown <neilb@suse.de>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
18 years ago[PATCH] md: fix sizing problem with raid5-reshape and CONFIG_LBD=n
NeilBrown [Thu, 9 Nov 2006 01:44:48 +0000 (17:44 -0800)]
[PATCH] md: fix sizing problem with raid5-reshape and CONFIG_LBD=n

I forgot to has the size-in-blocks to (loff_t) before shifting up to a
size-in-bytes.

Signed-off-by: Neil Brown <neilb@suse.de>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
18 years ago[PATCH] md: change ONLINE/OFFLINE events to a single CHANGE event
NeilBrown [Thu, 9 Nov 2006 01:44:47 +0000 (17:44 -0800)]
[PATCH] md: change ONLINE/OFFLINE events to a single CHANGE event

It turns out that CHANGE is preferred to ONLINE/OFFLINE for various reasons
(not least of which being that udev understands it already).

So remove the recently added KOBJ_OFFLINE (no-one is likely to care anyway)
and change the ONLINE to a CHANGE event

Cc: Kay Sievers <kay.sievers@vrfy.org>
Signed-off-by: Neil Brown <neilb@suse.de>
Cc: Greg KH <greg@kroah.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
18 years ago[PATCH] Tigran has moved
Tigran Aivazian [Thu, 9 Nov 2006 01:44:46 +0000 (17:44 -0800)]
[PATCH] Tigran has moved

Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
18 years ago[PATCH] drivers/telephony/ixj: fix an array overrun
Adrian Bunk [Thu, 9 Nov 2006 01:44:45 +0000 (17:44 -0800)]
[PATCH] drivers/telephony/ixj: fix an array overrun

The Coverity checker noted that in
drivers/telephony/ixj.c:ixj_build_filter_cadence(), filter_en[4] or
filter_en[5] could be written to.

Signed-off-by: Adrian Bunk <bunk@stusta.de>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
18 years ago[PATCH] dm: raid1: fix waiting for io on suspend
Jonathan E Brassow [Thu, 9 Nov 2006 01:44:44 +0000 (17:44 -0800)]
[PATCH] dm: raid1: fix waiting for io on suspend

All device-mapper targets must complete outstanding I/O before suspending.
The mirror target generates I/O in its recovery phase and fails to wait for
it.  It needs to be tracked so we can ensure that it has completed before we
suspend.

[akpm@osdl.org: cleanup]
Signed-off-by: Jonathan E Brassow <jbrassow@redhat.com>
Signed-off-by: Alasdair G Kergon <agk@redhat.com>
Cc: <dm-devel@redhat.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
18 years ago[PATCH] dm: multipath: fix rr_add_path order
Jonathan E Brassow [Thu, 9 Nov 2006 01:44:43 +0000 (17:44 -0800)]
[PATCH] dm: multipath: fix rr_add_path order

When adding paths to the round-robin path selector, their order gets inverted,
which is not desirable.

Fix by replacing list_add() with list_add_tail().

Signed-off-by: Jonathan E Brassow <jbrassow@redhat.com>
Signed-off-by: Alasdair G Kergon <agk@redhat.com>
Cc: <dm-devel@redhat.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
18 years ago[PATCH] dm: suspend: fix error path
Alasdair G Kergon [Thu, 9 Nov 2006 01:44:43 +0000 (17:44 -0800)]
[PATCH] dm: suspend: fix error path

If the device is already suspended, just return the error and skip the code
that would incorrectly wipe md->suspended_bdev.

(This isn't currently a problem because existing code avoids calling this
function if the device is already suspended.)

Signed-off-by: Alasdair G Kergon <agk@redhat.com>
Cc: <dm-devel@redhat.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
18 years ago[PATCH] dm: fix find_device race
Alasdair G Kergon [Thu, 9 Nov 2006 01:44:42 +0000 (17:44 -0800)]
[PATCH] dm: fix find_device race

There is a race between dev_create() and find_device().

If the mdptr has not yet been stored against a device, find_device() needs to
behave as though no device was found.  It already returns NULL, but there is a
dm_put() missing: it must drop the reference dm_get_md() took.

The bug was introduced by dm-fix-mapped-device-ref-counting.patch.

It manifests itself if another dm ioctl attempts to reference a newly-created
device while the device creation ioctl is still running.  The consequence is
that the device cannot be removed until the machine is rebooted.  Certain udev
configurations can lead to this happening.

Signed-off-by: Alasdair G Kergon <agk@redhat.com>
Cc: <dm-devel@redhat.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
18 years ago[PATCH] i386: Force data segment to be 4K aligned
Vivek Goyal [Thu, 9 Nov 2006 01:44:41 +0000 (17:44 -0800)]
[PATCH] i386: Force data segment to be 4K aligned

o Currently there is no specific alignment restriction in linker script
  and in some cases it can be placed non 4K aligned addresses. This fails
  kexec which checks that segment to be loaded is page aligned.

o I guess, it does not harm data segment to be 4K aligned.

Signed-off-by: Vivek Goyal <vgoyal@in.ibm.com>
Signed-off-by: Andi Kleen <ak@suse.de>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
18 years ago[PATCH] nfsd4: fix open-create permissions
J. Bruce Fields [Thu, 9 Nov 2006 01:44:40 +0000 (17:44 -0800)]
[PATCH] nfsd4: fix open-create permissions

In the case where an open creates the file, we shouldn't be rechecking
permissions to open the file; the open succeeds regardless of what the new
file's mode bits say.

This patch fixes the problem, but only by introducing yet another parameter
to nfsd_create_v3.  This is ugly.  This will be fixed by later patches.

Signed-off-by: J. Bruce Fields <bfields@citi.umich.edu>
Acked-by: Neil Brown <neilb@suse.de>
Cc: Jeff Garzik <jeff@garzik.org>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
18 years ago[PATCH] nfsd4: reindent do_open_lookup()
J. Bruce Fields [Thu, 9 Nov 2006 01:44:39 +0000 (17:44 -0800)]
[PATCH] nfsd4: reindent do_open_lookup()

Minor rearrangement, cleanup of do_open_lookup().  No change in behavior.

Signed-off-by: J. Bruce Fields <bfields@citi.umich.edu>
Acked-by: Neil Brown <neilb@suse.de>
Cc: Jeff Garzik <jeff@garzik.org>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
18 years ago[PATCH] A minor fix for set_mb() in Documentation/memory-barriers.txt
Oleg Nesterov [Thu, 9 Nov 2006 01:44:38 +0000 (17:44 -0800)]
[PATCH] A minor fix for set_mb() in Documentation/memory-barriers.txt

set_mb() is used by set_current_state() which needs mb(), not wmb().  I
think it would be right to assume that set_mb() implies mb(), all arches
seem to do just this.

Signed-off-by: Oleg Nesterov <oleg@tv-sign.ru>
Acked-by: David Howells <dhowells@redhat.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
18 years ago[PATCH] Regression in 2.6.19-rc microcode driver
Arjan van de Ven [Thu, 9 Nov 2006 01:44:37 +0000 (17:44 -0800)]
[PATCH] Regression in 2.6.19-rc microcode driver

If the microcode driver is built in (rather than module) there are some,
ehm, interesting effects happening due to the new "call out to userspace"
behavior that is introduced..  and which runs too early.  The result is a
boot hang; which is really nasty.

The patch below is a minimally safe patch to fix this regression for 2.6.19
by just not requesting actual microcode updates during early boot.  (That
is a good idea in general anyway)

The "real" fix is a lot more complex given the entire cpu hotplug scenario
(during cpu hotplug you normally need to load the microcode as well); but
the interactions for that are just really messy at this point; this fix at
least makes it work and avoids a full detangle of hotplug.

Signed-off-by: Arjan van de Ven <arjan@linux.intel.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
18 years ago[CIFS] Fix mount failure when domain not specified
Steve French [Wed, 8 Nov 2006 23:10:46 +0000 (23:10 +0000)]
[CIFS]  Fix mount failure when domain not specified

    Fixes Samba bugzilla #4176

    When users do not specify their domain on mount, 2.6.18 started sending
    default domain instead of a null domain (which was the only way on some
    servers to use a default domain).  Users of 2.6.18 who did not specify
    their domain name on mounts to certain common Windows servers that were
    members of a domain, but not the domain controller, would get mount
    failures which they did not get in 2.6.18

    This fixes that issue and should remove complaints about mount
    behavior changing.

Signed-off-by: Steve French <sfrench@us.ibm.com>