28 Mar, 2008

2 commits


27 Mar, 2008

1 commit


26 Mar, 2008

4 commits


25 Mar, 2008

33 commits

  • * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/viro/vfs-2.6:
    [PATCH] get stack footprint of pathname resolution back to relative sanity
    [PATCH] double iput() on failure exit in hugetlb
    [PATCH] double dput() on failure exit in tiny-shmem
    [PATCH] fix up new filp allocators
    [PATCH] check for null vfsmount in dentry_open()
    [PATCH] reiserfs: eliminate private use of struct file in xattr
    [PATCH] sanitize hppfs
    hppfs pass vfsmount to dentry_open()
    [PATCH] restore export of do_kern_mount()

    Linus Torvalds
     
  • While backporting 72dc67a69690288538142df73a7e3ac66fea68dc, a gfn_to_page()
    call was duplicated instead of moved (due to an unrelated patch not being
    present in mainline). This caused a page reference leak, resulting in a
    fairly massive memory leak.

    Fix by removing the extraneous gfn_to_page() call.

    Signed-off-by: Avi Kivity

    Avi Kivity
     
  • init_rmode_tss was forgotten during the conversion from mmap_sem to
    slots_lock.

    INFO: task qemu-system-x86:3748 blocked for more than 120 seconds.
    Call Trace:
    [] __down_read+0x86/0x9e
    [] do_page_fault+0x346/0x78e
    [] trace_hardirqs_on_thunk+0x35/0x3a
    [] error_exit+0x0/0xa9
    [] copy_user_generic_string+0x17/0x40
    [] :kvm:kvm_write_guest_page+0x3e/0x5f
    [] :kvm_intel:init_rmode_tss+0xa7/0xf9
    [] :kvm_intel:vmx_vcpu_reset+0x10/0x38a
    [] :kvm:kvm_arch_vcpu_setup+0x20/0x53
    [] :kvm:kvm_vm_ioctl+0xad/0x1cf
    [] __lock_acquire+0x4f7/0xc28
    [] vfs_ioctl+0x21/0x6b
    [] do_vfs_ioctl+0x252/0x26b
    [] sys_ioctl+0x3c/0x5e
    [] system_call_after_swapgs+0x7b/0x80

    Signed-off-by: Marcelo Tosatti
    Signed-off-by: Avi Kivity

    Marcelo Tosatti
     
  • Do not assume that a shadow mapping will always point to the same host
    frame number. Fixes crash with madvise(MADV_DONTNEED).

    [avi: move after first printk(), add another printk()]

    Signed-off-by: Marcelo Tosatti
    Signed-off-by: Avi Kivity

    Marcelo Tosatti
     
  • is_rmap_pte() doesn't take into account io ptes, which have the avail bit set.

    Signed-off-by: Avi Kivity

    Avi Kivity
     
  • The vmx hardware state restore restores the tss selector and base address, but
    not its length. Usually, this does not matter since most of the tss contents
    is within the default length of 0x67. However, if a process is using ioperm()
    to grant itself I/O port permissions, an additional bitmap within the tss,
    but outside the default length is consulted. The effect is that the process
    will receive a SIGSEGV instead of transparently accessing the port.

    Fix by restoring the tss length. Note that i386 had this working already.

    Closes bugzilla 10246.

    Signed-off-by: Avi Kivity

    Avi Kivity
     
  • * git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/usb-2.6:
    USB: Fix cut-and-paste error in rtl8150.c
    USB: ehci: stop vt6212 bus hogging
    USB: sierra: add another device id
    USB: sierra: dma fixes
    USB: add support for Motorola ROKR Z6 cellphone in mass storage mode
    USB: isd200: fix memory leak in isd200_get_inquiry_data
    USB: pl2303: another product ID
    USB: new quirk flag to avoid Set-Interface
    USB: fix gadgetfs class request delegation

    Linus Torvalds
     
  • * git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/driver-2.6:
    driver core: debug for bad dev_attr_show() return value.
    UIO: add pgprot_noncached() to UIO mmap code

    Linus Torvalds
     
  • Revert as it is reported to cause problems for people.

    commit 4348a2dc49f9baecd34a9b0904245488c6189398
    Author: Shaohua Li
    Date: Wed Oct 24 10:45:08 2007 +0800

    pcie: utilize pcie transaction pending bit

    PCIE has a mechanism to wait for Non-Posted request to complete. I think
    pci_disable_device is a good place to do this.

    Signed-off-by: Shaohua Li
    Signed-off-by: Greg Kroah-Hartman

    Due to the regression reported at
    http://bugzilla.kernel.org/show_bug.cgi?id=10065

    Cc: Shaohua Li
    Cc: Soeren Sonnenburg
    Cc: "Rafael J. Wysocki"
    Signed-off-by: Andrew Morton
    Signed-off-by: Greg Kroah-Hartman

    Andrew Morton
     
  • lockdep goes off on the iova copy_reserved_iova() because it and a function
    it calls grabs locks in the from, and the to of the copy operation.

    The function grab locks of the same lock classes triggering the warning. The
    first lock grabbed is for the constant reserved areas that is never accessed
    after early boot. Technically you could do without grabbing the locks for the
    "from" structure its copying reserved areas from.

    But dropping the from locks to me looks wrong, even though it would be ok.

    The affected code only runs in early boot as its setting up the DMAR
    engines.

    This patch gives the reserved_ioval_list locks special lockdep classes.

    Signed-off-by: Mark Gross
    Signed-off-by: Andrew Morton
    Signed-off-by: Greg Kroah-Hartman

    Mark Gross
     
  • Try to find the culprit who caused
    http://bugzilla.kernel.org/show_bug.cgi?id=10150

    Cc:
    Signed-off-by: Andrew Morton
    Signed-off-by: Greg Kroah-Hartman

    Andrew Morton
     
  • Mapping of physical memory in UIO needs pgprot_noncached() to ensure
    that IO memory is not cached. Without pgprot_noncached(), it (accidentally)
    works on x86 and arm, but fails on PPC.

    Signed-off-by: Jean-Samuel Chenard
    Signed-off-by: Hans J Koch
    Cc: stable
    Signed-off-by: Greg Kroah-Hartman

    Jean-Samuel Chenard
     
  • Signed-off-by: Robert P. J. Day
    Signed-off-by: Greg Kroah-Hartman

    Robert P. J. Day
     
  • The VIA VT6212 defaults to only waiting 1us between passes over EHCI's
    async ring, which hammers PCI badly ... and by preventing other devices
    from accessing the bus, causes problems like drops in IDE throughput,
    a problem that's been bugging users of those chips for several years.

    A (partial) datasheet for this chip eventually turned up, letting us
    see how to make it use a VIA-specific register to switch over to the
    the normal 10us value instead, as suggested by the EHCI specification
    Solution noted by Lev A. Melnikovsky.

    It's not clear whether this register exists on other VIA chips; we
    know that it's ineffective on the vt8235. So this patch only applies
    to chips that seem to be incarnations of the (discrete) vt6212.

    Signed-off-by: Rene Herman
    Tested-by: Lev A. Melnikovsky
    Tested-by: Alessandro Suardi
    Signed-off-by: David Brownell
    Signed-off-by: Greg Kroah-Hartman

    Rene Herman
     
  • Add support for the MC8775 device to the sierra driver.

    Signed-off-by: Kevin Lloyd
    Signed-off-by: Greg Kroah-Hartman

    Kevin Lloyd
     
  • while I was adding autosuspend to that driver I noticed a few issues.
    You were having DMAed buffers as a part of a structure.
    This will fail on platforms that are not DMA-coherent (arm, sparc, ppc, ...)
    Please test this patch to fix it.

    Signed-off-by: Kevin Lloyd
    Signed-off-by: Greg Kroah-Hartman

    Oliver Neukum
     
  • Motorola ROKR Z6 cellphone has bugs in its USB, so it is impossible to use
    it as mass storage. Patch describes new "unusual" USB device for it with
    FIX_INQUIRY and FIX_CAPACITY flags and new BULK_IGNORE_TAG flag.
    Last flag relaxes check for equality of bcs->Tag and us->tag in
    usb_stor_Bulk_transport routine.

    Signed-off-by: Constantin Baranov
    Signed-off-by: Matthew Dharm
    Signed-off-by: Daniel Drake
    Cc: stable
    Signed-off-by: Greg Kroah-Hartman

    Constantin Baranov
     
  • If the inquiry fails then the info structure on us->extra was not freed.

    Signed-off-by: Boaz Harrosh
    Acked-by: Alan Stern
    Cc: James Bottomley
    Signed-off-by: Andrew Morton
    Signed-off-by: Greg Kroah-Hartman

    Boaz Harrosh
     
  • Device like this http://aldiga.com/english/A-100-USB-EDGE10.htm
    contains Prolific 2303 chip.
    Actually their site a bit outdated - I have AlDiga AL-11U
    GSM/GPRS/EDGE modem and it works with pl2303 module after adding
    corresponding product ID.

    By default modem uses baud rate 460800. GSM chipset - SIMCom SIM600,
    quad band 850/900/1800/1900 MHz

    Device info:

    T: Bus=04 Lev=01 Prnt=01 Port=00 Cnt=01 Dev#= 5 Spd=12 MxCh= 0
    D: Ver= 1.10 Cls=00(>ifc ) Sub=00 Prot=00 MxPS= 8 #Cfgs= 1
    P: Vendor=067b ProdID=0611 Rev= 0.00
    C:* #Ifs= 1 Cfg#= 1 Atr=a0 MxPwr=500mA
    I:* If#= 0 Alt= 0 #EPs= 3 Cls=ff(vend.) Sub=00 Prot=00 Driver=pl2303
    E: Ad=81(I) Atr=03(Int.) MxPS= 10 Ivl=1ms
    E: Ad=02(O) Atr=02(Bulk) MxPS= 64 Ivl=0ms
    E: Ad=83(I) Atr=02(Bulk) MxPS= 64 Ivl=0ms

    From: Max Arnold
    Signed-off-by: Greg Kroah-Hartman

    Max Arnold
     
  • This patch (as1057) fixes a problem with the X-Rite/Gretag-Macbeth
    Eye-One Pro display colorimeter; the device crashes when it receives a
    Set-Interface request. A new quirk (USB_QUIRK_NO_SET_INTF) is
    introduced and a quirks entry is created for this device.

    Signed-off-by: Alan Stern
    Cc: stable
    Signed-off-by: Greg Kroah-Hartman

    Alan Stern
     
  • gadgetfs (drivers/usb/gadget/inode.c) was not delegating all
    non-device requests to userspace. This patch makes the handling of
    all request cases consistent.

    Signed-off-by: Roy Hashimoto
    Acked-by: David Brownell
    Signed-off-by: Greg Kroah-Hartman

    Roy Hashimoto
     
  • * 'merge' of git://git.kernel.org/pub/scm/linux/kernel/git/paulus/powerpc:
    [POWERPC] mpc5200: Fix incorrect compatible string for the mdio node
    [POWERPC] Update some defconfigs

    Linus Torvalds
     
  • * 'upstream-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jgarzik/libata-dev:
    [libata] ahci: SB600 workaround is suspect... play it safe for now
    sata_promise: fix hardreset hotplug events, take 2
    libata: improve HPA error handling
    libata: assume no device is attached if both IDENTIFYs are aborted
    pata_it821x: use raw nbytes in check_atapi_dma
    libata: implement ata_qc_raw_nbytes()

    Linus Torvalds
     
  • At least one report claims that a878539ef994787c447a98c2e3ba0fe3dad984ec
    failed to solve lockups, whereas the old limit-to-32-bit trick worked.

    Restore the 32-bit limit, but also leave the 255-sector limit in place,
    because we know that's needed as well.

    Signed-off-by: Jeff Garzik

    Jeff Garzik
     
  • * git://git.kernel.org/pub/scm/linux/kernel/git/sam/kbuild-linus:
    kbuild: soften modpost checks when doing cross builds

    Linus Torvalds
     
  • Paul Mackerras
     
  • A Promise SATA controller will signal hotplug events when a hard
    reset (COMRESET) is done on a port. These events aren't masked by
    the driver, and the unexpected interrupts will cause a sequence
    of failed reset attempts util libata's EH finally gives up.

    This has not been a common problem so far, but the pending libata
    hardreset-by-default changes makes it a critical issue.

    The solution is to disable hotplug events before a reset, and to
    reenable them afterwards. (Promise's driver does this too.)

    This patch adds SATA-specific versions of ->freeze() and ->thaw()
    that also disable and enable hotplug events. PATA ports continue
    to use the old versions of ->freeze() and ->thaw().

    Accesses to the hotplug register must be serialised via host->lock.
    We rely on ap->lock == &ap->host->lock and that libata takes this
    lock before ->freeze() and ->thaw(). Document this requirement.
    The interrupt handler is adjusted so its hotplug register accesses
    are inside the region protected by host->lock.

    Tested on various chips (SATA300TX4, SATA300TX2plus, SATAII150TX4,
    FastTrack TX4000) with various combinations of SATA and PATA disks,
    with and without the pending hardreset-by-default changes.

    Signed-off-by: Mikael Pettersson
    Acked-by: Tejun Heo
    Signed-off-by: Jeff Garzik

    Mikael Pettersson
     
  • The printk() logic on when/how to get the console semaphore was
    unreadable, this splits the code up into a few helper functions and
    makes it easier to follow what is going on.

    Signed-off-by: Linus Torvalds

    Linus Torvalds
     
  • In case we're accounting from a sub-namespace, the tgids reported will not
    refer to the right namespace.

    Save the pid_namespace we're accounting in on the acct_glbs and use it in
    do_acct_process.

    Two less :) places using the task_struct.tgid member.

    Signed-off-by: Pavel Emelyanov
    Cc: Oleg Nesterov
    Cc: "Paul E. McKenney"
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Pavel Emelyanov
     
  • This is minor, but dereferencing even current real_parent is not safe on debug
    kernels, since the memory, this points to, can be unmapped - RCU protection is
    required.

    Besides, the tgid field is deprecated and is to be replaced with task_tgid_xxx
    call (the 2nd patch), so RCU will be required anyway.

    Signed-off-by: Pavel Emelyanov
    Cc: Oleg Nesterov
    Cc: "Paul E. McKenney"
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Pavel Emelyanov
     
  • Revert commit f1a9ee758de7de1e040de849fdef46e6802ea117:

    Author: Rik van Riel
    Date: Thu Feb 7 00:14:08 2008 -0800

    kswapd should only wait on IO if there is IO

    The current kswapd (and try_to_free_pages) code has an oddity where the
    code will wait on IO, even if there is no IO in flight. This problem is
    notable especially when the system scans through many unfreeable pages,
    causing unnecessary stalls in the VM.

    Additionally, tasks without __GFP_FS or __GFP_IO in the direct reclaim path
    will sleep if a significant number of pages are encountered that should be
    written out. This gives kswapd a chance to write out those pages, while
    the direct reclaim task sleeps.

    Signed-off-by: Rik van Riel
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Because of large latencies and interactivity problems reported by Carlos,
    here: http://lkml.org/lkml/2008/3/22/211

    Cc: Rik van Riel
    Cc: "Carlos R. Mafra"
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Andrew Morton
     
  • Update documentation for the hw_random support to be current:

    - Documentation/hw_random.txt has been updated to reflect the
    current code: it's a framework now, a "core" with a small
    sysfs interface, that hardware-specific drivers plug in to.
    Text specific to Intel hardware is now at the end.

    - Kconfig now references the Documentation/hw_random.txt file
    and better explains what this really does.

    Both chunks of documentation now higlight the fact that the kernel entropy
    pool is maintained by "rngd", and this driver has nothing directly to do with
    that important task.

    Signed-off-by: David Brownell
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    David Brownell
     
  • Older smackfs was parsing MAC rules by characters, thus a need of locking
    write sessions on open() was needed. This lock is no longer useful now since
    each rule is handled by a single write() call.

    This is also a bugfix since seq_open() was not called if an open() O_RDWR flag
    was given, leading to a seq_read() without an initialized seq_file, thus an
    Oops.

    Signed-off-by: Ahmed S. Darwish
    Reported-by: Jonathan Corbet
    Acked-by: Casey Schaufler
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Ahmed S. Darwish