12 May, 2013

8 commits

  • Modify the generic ACPI hotplug code to be able to check if devices
    scheduled for hot-removal may be gracefully removed from the system
    using the device offline/online mechanism introduced previously.

    Namely, make acpi_scan_hot_remove() handling device hot-removal call
    device_offline() for all physical companions of the ACPI device nodes
    involved in the operation and check the results. If any of the
    device_offline() calls fails, the function will not progress to the
    removal phase (which cannot be aborted), unless its (new) force
    argument is set (in case of a failing offline it will put the devices
    offlined by it back online).

    In support of 'forced' device hot-removal, add a new sysfs attribute
    'force_remove' that will reside under /sys/firmware/acpi/hotplug/.

    Signed-off-by: Rafael J. Wysocki
    Reviewed-by: Toshi Kani

    Rafael J. Wysocki
     
  • In some cases, graceful hot-removal of devices is not possible,
    although in principle the devices in question support hotplug.
    For example, that may happen for the last CPU in the system or
    for memory modules holding kernel memory.

    In those cases it is nice to be able to check if the given device
    can be gracefully hot-removed before triggering a removal procedure
    that cannot be aborted or reversed. Unfortunately, however, the
    kernel currently doesn't provide any support for that.

    To address that deficiency, introduce support for offline and
    online operations that can be performed on devices, respectively,
    before a hot-removal and in case when it is necessary (or convenient)
    to put a device back online after a successful offline (that has not
    been followed by removal). The idea is that the offline will fail
    whenever the given device cannot be gracefully removed from the
    system and it will not be allowed to use the device after a
    successful offline (until a subsequent online) in analogy with the
    existing CPU offline/online mechanism.

    For now, the offline and online operations are introduced at the
    bus type level, as that should be sufficient for the most urgent use
    cases (CPUs and memory modules). In the future, however, the
    approach may be extended to cover some more complicated device
    offline/online scenarios involving device drivers etc.

    The lock_device_hotplug() and unlock_device_hotplug() functions are
    introduced because subsequent patches need to put larger pieces of
    code under device_hotplug_lock to prevent race conditions between
    device offline and removal from happening.

    Signed-off-by: Rafael J. Wysocki
    Acked-by: Greg Kroah-Hartman
    Reviewed-by: Toshi Kani

    Rafael J. Wysocki
     
  • Fixes warning during compilation with clang.

    [rjw: Subject and changelog]
    Signed-off-by: Jan-Simon Möller
    Signed-off-by: Rafael J. Wysocki

    Jan-Simon Möller
     
  • The system suspend routine of the ACPI processor driver saves
    the BUS_MASTER_RLD register and its resume routine restores it.
    However, there can be only one such register in the system and it
    really should be saved after non-boot CPUs have been offlined and
    restored before they are put back online during resume.

    For this reason, move the saving and restoration of BUS_MASTER_RLD
    to syscore suspend and syscore resume, respectively, and drop the no
    longer necessary suspend/resume callbacks from the ACPI processor
    driver.

    Signed-off-by: Rafael J. Wysocki

    Rafael J. Wysocki
     
  • Pull tracing/kprobes update from Steven Rostedt:
    "The majority of these changes are from Masami Hiramatsu bringing
    kprobes up to par with the latest changes to ftrace (multi buffering
    and the new function probes).

    He also discovered and fixed some bugs in doing so. When pulling in
    his patches, I also found a few minor bugs as well and fixed them.

    This also includes a compile fix for some archs that select the ring
    buffer but not tracing.

    I based this off of the last patch you took from me that fixed the
    merge conflict error, as that was the commit that had all the changes
    I needed for this set of changes."

    * tag 'trace-fixes-v3.10' of git://git.kernel.org/pub/scm/linux/kernel/git/rostedt/linux-trace:
    tracing/kprobes: Support soft-mode disabling
    tracing/kprobes: Support ftrace_event_file base multibuffer
    tracing/kprobes: Pass trace_probe directly from dispatcher
    tracing/kprobes: Increment probe hit-count even if it is used by perf
    tracing/kprobes: Use bool for retprobe checker
    ftrace: Fix function probe when more than one probe is added
    ftrace: Fix the output of enabled_functions debug file
    ftrace: Fix locking in register_ftrace_function_probe()
    tracing: Add helper function trace_create_new_event() to remove duplicate code
    tracing: Modify soft-mode only if there's no other referrer
    tracing: Indicate enabled soft-mode in enable file
    tracing/kprobes: Fix to increment return event probe hit-count
    ftrace: Cleanup regex_lock and ftrace_lock around hash updating
    ftrace, kprobes: Fix a deadlock on ftrace_regex_lock
    ftrace: Have ftrace_regex_write() return either read or error
    tracing: Return error if register_ftrace_function_probe() fails for event_enable_func()
    tracing: Don't succeed if event_enable_func did not register anything
    ring-buffer: Select IRQ_WORK

    Linus Torvalds
     
  • Pull second SCSI update from James "Jaj B" Bottomley:
    "This is the final round of SCSI patches for the merge window. It
    consists mostly of driver updates (bnx2fc, ibmfc, fnic, lpfc,
    be2iscsi, pm80xx, qla4x and ipr).

    There's also the power management updates that complete the patches in
    Jens' tree, an iscsi refcounting problem fix from the last pull, some
    dif handling in scsi_debug fixes, a few nice code cleanups and an
    error handling busy bug fix."

    * tag 'scsi-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jejb/scsi: (92 commits)
    [SCSI] qla2xxx: Update firmware link in Kconfig file.
    [SCSI] iscsi class, qla4xxx: fix sess/conn refcounting when find fns are used
    [SCSI] sas: unify the pointlessly separated enums sas_dev_type and sas_device_type
    [SCSI] pm80xx: thermal, sas controller config and error handling update
    [SCSI] pm80xx: NCQ error handling changes
    [SCSI] pm80xx: WWN Modification for PM8081/88/89 controllers
    [SCSI] pm80xx: Changed module name and debug messages update
    [SCSI] pm80xx: Firmware flash memory free fix, with addition of new memory region for it
    [SCSI] pm80xx: SPC new firmware changes for device id 0x8081 alone
    [SCSI] pm80xx: Added SPCv/ve specific hardware functionalities and relevant changes in common files
    [SCSI] pm80xx: MSI-X implementation for using 64 interrupts
    [SCSI] pm80xx: Updated common functions common for SPC and SPCv/ve
    [SCSI] pm80xx: Multiple inbound/outbound queue configuration
    [SCSI] pm80xx: Added SPCv/ve specific ids, variables and modify for SPC
    [SCSI] lpfc: fix up Kconfig dependencies
    [SCSI] Handle MLQUEUE busy response in scsi_send_eh_cmnd
    [SCSI] sd: change to auto suspend mode
    [SCSI] sd: use REQ_PM in sd's runtime suspend operation
    [SCSI] qla4xxx: Fix iocb_cnt calculation in qla4xxx_send_mbox_iocb()
    [SCSI] ufs: Correct the expected data transfersize
    ...

    Linus Torvalds
     
  • Pull idle update from Len Brown:
    "Add support for new Haswell-ULT CPU idle power states"

    * 'release' of git://git.kernel.org/pub/scm/linux/kernel/git/lenb/linux:
    intel_idle: initial C8, C9, C10 support
    tools/power turbostat: display C8, C9, C10 residency

    Linus Torvalds
     
  • Pull audit changes from Eric Paris:
    "Al used to send pull requests every couple of years but he told me to
    just start pushing them to you directly.

    Our touching outside of core audit code is pretty straight forward. A
    couple of interface changes which hit net/. A simple argument bug
    calling audit functions in namei.c and the removal of some assembly
    branch prediction code on ppc"

    * git://git.infradead.org/users/eparis/audit: (31 commits)
    audit: fix message spacing printing auid
    Revert "audit: move kaudit thread start from auditd registration to kaudit init"
    audit: vfs: fix audit_inode call in O_CREAT case of do_last
    audit: Make testing for a valid loginuid explicit.
    audit: fix event coverage of AUDIT_ANOM_LINK
    audit: use spin_lock in audit_receive_msg to process tty logging
    audit: do not needlessly take a lock in tty_audit_exit
    audit: do not needlessly take a spinlock in copy_signal
    audit: add an option to control logging of passwords with pam_tty_audit
    audit: use spin_lock_irqsave/restore in audit tty code
    helper for some session id stuff
    audit: use a consistent audit helper to log lsm information
    audit: push loginuid and sessionid processing down
    audit: stop pushing loginid, uid, sessionid as arguments
    audit: remove the old depricated kernel interface
    audit: make validity checking generic
    audit: allow checking the type of audit message in the user filter
    audit: fix build break when AUDIT_DEBUG == 2
    audit: remove duplicate export of audit_enabled
    Audit: do not print error when LSMs disabled
    ...

    Linus Torvalds
     

11 May, 2013

3 commits

  • Pull stray syscall bits from Al Viro:
    "Several syscall-related commits that were missing from the original"

    * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/viro/signal:
    switch compat_sys_sysctl to COMPAT_SYSCALL_DEFINE
    unicore32: just use mmap_pgoff()...
    unify compat fanotify_mark(2), switch to COMPAT_SYSCALL_DEFINE
    x86, vm86: fix VM86 syscalls: use SYSCALL_DEFINEx(...)

    Linus Torvalds
     
  • Pull device-mapper updates from Alasdair Kergon:
    "Allow devices that hold metadata for the device-mapper thin
    provisioning target to be extended easily; allow WRITE SAME on
    multipath devices; an assortment of little fixes and clean-ups."

    * tag 'dm-3.10-changes-2' of git://git.kernel.org/pub/scm/linux/kernel/git/agk/linux-dm: (21 commits)
    dm cache: set config value
    dm cache: move config fns
    dm thin: generate event when metadata threshold passed
    dm persistent metadata: add space map threshold callback
    dm persistent data: add threshold callback to space map
    dm thin: detect metadata device resizing
    dm persistent data: support space map resizing
    dm thin: open dev read only when possible
    dm thin: refactor data dev resize
    dm cache: replace memcpy with struct assignment
    dm cache: fix typos in comments
    dm cache policy: fix description of lookup fn
    dm: document iterate_devices
    dm persistent data: fix error message typos
    dm cache: tune migration throttling
    dm mpath: enable WRITE SAME support
    dm table: fix write same support
    dm bufio: avoid a possible __vmalloc deadlock
    dm snapshot: fix error return code in snapshot_ctr
    dm cache: fix error return code in cache_create
    ...

    Linus Torvalds
     
  • Pull HID fixes from Jiri Kosina:

    - fix usage of sleeping lock in atomic context from Jiri Kosina

    - build fix for hid-steelseries under certain .config setups by Simon Wood

    - simple mismerge fix from Fernando Luis Vázquez Cao

    * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jikos/hid:
    HID: debug: fix RCU preemption issue
    HID: hid-steelseries fix led class build issue
    HID: reintroduce fix-up for certain Sony RF receivers

    Linus Torvalds
     

10 May, 2013

19 commits

  • Signed-off-by: James Bottomley

    James Bottomley
     
  • Signed-off-by: James Bottomley

    James Bottomley
     
  • Pull sound fixes from Takashi Iwai:
    "This contains small fixes since the previous pull request:

    - A few regression fixes and small updates of HD-audio

    - Yet another fix for Haswell HDMI audio

    - A copule of trivial fixes in ASoC McASP, DPAM and WM8994"

    * tag 'sound-3.10' of git://git.kernel.org/pub/scm/linux/kernel/git/tiwai/sound:
    Revert "ALSA: hda - Don't set up active streams twice"
    ALSA: Add comment for control TLV API
    ALSA: hda - Apply pin-enablement workaround to all Haswell HDMI codecs
    ALSA: HDA: Fix Oops caused by dereference NULL pointer
    ALSA: mips/sgio2audio: Remove redundant platform_set_drvdata()
    ALSA: mips/hal2: Remove redundant platform_set_drvdata()
    ALSA: hda - Fix 3.9 regression of EAPD init on Conexant codecs
    sound: Fix make allmodconfig on MIPS
    ALSA: hda - Fix system panic when DMA > 40 bits for Nvidia audio controllers
    ALSA: atmel: Remove redundant platform_set_drvdata()
    ASoC: McASP: Fix receive clock polarity in DAIFMT_NB_NF mode.
    ASoC: wm8994: missing break in wm8994_aif3_hw_params()
    ASoC: McASP: Add pins output direction for rx clocks when configured in CBS_CFS format
    ASoC: dapm: use clk_prepare_enable and clk_disable_unprepare

    Linus Torvalds
     
  • This fixes a bug where the iscsi class/driver did not do a put_device
    when a sess/conn device was found. This also simplifies the interface
    by not having to pass in some arguments that were duplicated and did
    not need to be exported.

    Reported-by: Zhao Hongjiang
    Signed-off-by: Mike Christie
    Acked-by: Vikas Chaudhary
    Signed-off-by: James Bottomley

    Mike Christie
     
  • These enums have been separate since the dawn of SAS, mainly because the
    latter is a procotol only enum and the former includes additional state
    for libsas. The dichotomy causes endless confusion about which one you
    should use where and leads to pointless warnings like this:

    drivers/scsi/mvsas/mv_sas.c: In function 'mvs_update_phyinfo':
    drivers/scsi/mvsas/mv_sas.c:1162:34: warning: comparison between 'enum sas_device_type' and 'enum sas_dev_type' [-Wenum-compare]

    Fix by eliminating one of them. The one kept is effectively the sas.h
    one, but call it sas_device_type and make sure the enums are all
    properly namespaced with the SAS_ prefix.

    Signed-off-by: James Bottomley

    James Bottomley
     
  • Document iterate_devices in device-mapper.h.

    Signed-off-by: Alasdair G Kergon

    Alasdair G Kergon
     
  • Modify soft-mode flag only if no other soft-mode referrer
    (currently only the ftrace triggers) by using a reference
    counter in each ftrace_event_file.

    Without this fix, adding and removing several different
    enable/disable_event triggers on the same event clear
    soft-mode bit from the ftrace_event_file. This also
    happens with a typo of glob on setting triggers.

    e.g.

    # echo vfs_symlink:enable_event:net:netif_rx > set_ftrace_filter
    # cat events/net/netif_rx/enable
    0*
    # echo typo_func:enable_event:net:netif_rx > set_ftrace_filter
    # cat events/net/netif_rx/enable
    0
    # cat set_ftrace_filter
    #### all functions enabled ####
    vfs_symlink:enable_event:net:netif_rx:unlimited

    As above, we still have a trigger, but soft-mode is gone.

    Link: http://lkml.kernel.org/r/20130509054429.30398.7464.stgit@mhiramat-M0-7522

    Cc: Srikar Dronamraju
    Cc: Oleg Nesterov
    Cc: Frederic Weisbecker
    Cc: Ingo Molnar
    Cc: David Sharp
    Cc: Hiraku Toyooka
    Cc: Tom Zanussi
    Signed-off-by: Masami Hiramatsu
    Signed-off-by: Steven Rostedt

    Masami Hiramatsu
     
  • Fix a deadlock on ftrace_regex_lock which happens when setting
    an enable_event trigger on dynamic kprobe event as below.

    ----
    sh-2.05b# echo p vfs_symlink > kprobe_events
    sh-2.05b# echo vfs_symlink:enable_event:kprobes:p_vfs_symlink_0 > set_ftrace_filter

    =============================================
    [ INFO: possible recursive locking detected ]
    3.9.0+ #35 Not tainted
    ---------------------------------------------
    sh/72 is trying to acquire lock:
    (ftrace_regex_lock){+.+.+.}, at: [] ftrace_set_hash+0x81/0x1f0

    but task is already holding lock:
    (ftrace_regex_lock){+.+.+.}, at: [] ftrace_regex_write.isra.29.part.30+0x3d/0x220

    other info that might help us debug this:
    Possible unsafe locking scenario:

    CPU0
    ----
    lock(ftrace_regex_lock);
    lock(ftrace_regex_lock);

    *** DEADLOCK ***
    ----

    To fix that, this introduces a finer regex_lock for each ftrace_ops.
    ftrace_regex_lock is too big of a lock which protects all
    filter/notrace_hash operations, but it doesn't need to be a global
    lock after supporting multiple ftrace_ops because each ftrace_ops
    has its own filter/notrace_hash.

    Link: http://lkml.kernel.org/r/20130509054417.30398.84254.stgit@mhiramat-M0-7522

    Cc: Srikar Dronamraju
    Cc: Oleg Nesterov
    Cc: Frederic Weisbecker
    Cc: Ingo Molnar
    Cc: Tom Zanussi
    Signed-off-by: Masami Hiramatsu
    [ Added initialization flag and automate mutex initialization for
    non ftrace.c ftrace_probes. ]
    Signed-off-by: Steven Rostedt

    Masami Hiramatsu
     
  • Pull NVMe driver update from Matthew Wilcox:
    "Lots of exciting new features in the NVM Express driver this time,
    including support for emulating SCSI commands, discard support and the
    ability to submit per-sector metadata with I/Os.

    It's still mostly bugfixes though!"

    * git://git.infradead.org/users/willy/linux-nvme: (27 commits)
    NVMe: Use user defined admin ioctl timeout
    NVMe: Simplify Firmware Activate code slightly
    NVMe: Only clear the enable bit when disabling controller
    NVMe: Wait for device to acknowledge shutdown
    NVMe: Schedule timeout for sync commands
    NVMe: Meta-data support in NVME_IOCTL_SUBMIT_IO
    NVMe: Device specific stripe size handling
    NVMe: Split non-mergeable bio requests
    NVMe: Remove dead code in nvme_dev_add
    NVMe: Check for NULL memory in nvme_dev_add
    NVMe: Fix error clean-up on nvme_alloc_queue
    NVMe: Free admin queue on request_irq error
    NVMe: Add scsi unmap to SG_IO
    NVMe: queue usage fixes in nvme-scsi
    NVMe: Set TASK_INTERRUPTIBLE before processing queues
    NVMe: Add a character device for each nvme device
    NVMe: Fix endian-related problems in user I/O submission path
    NVMe: Fix I/O cancellation status on big-endian machines
    NVMe: Fix sparse warnings in scsi emulation
    NVMe: Don't fail initialisation unnecessarily
    ...

    Linus Torvalds
     
  • Pull ARM SoC fixes and straggler patches from Olof Johansson:
    "A collection of fixes for fall out from 3.10 merge window, some build
    fixes and warning cleanups and a small handful of patches that were
    small and contained and made sense to still include in 3.10 (some of
    these have also been in -next since the merge window opened).

    Largest continous series is for OMAP, but there's a handful for other
    platforms.

    For i.MX, one of the patches are framebuffer fixups due to fallout
    during the merge window, and the other removes some stale and broken
    code."

    * tag 'fixes-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/arm/arm-soc: (34 commits)
    ARM: exynos: dts: Fixed vbus-gpios
    ARM: EXYNOS5: Fix kernel dump in AFTR idle mode
    ARM: ux500: Rid ignored return value of regulator_enable() compiler warning
    ARM: ux500: read the correct soc_id number
    ARM: exynos: dts: cros5250: add cyapa trackpad
    video: mxsfb: Adapt to new videomode API
    ARM: imx: Select GENERIC_ALLOCATOR
    ARM: imx: compile fix for hotplug.c
    ARM: dts: don't assume boards are using twl4030 for omap3
    ARM: OMAP2+: Remove bogus IS_ERR_OR_NULL checking from id.c
    ARM: dts: Configure and fix the McSPI pins for 4430sdp
    ARM: dts: AM33XX: Add GPMC node
    ARM: dts: OMAP4460: Fix CPU OPP voltages
    ARM: dts: OMAP36xx: Fix CPU OPP voltages
    ARM: OMAP4+: omap2plus_defconfig: Enable audio via TWL6040 as module
    ARM: OMAP2: AM33XX: id: Add support for new AM335x PG2.1 Si
    omap: mux: add AM/DM37x gpios
    ARM: OMAP1: DMA: fix error handling in omap1_system_dma_init()
    ARM: OMAP2+: omap_device: use late_initcall_sync
    ARM: OMAP: RX-51: change probe order of touchscreen and panel SPI devices
    ...

    Linus Torvalds
     
  • Pull btrfs update from Chris Mason:
    "These are mostly fixes. The biggest exceptions are Josef's skinny
    extents and Jan Schmidt's code to rebuild our quota indexes if they
    get out of sync (or you enable quotas on an existing filesystem).

    The skinny extents are off by default because they are a new variation
    on the extent allocation tree format. btrfstune -x enables them, and
    the new format makes the extent allocation tree about 30% smaller.

    I rebased this a few days ago to rework Dave Sterba's crc checks on
    the super block, but almost all of these go back to rc6, since I
    though 3.9 was due any minute.

    The biggest missing fix is the tracepoint bug that was hit late in
    3.9. I ran into problems with that in overnight testing and I'm still
    tracking it down. I'll definitely have that fixed for rc2."

    * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/mason/linux-btrfs: (101 commits)
    Btrfs: allow superblock mismatch from older mkfs
    btrfs: enhance superblock checks
    btrfs: fix misleading variable name for flags
    btrfs: use unsigned long type for extent state bits
    Btrfs: improve the loop of scrub_stripe
    btrfs: read entire device info under lock
    btrfs: remove unused gfp mask parameter from release_extent_buffer callchain
    btrfs: handle errors returned from get_tree_block_key
    btrfs: make static code static & remove dead code
    Btrfs: deal with errors in write_dev_supers
    Btrfs: remove almost all of the BUG()'s from tree-log.c
    Btrfs: deal with free space cache errors while replaying log
    Btrfs: automatic rescan after "quota enable" command
    Btrfs: rescan for qgroups
    Btrfs: split btrfs_qgroup_account_ref into four functions
    Btrfs: allocate new chunks if the space is not enough for global rsv
    Btrfs: separate sequence numbers for delayed ref tracking and tree mod log
    btrfs: move leak debug code to functions
    Btrfs: return free space in cow error path
    Btrfs: set UUID in root_item for created trees
    ...

    Linus Torvalds
     
  • Since commit 657eee7 (media: coda: use genalloc API) the following build
    error happens with imx_v4_v5_defconfig:

    drivers/built-in.o: In function 'coda_remove':
    clk-composite.c:(.text+0x112180): undefined reference to 'gen_pool_free'
    drivers/built-in.o: In function 'coda_probe':
    clk-composite.c:(.text+0x112310): undefined reference to 'of_get_named_gen_pool'
    clk-composite.c:(.text+0x1123f4): undefined reference to 'gen_pool_alloc'
    clk-composite.c:(.text+0x11240c): undefined reference to 'gen_pool_virt_to_phys'
    clk-composite.c:(.text+0x112458): undefined reference to 'dev_get_gen_pool'

    Select GENERIC_ALLOCATOR and get rid of the custom IRAM_ALLOC.

    Signed-off-by: Fabio Estevam
    Signed-off-by: Shawn Guo
    Signed-off-by: Olof Johansson

    Fabio Estevam
     
  • Signed-off-by: Al Viro

    Al Viro
     
  • Pull more NFS client bugfixes from Trond Myklebust:

    - Ensure that we match the 'sec=' mount flavour against the server list

    - Fix the NFSv4 byte range locking in the presence of delegations

    - Ensure that we conform to the NFSv4.1 spec w.r.t. freeing lock
    stateids

    - Fix a pNFS data server connection race

    * tag 'nfs-for-3.10-2' of git://git.linux-nfs.org/projects/trondmy/linux-nfs:
    NFS4.1 Fix data server connection race
    NFSv3: match sec= flavor against server list
    NFSv4.1: Ensure that we free the lock stateid on the server
    NFSv4: Convert nfs41_free_stateid to use an asynchronous RPC call
    SUNRPC: Don't spam syslog with "Pseudoflavor not found" messages
    NFSv4.x: Fix handling of partially delegated locks

    Linus Torvalds
     
  • Pull networking update from David Miller:

    1) Propagate return error values properly in irda, spider_net, sfc, and
    bfin_mac. From Wei Yongjun.

    2) Fix fec driver OOPS on rapid link up/down, from Frank Li.

    3) FIX VF resource allocation and chip message payload length errors in
    be2net driver, from Sathya Perla.

    4) Fix inner protocol inspection during GSO from Pravin B Shelar.

    * git://git.kernel.org/pub/scm/linux/kernel/git/davem/net:
    if_cablemodem.h: Add parenthesis around ioctl macros
    gso: Handle Trans-Ether-Bridging protocol in skb_network_protocol()
    net: fec: fix kernel oops when plug/unplug cable many times
    bfin_mac: fix error return code in bfin_mac_probe()
    sfc: fix return value check in efx_ptp_probe_channel()
    net/spider_net: fix error return code in spider_net_open()
    net/irda: fix error return code in bfin_sir_open()
    net: of_mdio: fix behavior on missing phy device
    sierra_net: keep status interrupt URB active
    usbnet: allow status interrupt URB to always be active
    qmi_wwan/cdc_ether: add device IDs for Dell 5804 (Novatel E371) WWAN card
    be2net: disable TX in be_close()
    be2net: fix EQ from getting full while cleaning RX CQ
    be2net: fix payload_len value for GET_MAC_LIST cmd req
    be2net: provision VF resources before enabling SR-IOV

    Linus Torvalds
     
  • Pull MTD update from David Woodhouse:

    - Lots of cleanups from Artem, including deletion of some obsolete
    drivers

    - Support partitions larger than 4GiB in device tree

    - Support for new SPI chips

    * tag 'for-linus-20130509' of git://git.infradead.org/linux-mtd: (83 commits)
    mtd: omap2: Use module_platform_driver()
    mtd: bf5xx_nand: Use module_platform_driver()
    mtd: denali_dt: Remove redundant use of of_match_ptr
    mtd: denali_dt: Change return value to fix smatch warning
    mtd: denali_dt: Use module_platform_driver()
    mtd: denali_dt: Fix incorrect error check
    mtd: nand: subpage write support for hardware based ECC schemes
    mtd: omap2: use msecs_to_jiffies()
    mtd: nand_ids: use size macros
    mtd: nand_ids: improve LEGACY_ID_NAND macro a bit
    mtd: add 4 Toshiba nand chips for the full-id case
    mtd: add the support to parse out the full-id nand type
    mtd: add new fields to nand_flash_dev{}
    mtd: sh_flctl: Use of_match_ptr() macro
    mtd: gpio: Use of_match_ptr() macro
    mtd: gpio: Use devm_kzalloc()
    mtd: davinci_nand: Use of_match_ptr()
    mtd: dataflash: Use of_match_ptr() macro
    mtd: remove h720x flash support
    mtd: onenand: remove OneNAND simulator
    ...

    Linus Torvalds
     
  • Pull removal of GENERIC_GPIO from Grant Likely:
    "GENERIC_GPIO now synonymous with GPIOLIB. There are no longer any
    valid cases for enableing GENERIC_GPIO without GPIOLIB, even though it
    is possible to do so which has been causing confusion and breakage.
    This branch does the work to completely eliminate GENERIC_GPIO."

    * tag 'gpio-for-linus' of git://git.secretlab.ca/git/linux:
    gpio: update gpio Chinese documentation
    Remove GENERIC_GPIO config option
    Convert selectors of GENERIC_GPIO to GPIOLIB
    blackfin: force use of gpiolib
    m68k: coldfire: use gpiolib
    mips: pnx833x: remove requirement for GENERIC_GPIO
    openrisc: default GENERIC_GPIO to false
    avr32: default GENERIC_GPIO to false
    xtensa: remove explicit selection of GENERIC_GPIO
    sh: replace CONFIG_GENERIC_GPIO by CONFIG_GPIOLIB
    powerpc: remove redundant GENERIC_GPIO selection
    unicore32: default GENERIC_GPIO to false
    unicore32: remove unneeded select GENERIC_GPIO
    arm: plat-orion: use GPIO driver on CONFIG_GPIOLIB
    arm: remove redundant GENERIC_GPIO selection
    mips: alchemy: require gpiolib
    mips: txx9: change GENERIC_GPIO to GPIOLIB
    mips: loongson: use GPIO driver on CONFIG_GPIOLIB
    mips: remove redundant GENERIC_GPIO select

    Linus Torvalds
     
  • Pull slave-dmaengine updates from Vinod Koul:
    "This time we have dmatest improvements from Andy along with dw_dmac
    fixes. He has also done support for acpi for dmanegine.

    Also we have bunch of fixes going in DT support for dmanegine for
    various folks. Then Haswell and other ioat changes from Dave and
    SUDMAC support from Shimoda."

    * 'for-linus' of git://git.infradead.org/users/vkoul/slave-dma: (53 commits)
    dma: tegra: implement suspend/resume callbacks
    dma:of: Use a mutex to protect the of_dma_list
    dma: of: Fix of_node reference leak
    dmaengine: sirf: move driver init from module_init to subsys_initcall
    sudmac: add support for SUDMAC
    dma: sh: add Kconfig
    at_hdmac: move to generic DMA binding
    ioatdma: ioat3_alloc_sed can be static
    ioatdma: Adding write back descriptor error status support for ioatdma 3.3
    ioatdma: S1200 platforms ioatdma channel 2 and 3 falsely advertise RAID cap
    ioatdma: Adding support for 16 src PQ ops and super extended descriptors
    ioatdma: Removing hw bug workaround for CB3.x .2 and earlier
    dw_dmac: add ACPI support
    dmaengine: call acpi_dma_request_slave_channel as well
    dma: acpi-dma: introduce ACPI DMA helpers
    dma: of: Remove unnecessary list_empty check
    DMA: OF: Check properties value before running be32_to_cpup() on it
    DMA: of: Constant names
    ioatdma: skip silicon bug workaround for pq_align for cb3.3
    ioatdma: Removing PQ val disable for cb3.3
    ...

    Linus Torvalds
     
  • Pull thermal management update from Zhang Rui:
    "The most important one is to build thermal core and governor and cpu
    cooling code into one module. This fixes a regression that thermal
    core does not work if it is built as module, since 3.7. I'll backport
    them to stable kernel once those changes are in upstream.

    The largest batch is the thermal kernel-doc & coding style
    updates/cleanups from Eduardo.

    Highlights:

    - build all thermal framework code into one module to fix a
    regression that thermal does not work if it is built as module.

    - Marvell Armada 370/XP thermal sensor driver

    - thermal core/cpu cooling kernel-doc & coding style updates and
    cleanups.

    - Add Eduardo Valentin as thermal sub-maintainer, both in mailing
    list and patchwork. He will help me on arm thermal drivers."

    * 'next' of git://git.kernel.org/pub/scm/linux/kernel/git/rzhang/linux: (68 commits)
    thermal: db8500_cpufreq_cooling: remove usage of IS_ERR_OR_NULL()
    thermal: thermal_core: remove usage of IS_ERR_OR_NULL
    thermal: cpu_cooling: improve line breaking
    thermal: cpu_cooling: alignment improvements
    thermal: cpu_cooling: remove checkpatch.pl warning
    thermal: cpu_cooling: remove trailing blank line
    thermal: cpu_cooling: align on open parenthesis
    thermal: cpu_cooling: standardize comment style
    thermal: cpu_cooling: standardize end of function
    thermal: cpu_cooling: remove trailing white spaces
    Thermal: update documentation for thermal_zone_device_register
    thermal: update kernel-doc for thermal_zone_device_register
    thermal: update kernel-doc for create_trip_attrs
    thermal: update kernel-doc for thermal_cooling_device_register
    thermal: update kernel-doc for thermal_zone_unbind_cooling_device
    thermal: update kernel-doc for thermal_zone_bind_cooling_device
    thermal: use EXPORT_SYMBOL_GPL
    thermal: rename notify_thermal_framework to thermal_notify_framework
    thermal: update driver license
    thermal: use strlcpy instead of strcpy
    ...

    Linus Torvalds
     

09 May, 2013

6 commits

  • Pull InfiniBand/RDMA changes from Roland Dreier:
    - XRC transport fixes
    - Fix DHCP on IPoIB
    - mlx4 preparations for flow steering
    - iSER fixes
    - miscellaneous other fixes

    * tag 'rdma-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/roland/infiniband: (23 commits)
    IB/iser: Add support for iser CM REQ additional info
    IB/iser: Return error to upper layers on EAGAIN registration failures
    IB/iser: Move informational messages from error to info level
    IB/iser: Add module version
    mlx4_core: Expose a few helpers to fill DMFS HW strucutures
    mlx4_core: Directly expose fields of DMFS HW rule control segment
    mlx4_core: Change a few DMFS fields names to match firmare spec
    mlx4: Match DMFS promiscuous field names to firmware spec
    mlx4_core: Move DMFS HW structs to common header file
    IB/mlx4: Set link type for RAW PACKET QPs in the QP context
    IB/mlx4: Disable VLAN stripping for RAW PACKET QPs
    mlx4_core: Reduce warning message for SRQ_LIMIT event to debug level
    RDMA/iwcm: Don't touch cmid after dropping reference
    IB/qib: Correct qib_verbs_register_sysfs() error handling
    IB/ipath: Correct ipath_verbs_register_sysfs() error handling
    RDMA/cxgb4: Fix SQ allocation when on-chip SQ is disabled
    SRPT: Fix odd use of WARN_ON()
    IPoIB: Fix ipoib_hard_header() return value
    RDMA: Rename random32() to prandom_u32()
    RDMA/cxgb3: Fix uninitialized variable
    ...

    Linus Torvalds
     
  • Pull f2fs updates from Jaegeuk Kim:
    "This patch-set includes the following major enhancement patches.
    - introduce a new gloabl lock scheme
    - add tracepoints on several major functions
    - fix the overall cleaning process focused on victim selection
    - apply the block plugging to merge IOs as much as possible
    - enhance management of free nids and its list
    - enhance the readahead mode for node pages
    - address several cretical deadlock conditions
    - reduce lock_page calls

    The other minor bug fixes and enhancements are as follows.
    - calculation mistakes: overflow
    - bio types: READ, READA, and READ_SYNC
    - fix the recovery flow, data races, and null pointer errors"

    * tag 'f2fs-for-v3.10' of git://git.kernel.org/pub/scm/linux/kernel/git/jaegeuk/f2fs: (68 commits)
    f2fs: cover free_nid management with spin_lock
    f2fs: optimize scan_nat_page()
    f2fs: code cleanup for scan_nat_page() and build_free_nids()
    f2fs: bugfix for alloc_nid_failed()
    f2fs: recover when journal contains deleted files
    f2fs: continue to mount after failing recovery
    f2fs: avoid deadlock during evict after f2fs_gc
    f2fs: modify the number of issued pages to merge IOs
    f2fs: remove useless #include as we're now using sysfs as debug entry.
    f2fs: fix inconsistent using of NM_WOUT_THRESHOLD
    f2fs: check truncation of mapping after lock_page
    f2fs: enhance alloc_nid and build_free_nids flows
    f2fs: add a tracepoint on f2fs_new_inode
    f2fs: check nid == 0 in add_free_nid
    f2fs: add REQ_META about metadata requests for submit
    f2fs: give a chance to merge IOs by IO scheduler
    f2fs: avoid frequent background GC
    f2fs: add tracepoints to debug checkpoint request
    f2fs: add tracepoints for write page operations
    f2fs: add tracepoints to debug the block allocation
    ...

    Linus Torvalds
     
  • Protect the SIOCGCM* ioctl macros with parenthesis.

    Reported-by: Paul Wouters
    Signed-off-by: Josh Boyer
    Signed-off-by: David S. Miller

    Josh Boyer
     
  • Some drivers (sierra_net) need the status interrupt URB
    active even when the device is closed, because they receive
    custom indications from firmware. Add functions to refcount
    the status interrupt URB submit/kill operation so that
    sub-drivers and the generic driver don't fight over whether
    the status interrupt URB is active or not.

    A sub-driver can call usbnet_status_start() at any time, but
    the URB is only submitted the first time the function is
    called. Likewise, when the sub-driver is done with the URB,
    it calls usbnet_status_stop() but the URB is only killed when
    all users have stopped it. The URB is still killed and
    re-submitted for suspend/resume, as before, with the same
    refcount it had at suspend.

    Signed-off-by: Dan Williams
    Acked-by: Oliver Neukum
    Signed-off-by: David S. Miller

    Dan Williams
     
  • Pull block driver updates from Jens Axboe:
    "It might look big in volume, but when categorized, not a lot of
    drivers are touched. The pull request contains:

    - mtip32xx fixes from Micron.

    - A slew of drbd updates, this time in a nicer series.

    - bcache, a flash/ssd caching framework from Kent.

    - Fixes for cciss"

    * 'for-3.10/drivers' of git://git.kernel.dk/linux-block: (66 commits)
    bcache: Use bd_link_disk_holder()
    bcache: Allocator cleanup/fixes
    cciss: bug fix to prevent cciss from loading in kdump crash kernel
    cciss: add cciss_allow_hpsa module parameter
    drivers/block/mg_disk.c: add CONFIG_PM_SLEEP to suspend/resume functions
    mtip32xx: Workaround for unaligned writes
    bcache: Make sure blocksize isn't smaller than device blocksize
    bcache: Fix merge_bvec_fn usage for when it modifies the bvm
    bcache: Correctly check against BIO_MAX_PAGES
    bcache: Hack around stuff that clones up to bi_max_vecs
    bcache: Set ra_pages based on backing device's ra_pages
    bcache: Take data offset from the bdev superblock.
    mtip32xx: mtip32xx: Disable TRIM support
    mtip32xx: fix a smatch warning
    bcache: Disable broken btree fuzz tester
    bcache: Fix a format string overflow
    bcache: Fix a minor memory leak on device teardown
    bcache: Documentation updates
    bcache: Use WARN_ONCE() instead of __WARN()
    bcache: Add missing #include
    ...

    Linus Torvalds
     
  • Pull block core updates from Jens Axboe:

    - Major bit is Kents prep work for immutable bio vecs.

    - Stable candidate fix for a scheduling-while-atomic in the queue
    bypass operation.

    - Fix for the hang on exceeded rq->datalen 32-bit unsigned when merging
    discard bios.

    - Tejuns changes to convert the writeback thread pool to the generic
    workqueue mechanism.

    - Runtime PM framework, SCSI patches exists on top of these in James'
    tree.

    - A few random fixes.

    * 'for-3.10/core' of git://git.kernel.dk/linux-block: (40 commits)
    relay: move remove_buf_file inside relay_close_buf
    partitions/efi.c: replace useless kzalloc's by kmalloc's
    fs/block_dev.c: fix iov_shorten() criteria in blkdev_aio_read()
    block: fix max discard sectors limit
    blkcg: fix "scheduling while atomic" in blk_queue_bypass_start
    Documentation: cfq-iosched: update documentation help for cfq tunables
    writeback: expose the bdi_wq workqueue
    writeback: replace custom worker pool implementation with unbound workqueue
    writeback: remove unused bdi_pending_list
    aoe: Fix unitialized var usage
    bio-integrity: Add explicit field for owner of bip_buf
    block: Add an explicit bio flag for bios that own their bvec
    block: Add bio_alloc_pages()
    block: Convert some code to bio_for_each_segment_all()
    block: Add bio_for_each_segment_all()
    bounce: Refactor __blk_queue_bounce to not use bi_io_vec
    raid1: use bio_copy_data()
    pktcdvd: Use bio_reset() in disabled code to kill bi_idx usage
    pktcdvd: use bio_copy_data()
    block: Add bio_copy_data()
    ...

    Linus Torvalds
     

08 May, 2013

4 commits

  • Add definitions for the three Firmware Activate actions, and change the
    SCSI translation code to construct the command into a temporary variable
    instead of translating the endianness back-and-forth.

    Signed-off-by: Matthew Wilcox
    Reviewed-by: Vishal Verma

    Matthew Wilcox
     
  • Userspace is not meant to have to handle all strange dB ranges,
    so add a specification comment.

    Signed-off-by: David Henningsson
    Signed-off-by: Takashi Iwai

    David Henningsson
     
  • Merge more incoming from Andrew Morton:

    - Various fixes which were stalled or which I picked up recently

    - A large rotorooting of the AIO code. Allegedly to improve
    performance but I don't really have good performance numbers (I might
    have lost the email) and I can't raise Kent today. I held this out
    of 3.9 and we could give it another cycle if it's all too late/scary.

    I ended up taking only the first two thirds of the AIO rotorooting. I
    left the percpu parts and the batch completion for later. - Linus

    * emailed patches from Andrew Morton : (33 commits)
    aio: don't include aio.h in sched.h
    aio: kill ki_retry
    aio: kill ki_key
    aio: give shared kioctx fields their own cachelines
    aio: kill struct aio_ring_info
    aio: kill batch allocation
    aio: change reqs_active to include unreaped completions
    aio: use cancellation list lazily
    aio: use flush_dcache_page()
    aio: make aio_read_evt() more efficient, convert to hrtimers
    wait: add wait_event_hrtimeout()
    aio: refcounting cleanup
    aio: make aio_put_req() lockless
    aio: do fget() after aio_get_req()
    aio: dprintk() -> pr_debug()
    aio: move private stuff out of aio.h
    aio: add kiocb_cancel()
    aio: kill return value of aio_complete()
    char: add aio_{read,write} to /dev/{null,zero}
    aio: remove retry-based AIO
    ...

    Linus Torvalds
     
  • Faster kernel compiles by way of fewer unnecessary includes.

    [akpm@linux-foundation.org: fix fallout]
    [akpm@linux-foundation.org: fix build]
    Signed-off-by: Kent Overstreet
    Cc: Zach Brown
    Cc: Felipe Balbi
    Cc: Greg Kroah-Hartman
    Cc: Mark Fasheh
    Cc: Joel Becker
    Cc: Rusty Russell
    Cc: Jens Axboe
    Cc: Asai Thambi S P
    Cc: Selvan Mani
    Cc: Sam Bradshaw
    Cc: Jeff Moyer
    Cc: Al Viro
    Cc: Benjamin LaHaise
    Reviewed-by: "Theodore Ts'o"
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Kent Overstreet