30 Jun, 2011

2 commits


29 Jun, 2011

1 commit

  • * 'usb-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/usb-2.6:
    MAINTAINERS: add myself as maintainer of USB/IP
    usb: r8a66597-hcd: fix cannot detect low/full speed device
    USB: ehci-ath79: fix a NULL pointer dereference
    USB: Add new FT232H chip to drivers/usb/serial/ftdi_sio.c
    usb/isp1760: Fix bug preventing the unlinking of control urbs
    USB: Fix up URB error codes to reflect implementation.
    xhci: Always set urb->status to zero for isoc endpoints.
    xhci: Add reset on resume quirk for asrock p67 host
    xHCI 1.0: Incompatible Device Error
    USB: don't let errors prevent system sleep
    USB: don't let the hub driver prevent system sleep
    USB: change maintainership of ohci-hcd and ehci-hcd
    xHCI 1.0: Force Stopped Event(FSE)
    xhci: Don't warn about zeroed bMaxBurst descriptor field.
    USB: Free bandwidth when usb_disable_device is called.
    xhci: Reject double add of active endpoints.
    USB: TI 3410/5052 USB Serial Driver: Fix mem leak when firmware is too big.
    usb: musb: gadget: clear TXPKTRDY flag when set FLUSHFIFO
    usb: musb: host: compare status for negative error values

    Linus Torvalds
     

27 Jun, 2011

2 commits

  • The 'encrypted' key type defines its own payload format which contains a
    symmetric key randomly generated that cannot be used directly to mount
    an eCryptfs filesystem, because it expects an authentication token
    structure.

    This patch introduces the new format 'ecryptfs' that allows to store an
    authentication token structure inside the encrypted key payload containing
    a randomly generated symmetric key, as the same for the format 'default'.

    More details about the usage of encrypted keys with the eCryptfs
    filesystem can be found in the file 'Documentation/keys-ecryptfs.txt'.

    Signed-off-by: Roberto Sassu
    Acked-by: Gianluca Ramunno
    Acked-by: Tyler Hicks
    Signed-off-by: Mimi Zohar

    Roberto Sassu
     
  • This patch introduces a new parameter, called 'format', that defines the
    format of data stored by encrypted keys. The 'default' format identifies
    encrypted keys containing only the symmetric key, while other formats can
    be defined to support additional information. The 'format' parameter is
    written in the datablob produced by commands 'keyctl print' or
    'keyctl pipe' and is integrity protected by the HMAC.

    Signed-off-by: Roberto Sassu
    Acked-by: Gianluca Ramunno
    Acked-by: David Howells
    Signed-off-by: Mimi Zohar

    Roberto Sassu
     

22 Jun, 2011

3 commits


19 Jun, 2011

1 commit


18 Jun, 2011

1 commit

  • Documentation/usb/error-codes.txt mentions that urb->status can be set to
    -EXDEV, if the isochronous transfer was not fully completed. However, in
    practice, EHCI, UHCI, and OHCI all only set -EXDEV in the individual frame
    status, never in the URB status. Those host controller actually always
    pass in a zero status to usb_hcd_giveback_urb, and rely on the core to set
    the appropriate status value.

    The xHCI driver ran into issues with the uvcvideo driver when it tried to
    set -EXDEV in urb->status, because the driver refused to submit URBs, and
    the userspace camera application's video froze.

    Clean up the documentation to reflect the actual implementation.

    Signed-off-by: Sarah Sharp
    Acked-by: Alan Stern

    Sarah Sharp
     

16 Jun, 2011

7 commits


15 Jun, 2011

2 commits

  • Commit a26ac2455ffcf3(rcu: move TREE_RCU from softirq to kthread)
    introduced performance regression. In an AIM7 test, this commit degraded
    performance by about 40%.

    The commit runs rcu callbacks in a kthread instead of softirq. We observed
    high rate of context switch which is caused by this. Out test system has
    64 CPUs and HZ is 1000, so we saw more than 64k context switch per second
    which is caused by RCU's per-CPU kthread. A trace showed that most of
    the time the RCU per-CPU kthread doesn't actually handle any callbacks,
    but instead just does a very small amount of work handling grace periods.
    This means that RCU's per-CPU kthreads are making the scheduler do quite
    a bit of work in order to allow a very small amount of RCU-related
    processing to be done.

    Alex Shi's analysis determined that this slowdown is due to lock
    contention within the scheduler. Unfortunately, as Peter Zijlstra points
    out, the scheduler's real-time semantics require global action, which
    means that this contention is inherent in real-time scheduling. (Yes,
    perhaps someone will come up with a workaround -- otherwise, -rt is not
    going to do well on large SMP systems -- but this patch will work around
    this issue in the meantime. And "the meantime" might well be forever.)

    This patch therefore re-introduces softirq processing to RCU, but only
    for core RCU work. RCU callbacks are still executed in kthread context,
    so that only a small amount of RCU work runs in softirq context in the
    common case. This should minimize ksoftirqd execution, allowing us to
    skip boosting of ksoftirqd for CONFIG_RCU_BOOST=y kernels.

    Signed-off-by: Shaohua Li
    Tested-by: "Alex,Shi"
    Signed-off-by: Paul E. McKenney

    Shaohua Li
     
  • * 'for-linus' of git://neil.brown.name/md:
    md/raid5: remove unusual use of bio_iovec_idx()
    md/raid5: fix FUA request handling in ops_run_io()
    md/raid5: fix raid5_set_bi_hw_segments
    md:Documentation/md.txt - fix typo
    md/bitmap: remove unused fields from struct bitmap
    md/bitmap: use proper accessor macro
    md: check ->hot_remove_disk when removing disk
    md: Using poll /proc/mdstat can monitor the events of adding a spare disks
    MD: use is_power_of_2 macro
    MD: raid5 do not set fullsync
    MD: support initial bitmap creation in-kernel
    MD: add sync_super to mddev_t struct
    MD: raid1 changes to allow use by device mapper
    MD: move thread wakeups into resume
    MD: possible typo
    MD: no sync IO while suspended
    MD: no integrity register if no gendisk

    Linus Torvalds
     

09 Jun, 2011

1 commit


08 Jun, 2011

1 commit

  • Some USB mass-storage devices have bugs that cause them not to handle
    the first READ(10) command they receive correctly. The Corsair
    Padlock v2 returns completely bogus data for its first read (possibly
    it returns the data in encrypted form even though the device is
    supposed to be unlocked). The Feiya SD/SDHC card reader fails to
    complete the first READ(10) command after it is plugged in or after a
    new card is inserted, returning a status code that indicates it thinks
    the command was invalid, which prevents the kernel from retrying the
    read.

    Since the first read of a new device or a new medium is for the
    partition sector, the kernel is unable to retrieve the device's
    partition table. Users have to manually issue an "hdparm -z" or
    "blockdev --rereadpt" command before they can access the device.

    This patch (as1470) works around the problem. It adds a new quirk
    flag, US_FL_INVALID_READ10, indicating that the first READ(10) should
    always be retried immediately, as should any failing READ(10) commands
    (provided the preceding READ(10) command succeeded, to avoid getting
    stuck in a loop). The patch also adds appropriate unusual_devs
    entries containing the new flag.

    Signed-off-by: Alan Stern
    Tested-by: Sven Geggus
    Tested-by: Paul Hartman
    CC: Matthew Dharm
    CC:
    Signed-off-by: Greg Kroah-Hartman

    Alan Stern
     

02 Jun, 2011

1 commit

  • * git://git.infradead.org/iommu-2.6:
    intel-iommu: Fix off-by-one in RMRR setup
    intel-iommu: Add domain check in domain_remove_one_dev_info
    intel-iommu: Remove Host Bridge devices from identity mapping
    intel-iommu: Use coherent DMA mask when requested
    intel-iommu: Dont cache iova above 32bit
    intel-iommu: Speed up processing of the identity_mapping function
    intel-iommu: Check for identity mapping candidate using system dma mask
    intel-iommu: Only unlink device domains from iommu
    intel-iommu: Enable super page (2MiB, 1GiB, etc.) support
    intel-iommu: Flush unmaps at domain_exit
    intel-iommu: Remove obsolete comment from detect_intel_iommu
    intel-iommu: fix VT-d PMR disable for TXT on S3 resume

    Linus Torvalds
     

01 Jun, 2011

1 commit

  • There are no externally-visible changes with this. In the loop in the
    internal __domain_mapping() function, we simply detect if we are mapping:
    - size >= 2MiB, and
    - virtual address aligned to 2MiB, and
    - physical address aligned to 2MiB, and
    - on hardware that supports superpages.

    (and likewise for larger superpages).

    We automatically use a superpage for such mappings. We never have to
    worry about *breaking* superpages, since we trust that we will always
    *unmap* the same range that was mapped. So all we need to do is ensure
    that dma_pte_clear_range() will also cope with superpages.

    Adjust pfn_to_dma_pte() to take a superpage 'level' as an argument, so
    it can return a PTE at the appropriate level rather than always
    extending the page tables all the way down to level 1. Again, this is
    simplified by the fact that we should never encounter existing small
    pages when we're creating a mapping; any old mapping that used the same
    virtual range will have been entirely removed and its obsolete page
    tables freed.

    Provide an 'intel_iommu=sp_off' argument on the command line as a
    chicken bit. Not that it should ever be required.

    ==

    The original commit seen in the iommu-2.6.git was Youquan's
    implementation (and completion) of my own half-baked code which I'd
    typed into an email. Followed by half a dozen subsequent 'fixes'.

    I've taken the unusual step of rewriting history and collapsing the
    original commits in order to keep the main history simpler, and make
    life easier for the people who are going to have to backport this to
    older kernels. And also so I can give it a more coherent commit comment
    which (hopefully) gives a better explanation of what's going on.

    The original sequence of commits leading to identical code was:

    Youquan Song (3):
    intel-iommu: super page support
    intel-iommu: Fix superpage alignment calculation error
    intel-iommu: Fix superpage level calculation error in dma_pfn_level_pte()

    David Woodhouse (4):
    intel-iommu: Precalculate superpage support for dmar_domain
    intel-iommu: Fix hardware_largepage_caps()
    intel-iommu: Fix inappropriate use of superpages in __domain_mapping()
    intel-iommu: Fix phys_pfn in __domain_mapping for sglist pages

    Signed-off-by: Youquan Song
    Signed-off-by: David Woodhouse

    Youquan Song
     

30 May, 2011

6 commits

  • No virtio device does this any more, so no need to clutter lguest with it.

    Signed-off-by: Rusty Russell

    Rusty Russell
     
  • ed16648eb5b86917f0b90bdcdbc857202da72f90 "Move kvm, uml, and lguest
    subdirectories" broke the lguest example launcher.

    Signed-off-by: Rusty Russell

    Rusty Russell
     
  • * 'for_linus' of git://git.kernel.org/pub/scm/linux/kernel/git/mjg59/platform-drivers-x86: (43 commits)
    acer-wmi: support integer return type from WMI methods
    msi-laptop: fix section mismatch in reference from the function load_scm_model_init
    acer-wmi: support to set communication device state by new wmid method
    acer-wmi: allow 64-bits return buffer from WMI methods
    acer-wmi: check the existence of internal 3G device when set capability
    platform/x86:delete two unused variables
    support wlan hotkey on Acer Travelmate 5735Z
    platform-x86: intel_mid_thermal: Fix memory leak
    platform/x86: Fix Makefile for intel_mid_powerbtn
    platform/x86: Simplify intel_mid_powerbtn
    acer-wmi: Delete out-of-date documentation
    acerhdf: Clean up includes
    acerhdf: Drop pointless dependency on THERMAL_HWMON
    acer-wmi: Update MAINTAINERS
    wmi: Orphan ACPI-WMI driver
    tc1100-wmi: Orphan driver
    acer-wmi: does not allow negative number set to initial device state
    platform/oaktrail: ACPI EC Extra driver for Oaktrail
    thinkpad_acpi: Convert printks to pr_
    thinkpad_acpi: Correct !CONFIG_THINKPAD_ACPI_VIDEO warning
    ...

    Linus Torvalds
     
  • Matthew Garrett
     
  • * 'release' of git://git.kernel.org/pub/scm/linux/kernel/git/lenb/linux-acpi-2.6:
    ACPI EC: remove redundant code
    ACPI: Add D3 cold state
    ACPI: processor: fix processor_physically_present in UP kernel
    ACPI: Split out custom_method functionality into an own driver
    ACPI: Cleanup custom_method debug stuff
    ACPI EC: enable MSI workaround for Quanta laptops
    ACPICA: Update to version 20110413
    ACPICA: Execute an orphan _REG method under the EC device
    ACPICA: Move ACPI_NUM_PREDEFINED_REGIONS to a more appropriate place
    ACPICA: Update internal address SpaceID for DataTable regions
    ACPICA: Add more methods eligible for NULL package element removal
    ACPICA: Split all internal Global Lock functions to new file - evglock
    ACPI: EC: add another DMI check for ASUS hardware
    ACPI EC: remove dead code
    ACPICA: Fix code divergence of global lock handling
    ACPICA: Use acpi_os_create_lock interface
    ACPI: osl, add acpi_os_create_lock interface
    ACPI:Fix goto flows in thermal-sys

    Linus Torvalds
     
  • * 'idle-release' of git://git.kernel.org/pub/scm/linux/kernel/git/lenb/linux-idle-2.6:
    x86 idle: deprecate mwait_idle() and "idle=mwait" cmdline param
    x86 idle: deprecate "no-hlt" cmdline param
    x86 idle APM: deprecate CONFIG_APM_CPU_IDLE
    x86 idle floppy: deprecate disable_hlt()
    x86 idle: EXPORT_SYMBOL(default_idle, pm_idle) only when APM demands it
    x86 idle: clarify AMD erratum 400 workaround
    idle governor: Avoid lock acquisition to read pm_qos before entering idle
    cpuidle: menu: fixed wrapping timers at 4.294 seconds

    Linus Torvalds
     

29 May, 2011

8 commits

  • mwait_idle() is a C1-only idle loop intended to be more efficient
    than HLT on SMP hardware that supports it.

    But mwait_idle() has been replaced by the more general
    mwait_idle_with_hints(), which handles both C1 and deeper C-states.
    ACPI uses only mwait_idle_with_hints(), and never uses mwait_idle().

    Deprecate mwait_idle() and the "idle=mwait" cmdline param
    to simplify the x86 idle code.

    After this change, kernels configured with
    (!CONFIG_ACPI=n && !CONFIG_INTEL_IDLE=n) when run on hardware
    that support MWAIT will simply use HLT. If MWAIT is desired
    on those systems, cpuidle and the cpuidle drivers above
    can be used.

    cc: x86@kernel.org
    cc: stable@kernel.org # .39.x
    Signed-off-by: Len Brown

    Len Brown
     
  • We'd rather that modern machines not check if HLT works on
    every entry into idle, for the benefit of machines that had
    marginal electricals 15-years ago. If those machines are still running
    the upstream kernel, they can use "idle=poll". The only difference
    will be that they'll now invoke HLT in machine_hlt().

    cc: x86@kernel.org # .39.x
    Signed-off-by: Len Brown

    Len Brown
     
  • We don't want to export the pm_idle function pointer to modules.
    Currently CONFIG_APM_CPU_IDLE w/ CONFIG_APM_MODULE forces us to.

    CONFIG_APM_CPU_IDLE is of dubious value, it runs only on 32-bit
    uniprocessor laptops that are over 10 years old. It calls into
    the BIOS during idle, and is known to cause a number of machines
    to fail.

    Removing CONFIG_APM_CPU_IDLE and will allow us to stop exporting
    pm_idle. Any systems that were calling into the APM BIOS
    at run-time will simply use HLT instead.

    cc: x86@kernel.org
    cc: Jiri Kosina
    cc: stable@kernel.org # .39.x
    Signed-off-by: Len Brown

    Len Brown
     
  • Plan to remove floppy_disable_hlt in 2012, an ancient
    workaround with comments that it should be removed.

    This allows us to remove clutter and a run-time branch
    from the idle code.

    WARN_ONCE() on invocation until it is removed.

    cc: x86@kernel.org
    cc: stable@kernel.org # .39.x
    Signed-off-by: Len Brown

    Len Brown
     
  • With /sys/kernel/debug/acpi/custom_method root can write
    to arbitrary memory and increase his priveleges, even if
    these are restricted.

    -> Make this an own debug .config option and warn about the
    security issue in the config description.

    -> Still keep acpi/debugfs.c which now only creates an empty
    /sys/kernel/debug/acpi directory. There might be other
    users of it later.

    Signed-off-by: Thomas Renninger
    Acked-by: Rafael J. Wysocki
    Acked-by: rui.zhang@intel.com
    Signed-off-by: Len Brown

    Thomas Renninger
     
  • * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/viro/vfs-2.6: (36 commits)
    Cache xattr security drop check for write v2
    fs: block_page_mkwrite should wait for writeback to finish
    mm: Wait for writeback when grabbing pages to begin a write
    configfs: remove unnecessary dentry_unhash on rmdir, dir rename
    fat: remove unnecessary dentry_unhash on rmdir, dir rename
    hpfs: remove unnecessary dentry_unhash on rmdir, dir rename
    minix: remove unnecessary dentry_unhash on rmdir, dir rename
    fuse: remove unnecessary dentry_unhash on rmdir, dir rename
    coda: remove unnecessary dentry_unhash on rmdir, dir rename
    afs: remove unnecessary dentry_unhash on rmdir, dir rename
    affs: remove unnecessary dentry_unhash on rmdir, dir rename
    9p: remove unnecessary dentry_unhash on rmdir, dir rename
    ncpfs: fix rename over directory with dangling references
    ncpfs: document dentry_unhash usage
    ecryptfs: remove unnecessary dentry_unhash on rmdir, dir rename
    hostfs: remove unnecessary dentry_unhash on rmdir, dir rename
    hfsplus: remove unnecessary dentry_unhash on rmdir, dir rename
    hfs: remove unnecessary dentry_unhash on rmdir, dir rename
    omfs: remove unnecessary dentry_unhash on rmdir, dir rneame
    udf: remove unnecessary dentry_unhash from rmdir, dir rename
    ...

    Linus Torvalds
     
  • …l/git/tip/linux-2.6-tip

    * 'core-urgent-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip:
    rcu: Start RCU kthreads in TASK_INTERRUPTIBLE state
    rcu: Remove waitqueue usage for cpu, node, and boost kthreads
    rcu: Avoid acquiring rcu_node locks in timer functions
    atomic: Add atomic_or()
    Documentation: Add statistics about nested locks
    rcu: Decrease memory-barrier usage based on semi-formal proof
    rcu: Make rcu_enter_nohz() pay attention to nesting
    rcu: Don't do reschedule unless in irq
    rcu: Remove old memory barriers from rcu_process_callbacks()
    rcu: Add memory barriers
    rcu: Fix unpaired rcu_irq_enter() from locking selftests

    Linus Torvalds
     
  • * 'next' of git://git.kernel.org/pub/scm/linux/kernel/git/djbw/async_tx: (33 commits)
    x86: poll waiting for I/OAT DMA channel status
    maintainers: add dma engine tree details
    dmaengine: add TODO items for future work on dma drivers
    dmaengine: Add API documentation for slave dma usage
    dmaengine/dw_dmac: Update maintainer-ship
    dmaengine: move link order
    dmaengine/dw_dmac: implement pause and resume in dwc_control
    dmaengine/dw_dmac: Replace spin_lock* with irqsave variants and enable submission from callback
    dmaengine/dw_dmac: Divide one sg to many desc, if sg len is greater than DWC_MAX_COUNT
    dmaengine/dw_dmac: set residue as total len in dwc_tx_status if status is !DMA_SUCCESS
    dmaengine/dw_dmac: don't call callback routine in case dmaengine_terminate_all() is called
    dmaengine: at_hdmac: pause: no need to wait for FIFO empty
    pch_dma: modify pci device table definition
    pch_dma: Support new device ML7223 IOH
    pch_dma: Support I2S for ML7213 IOH
    pch_dma: Fix DMA setting issue
    pch_dma: modify for checkpatch
    pch_dma: fix dma direction issue for ML7213 IOH video-in
    dmaengine: at_hdmac: use descriptor chaining help function
    dmaengine: at_hdmac: implement pause and resume in atc_control
    ...

    Fix up trivial conflict in drivers/dma/dw_dmac.c

    Linus Torvalds
     

28 May, 2011

3 commits

  • …ck/linux-2.6-rcu into core/urgent

    Ingo Molnar
     
  • Explain what the trailing "/1" on some lock class names of
    lock_stat output means.

    Reviewed-by: Yong Zhang
    Signed-off-by: Juri Lelli
    Signed-off-by: Peter Zijlstra
    Link: http://lkml.kernel.org/r/4DD4F6C1.5090701@gmail.com
    Signed-off-by: Ingo Molnar

    Juri Lelli
     
  • * git://git.infradead.org/mtd-2.6: (97 commits)
    mtd: kill CONFIG_MTD_PARTITIONS
    mtd: remove add_mtd_partitions, add_mtd_device and friends
    mtd: convert remaining users to mtd_device_register()
    mtd: samsung onenand: convert to mtd_device_register()
    mtd: omap2 onenand: convert to mtd_device_register()
    mtd: txx9ndfmc: convert to mtd_device_register()
    mtd: tmio_nand: convert to mtd_device_register()
    mtd: socrates_nand: convert to mtd_device_register()
    mtd: sharpsl: convert to mtd_device_register()
    mtd: s3c2410 nand: convert to mtd_device_register()
    mtd: ppchameleonevb: convert to mtd_device_register()
    mtd: orion_nand: convert to mtd_device_register()
    mtd: omap2: convert to mtd_device_register()
    mtd: nomadik_nand: convert to mtd_device_register()
    mtd: ndfc: convert to mtd_device_register()
    mtd: mxc_nand: convert to mtd_device_register()
    mtd: mpc5121_nfc: convert to mtd_device_register()
    mtd: jz4740_nand: convert to mtd_device_register()
    mtd: h1910: convert to mtd_device_register()
    mtd: fsmc_nand: convert to mtd_device_register()
    ...

    Fixed up trivial conflicts in
    - drivers/mtd/maps/integrator-flash.c: removed in ARM tree
    - drivers/mtd/maps/physmap.c: addition of afs partition probe type
    clashing with removal of CONFIG_MTD_PARTITIONS

    Linus Torvalds