15 Jul, 2013

2 commits

  • Pull slab update from Pekka Enberg:
    "Highlights:

    - Fix for boot-time problems on some architectures due to
    init_lock_keys() not respecting kmalloc_caches boundaries
    (Christoph Lameter)

    - CONFIG_SLUB_CPU_PARTIAL requested by RT folks (Joonsoo Kim)

    - Fix for excessive slab freelist draining (Wanpeng Li)

    - SLUB and SLOB cleanups and fixes (various people)"

    I ended up editing the branch, and this avoids two commits at the end
    that were immediately reverted, and I instead just applied the oneliner
    fix in between myself.

    * 'slab/for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/penberg/linux
    slub: Check for page NULL before doing the node_match check
    mm/slab: Give s_next and s_stop slab-specific names
    slob: Check for NULL pointer before calling ctor()
    slub: Make cpu partial slab support configurable
    slab: add kmalloc() to kernel API documentation
    slab: fix init_lock_keys
    slob: use DIV_ROUND_UP where possible
    slub: do not put a slab to cpu partial list when cpu_partial is 0
    mm/slub: Use node_nr_slabs and node_nr_objs in get_slabinfo
    mm/slub: Drop unnecessary nr_partials
    mm/slab: Fix /proc/slabinfo unwriteable for slab
    mm/slab: Sharing s_next and s_stop between slab and slub
    mm/slab: Fix drain freelist excessively
    slob: Rework #ifdeffery in slab.h
    mm, slab: moved kmem_cache_alloc_node comment to correct place

    Linus Torvalds
     
  • Pull more vfs stuff from Al Viro:
    "O_TMPFILE ABI changes, Oleg's fput() series, misc cleanups, including
    making simple_lookup() usable for filesystems with non-NULL s_d_op,
    which allows us to get rid of quite a bit of ugliness"

    * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/viro/vfs:
    sunrpc: now we can just set ->s_d_op
    cgroup: we can use simple_lookup() now
    efivarfs: we can use simple_lookup() now
    make simple_lookup() usable for filesystems that set ->s_d_op
    configfs: don't open-code d_alloc_name()
    __rpc_lookup_create_exclusive: pass string instead of qstr
    rpc_create_*_dir: don't bother with qstr
    llist: llist_add() can use llist_add_batch()
    llist: fix/simplify llist_add() and llist_add_batch()
    fput: turn "list_head delayed_fput_list" into llist_head
    fs/file_table.c:fput(): add comment
    Safer ABI for O_TMPFILE

    Linus Torvalds
     

14 Jul, 2013

7 commits

  • just pass the name

    Signed-off-by: Al Viro

    Al Viro
     
  • Pull networking fixes from David Miller:
    "Just a bunch of small fixes and tidy ups:

    1) Finish the "busy_poll" renames, from Eliezer Tamir.

    2) Fix RCU stalls in IFB driver, from Ding Tianhong.

    3) Linearize buffers properly in tun/macvtap zerocopy code.

    4) Don't crash on rmmod in vxlan, from Pravin B Shelar.

    5) Spinlock used before init in alx driver, from Maarten Lankhorst.

    6) A sparse warning fix in bnx2x broke TSO checksums, fix from Dmitry
    Kravkov.

    7) Dummy and ifb driver load failure paths can oops, fixes from Tan
    Xiaojun and Ding Tianhong.

    8) Correct MTU calculations in IP tunnels, from Alexander Duyck.

    9) Account all TCP retransmits in SNMP stats properly, from Yuchung
    Cheng.

    10) atl1e and via-rhine do not handle DMA mapping failures properly,
    from Neil Horman.

    11) Various equal-cost multipath route fixes in ipv6 from Hannes
    Frederic Sowa"

    * git://git.kernel.org/pub/scm/linux/kernel/git/davem/net: (36 commits)
    ipv6: only static routes qualify for equal cost multipathing
    via-rhine: fix dma mapping errors
    atl1e: fix dma mapping warnings
    tcp: account all retransmit failures
    usb/net/r815x: fix cast to restricted __le32
    usb/net/r8152: fix integer overflow in expression
    net: access page->private by using page_private
    net: strict_strtoul is obsolete, use kstrtoul instead
    drivers/net/ieee802154: don't use devm_pinctrl_get_select_default() in probe
    drivers/net/ethernet/cadence: don't use devm_pinctrl_get_select_default() in probe
    drivers/net/can/c_can: don't use devm_pinctrl_get_select_default() in probe
    net/usb: add relative mii functions for r815x
    net/tipc: use %*phC to dump small buffers in hex form
    qlcnic: Adding Maintainers.
    gre: Fix MTU sizing check for gretap tunnels
    pkt_sched: sch_qfq: remove forward declaration of qfq_update_agg_ts
    pkt_sched: sch_qfq: improve efficiency of make_eligible
    gso: Update tunnel segmentation to support Tx checksum offload
    inet: fix spacing in assignment
    ifb: fix oops when loading the ifb failed
    ...

    Linus Torvalds
     
  • Pull timer updates from Thomas Gleixner:
    - watchdog fixes for full dynticks
    - improved debug output for full dynticks
    - remove an obsolete full dynticks check
    - two ARM SoC clocksource drivers for sharing across SoCs
    - tick broadcast fix for CPU hotplug

    * 'timers-urgent-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
    tick: broadcast: Check broadcast mode on CPU hotplug
    clocksource: arm_global_timer: Add ARM global timer support
    clocksource: Add Marvell Orion SoC timer
    nohz: Remove obsolete check for full dynticks CPUs to be RCU nocbs
    watchdog: Boot-disable by default on full dynticks
    watchdog: Rename confusing state variable
    watchdog: Register / unregister watchdog kthreads on sysctl control
    nohz: Warn if the machine can not perform nohz_full

    Linus Torvalds
     
  • Pull core locking updates from Thomas Gleixner:
    "Header cleanup as requested by Linus"

    (This is the "don't include support for ww_mutex in a header file that
    everybody wants, when almost nobody wants the ww part" change)

    * 'core-urgent-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
    mutex: Move ww_mutex definitions to ww_mutex.h

    Linus Torvalds
     
  • Pull MIPS updates from Ralf Baechle:
    "MIPS updates:

    - All the things that didn't make 3.10.
    - Removes the Windriver PPMC platform. Nobody will miss it.
    - Remove a workaround from kernel/irq/irqdomain.c which was there
    exclusivly for MIPS. Patch by Grant Likely.
    - More small improvments for the SEAD 3 platform
    - Improvments on the BMIPS / SMP support for the BCM63xx series.
    - Various cleanups of dead leftovers.
    - Platform support for the Cavium Octeon-based EdgeRouter Lite.

    Two large KVM patchsets didn't make it for this pull request because
    their respective authors are vacationing"

    * 'upstream' of git://git.linux-mips.org/pub/scm/ralf/upstream-linus: (124 commits)
    MIPS: Kconfig: Add missing MODULES dependency to VPE_LOADER
    MIPS: BCM63xx: CLK: Add dummy clk_{set,round}_rate() functions
    MIPS: SEAD3: Disable L2 cache on SEAD-3.
    MIPS: BCM63xx: Enable second core SMP on BCM6328 if available
    MIPS: BCM63xx: Add SMP support to prom.c
    MIPS: define write{b,w,l,q}_relaxed
    MIPS: Expose missing pci_io{map,unmap} declarations
    MIPS: Malta: Update GCMP detection.
    Revert "MIPS: make CAC_ADDR and UNCAC_ADDR account for PHYS_OFFSET"
    MIPS: APSP: Remove
    SSB: Kconfig: Amend SSB_EMBEDDED dependencies
    MIPS: microMIPS: Fix improper definition of ISA exception bit.
    MIPS: Don't try to decode microMIPS branch instructions where they cannot exist.
    MIPS: Declare emulate_load_store_microMIPS as a static function.
    MIPS: Fix typos and cleanup comment
    MIPS: Cleanup indentation and whitespace
    MIPS: BMIPS: support booting from physical CPU other than 0
    MIPS: Only set cpu_has_mmips if SYS_SUPPORTS_MICROMIPS
    MIPS: GIC: Fix gic_set_affinity infinite loop
    MIPS: Don't save/restore OCTEON wide multiplier state on syscalls.
    ...

    Linus Torvalds
     
  • Pull InfiniBand/RDMA changes from Roland Dreier:
    - AF_IB (native IB addressing) for CMA from Sean Hefty
    - new mlx5 driver for Mellanox Connect-IB adapters (including post
    merge request fixes)
    - SRP fixes from Bart Van Assche (including fix to first merge request)
    - qib HW driver updates
    - resurrection of ocrdma HW driver development
    - uverbs conversion to create fds with O_CLOEXEC set
    - other small changes and fixes

    * tag 'rdma-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/roland/infiniband: (66 commits)
    mlx5: Return -EFAULT instead of -EPERM
    IB/qib: Log all SDMA errors unconditionally
    IB/qib: Fix module-level leak
    mlx5_core: Adjust hca_cap.uar_page_sz to conform to Connect-IB spec
    IB/srp: Let srp_abort() return FAST_IO_FAIL if TL offline
    IB/uverbs: Use get_unused_fd_flags(O_CLOEXEC) instead of get_unused_fd()
    mlx5_core: Fixes for sparse warnings
    IB/mlx5: Make profile[] static in main.c
    mlx5: Fix parameter type of health_handler_t
    mlx5: Add driver for Mellanox Connect-IB adapters
    IB/core: Add reserved values to enums for low-level driver use
    IB/srp: Bump driver version and release date
    IB/srp: Make HCA completion vector configurable
    IB/srp: Maintain a single connection per I_T nexus
    IB/srp: Fail I/O fast if target offline
    IB/srp: Skip host settle delay
    IB/srp: Avoid skipping srp_reset_host() after a transport error
    IB/srp: Fix remove_one crash due to resource exhaustion
    IB/qib: New transmitter tunning settings for Dell 1.1 backplane
    IB/core: Fix error return code in add_port()
    ...

    Linus Torvalds
     
  • Pull media updates from Mauro Carvalho Chehab:
    "This series contain:
    - new i2c video drivers: ml86v7667 (video decoder),
    ths8200 (video encoder)
    - a new video driver for EasyCap cards based on Fushicai USBTV007
    - Improved support for OF and embedded systems, with V4L2 async
    initialization and a better support for clocks
    - API cleanups on the ioctls used by the v4l2 debug tool
    - Lots of cleanups
    - As usual, several driver improvements and new cards additions
    - Revert two changesets that change the minimal symbol rate for
    stv0399, as request by Manu
    - Update MAINTAINERS and other files to point to my new e-mail"

    * 'v4l_for_linus' of git://git.kernel.org/pub/scm/linux/kernel/git/mchehab/linux-media: (378 commits)
    MAINTAINERS & ABI: Update to point to my new email
    [media] stb0899: restore minimal rate to 5Mbauds
    [media] exynos4-is: Correct colorspace handling at FIMC-LITE
    [media] exynos4-is: Set valid initial format on FIMC.n subdevs
    [media] exynos4-is: Set valid initial format on FIMC-IS-ISP subdev pads
    [media] exynos4-is: Fix format propagation on FIMC-IS-ISP subdev
    [media] exynos4-is: Set valid initial format at FIMC-LITE
    [media] exynos4-is: Fix format propagation on FIMC-LITE.n subdevs
    [media] MAINTAINERS: Update S5P/Exynos FIMC driver entry
    [media] Documentation: Update driver's directory in video4linux/fimc.txt
    [media] exynos4-is: Change fimc-is firmware file names
    [media] exynos4-is: Add support for Exynos5250 MIPI-CSIS
    [media] exynos4-is: Add Exynos5250 SoC support to fimc-lite driver
    [media] exynos4-is: Drop drvdata handling in fimc-lite for non-dt platforms
    [media] media: i2c: tvp514x: remove manual setting of subdev name
    [media] media: i2c: tvp7002: remove manual setting of subdev name
    [media] mem2mem: set missing v4l2_dev pointer
    [media] wl128x: add missing struct v4l2_device
    [media] tvp514x: Fix init seqeunce
    [media] saa7134: Fix sparse warnings by adding __user annotation
    ...

    Linus Torvalds
     

13 Jul, 2013

4 commits

  • llist_add(new, head) can simply use llist_add_batch(new, new, head),
    no need to duplicate the code.

    This obviously uninlines llist_add() and to me this is a win. But we
    can make llist_add_batch() inline if this is desirable, in this case
    gcc can notice that new_first == new_last if the caller is llist_add().

    Signed-off-by: Oleg Nesterov
    Cc: Al Viro
    Cc: Andrey Vagin
    Cc: "Eric W. Biederman"
    Cc: David Howells
    Cc: Huang Ying
    Cc: Peter Zijlstra
    Signed-off-by: Andrew Morton
    Signed-off-by: Al Viro

    Oleg Nesterov
     
  • 1. This is mostly theoretical, but llist_add*() need ACCESS_ONCE().

    Otherwise it is not guaranteed that the first cmpxchg() uses the
    same value for old_entry and new_last->next.

    2. These helpers cache the result of cmpxchg() and read the initial
    value of head->first before the main loop. I do not think this
    makes sense. In the likely case cmpxchg() succeeds, otherwise
    it doesn't hurt to reload head->first.

    I think it would be better to simplify the code and simply read
    ->first before cmpxchg().

    Signed-off-by: Oleg Nesterov
    Cc: Al Viro
    Cc: Andrey Vagin
    Cc: "Eric W. Biederman"
    Cc: David Howells
    Cc: Huang Ying
    Cc: Peter Zijlstra
    Signed-off-by: Andrew Morton
    Signed-off-by: Al Viro

    Oleg Nesterov
     
  • fput() and delayed_fput() can use llist and avoid the locking.

    This is unlikely path, it is not that this change can improve
    the performance, but this way the code looks simpler.

    Signed-off-by: Oleg Nesterov
    Suggested-by: Andrew Morton
    Cc: Al Viro
    Cc: Andrey Vagin
    Cc: "Eric W. Biederman"
    Cc: David Howells
    Cc: Huang Ying
    Cc: Peter Zijlstra
    Signed-off-by: Andrew Morton
    Signed-off-by: Al Viro

    Oleg Nesterov
     
  • [suggested by Rasmus Villemoes] make O_DIRECTORY | O_RDWR part of O_TMPFILE;
    that will fail on old kernels in a lot more cases than what I came up with.
    And make sure O_CREAT doesn't get there...

    Signed-off-by: Al Viro

    Al Viro
     

12 Jul, 2013

15 commits

  • Get upstream changes so we can apply fixes against them

    Signed-off-by: Thomas Gleixner

    Thomas Gleixner
     
  • Move the definitions for wound/wait mutexes out to a separate
    header, ww_mutex.h. This reduces clutter in mutex.h, and
    increases readability.

    Suggested-by: Linus Torvalds
    Signed-off-by: Maarten Lankhorst
    Acked-by: Peter Zijlstra
    Acked-by: Rik van Riel
    Acked-by: Maarten Lankhorst
    Cc: Dave Airlie
    Link: http://lkml.kernel.org/r/51D675DC.3000907@canonical.com
    [ Tidied up the code a bit. ]
    Signed-off-by: Ingo Molnar

    Maarten Lankhorst
     
  • Roland Dreier
     
  • Sparse reported an endianness bug in the assignment to hca_cap.uar_page_sz.

    Fix the declaration of this field to be __be16 (which is what is in
    the firmware spec), renaming the field to log_uar_pg_size to conform
    to the spec, which fixes the endianness bug reported by sparse.

    Reported-by: Fengguang Wu
    Signed-off-by: Moshe Lazer
    Signed-off-by: Or Gerlitz
    Signed-off-by: Roland Dreier

    Moshe Lazer
     
  • Pull device-mapper changes from Alasdair G Kergon:
    "Add a device-mapper target called dm-switch to provide a multipath
    framework for storage arrays that dynamically reconfigure their
    preferred paths for different device regions.

    Fix a bug in the verity target that prevented its use with some
    specific sizes of devices.

    Improve some locking mechanisms in the device-mapper core and bufio.

    Add Mike Snitzer as a device-mapper maintainer.

    A few more clean-ups and fixes"

    * tag 'dm-3.11-changes' of git://git.kernel.org/pub/scm/linux/kernel/git/agk/linux-dm:
    dm: add switch target
    dm: update maintainers
    dm: optimize reorder structure
    dm: optimize use SRCU and RCU
    dm bufio: submit writes outside lock
    dm cache: fix arm link errors with inline
    dm verity: use __ffs and __fls
    dm flakey: correct ctr alloc failure mesg
    dm verity: remove pointless comparison
    dm: use __GFP_HIGHMEM in __vmalloc
    dm verity: fix inability to use a few specific devices sizes
    dm ioctl: set noio flag to avoid __vmalloc deadlock
    dm mpath: fix ioctl deadlock when no paths

    Linus Torvalds
     
  • Pull core block IO updates from Jens Axboe:
    "Here are the core IO block bits for 3.11. It contains:

    - A tweak to the reserved tag logic from Jan, for weirdo devices with
    just 3 free tags. But for those it improves things substantially
    for random writes.

    - Periodic writeback fix from Jan. Marked for stable as well.

    - Fix for a race condition in IO scheduler switching from Jianpeng.

    - The hierarchical blk-cgroup support from Tejun. This is the grunt
    of the series.

    - blk-throttle fix from Vivek.

    Just a note that I'm in the middle of a relocation, whole family is
    flying out tomorrow. Hence I will be awal the remainder of this week,
    but back at work again on Monday the 15th. CC'ing Tejun, since any
    potential "surprises" will most likely be from the blk-cgroup work.
    But it's been brewing for a while and sitting in my tree and
    linux-next for a long time, so should be solid."

    * 'for-3.11/core' of git://git.kernel.dk/linux-block: (36 commits)
    elevator: Fix a race in elevator switching
    block: Reserve only one queue tag for sync IO if only 3 tags are available
    writeback: Fix periodic writeback after fs mount
    blk-throttle: implement proper hierarchy support
    blk-throttle: implement throtl_grp->has_rules[]
    blk-throttle: Account for child group's start time in parent while bio climbs up
    blk-throttle: add throtl_qnode for dispatch fairness
    blk-throttle: make throtl_pending_timer_fn() ready for hierarchy
    blk-throttle: make tg_dispatch_one_bio() ready for hierarchy
    blk-throttle: make blk_throtl_bio() ready for hierarchy
    blk-throttle: make blk_throtl_drain() ready for hierarchy
    blk-throttle: dispatch from throtl_pending_timer_fn()
    blk-throttle: implement dispatch looping
    blk-throttle: separate out throtl_service_queue->pending_timer from throtl_data->dispatch_work
    blk-throttle: set REQ_THROTTLED from throtl_charge_bio() and gate stats update with it
    blk-throttle: implement sq_to_tg(), sq_to_td() and throtl_log()
    blk-throttle: add throtl_service_queue->parent_sq
    blk-throttle: generalize update_disptime optimization in blk_throtl_bio()
    blk-throttle: dispatch to throtl_data->service_queue.bio_lists[]
    blk-throttle: move bio_lists[] and friends to throtl_service_queue
    ...

    Linus Torvalds
     
  • Pull SCSI target updates from Nicholas Bellinger:
    "Lots of activity this round on performance improvements in target-core
    while benchmarking the prototype scsi-mq initiator code with
    vhost-scsi fabric ports, along with a number of iscsi/iser-target
    improvements and hardening fixes for exception path cases post v3.10
    merge.

    The highlights include:

    - Make persistent reservations APTPL buffer allocated on-demand, and
    drop per t10_reservation buffer. (grover)
    - Make virtual LUN=0 a NULLIO device, and skip allocation of NULLIO
    device pages (grover)
    - Add transport_cmd_check_stop write_pending bit to avoid extra
    access of ->t_state_lock is WRITE I/O submission fast-path. (nab)
    - Drop unnecessary CMD_T_DEV_ACTIVE check from
    transport_lun_remove_cmd to avoid extra access of ->t_state_lock in
    release fast-path. (nab)
    - Avoid extra t_state_lock access in __target_execute_cmd fast-path
    (nab)
    - Drop unnecessary vhost-scsi wait_for_tasks=true usage +
    ->t_state_lock access in release fast-path. (nab)
    - Convert vhost-scsi to use modern se_cmd->cmd_kref
    TARGET_SCF_ACK_KREF usage (nab)
    - Add tracepoints for SCSI commands being processed (roland)
    - Refactoring of iscsi-target handling of ISCSI_OP_NOOP +
    ISCSI_OP_TEXT to be transport independent (nab)
    - Add iscsi-target SendTargets=$IQN support for in-band discovery
    (nab)
    - Add iser-target support for in-band discovery (nab + Or)
    - Add iscsi-target demo-mode TPG authentication context support (nab)
    - Fix isert_put_reject payload buffer post (nab)
    - Fix iscsit_add_reject* usage for iser (nab)
    - Fix iscsit_sequence_cmd reject handling for iser (nab)
    - Fix ISCSI_OP_SCSI_TMFUNC handling for iser (nab)
    - Fix session reset bug with RDMA_CM_EVENT_DISCONNECTED (nab)

    The last five iscsi/iser-target items are CC'ed to stable, as they do
    address issues present in v3.10 code. They are certainly larger than
    I'd like for stable patch set, but are important to ensure proper
    REJECT exception handling in iser-target for 3.10.y"

    * 'for-next' of git://git.kernel.org/pub/scm/linux/kernel/git/nab/target-pending: (51 commits)
    iser-target: Ignore non TEXT + LOGOUT opcodes for discovery
    target: make queue_tm_rsp() return void
    target: remove unused codes from enum tcm_tmrsp_table
    iscsi-target: kstrtou* configfs attribute parameter cleanups
    iscsi-target: Fix tfc_tpg_auth_cit configfs length overflow
    iscsi-target: Fix tfc_tpg_nacl_auth_cit configfs length overflow
    iser-target: Add support for ISCSI_OP_TEXT opcode + payload handling
    iser-target: Rename sense_buf_[dma,len] to pdu_[dma,len]
    iser-target: Add vendor_err debug output
    target: Add (obsolete) checking for PMI/LBA fields in READ CAPACITY(10)
    target: Return correct sense data for IO past the end of a device
    target: Add tracepoints for SCSI commands being processed
    iser-target: Fix session reset bug with RDMA_CM_EVENT_DISCONNECTED
    iscsi-target: Fix ISCSI_OP_SCSI_TMFUNC handling for iser
    iscsi-target: Fix iscsit_sequence_cmd reject handling for iser
    iscsi-target: Fix iscsit_add_reject* usage for iser
    iser-target: Fix isert_put_reject payload buffer post
    iscsi-target: missing kfree() on error path
    iscsi-target: Drop left-over iscsi_conn->bad_hdr
    target: Make core_scsi3_update_and_write_aptpl return sense_reason_t
    ...

    Linus Torvalds
     
  • Pull remoteproc fixes from Ohad Ben-Cohen:
    "Trivial remoteproc fixes by Suman Anna, Wei Yongjun and Thomas Meyer"

    * tag 'remoteproc-3.11-fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/ohad/remoteproc:
    remoteproc: Cocci spatch "memdup.spatch"
    remoteproc: free carveout memories only after unmapping them
    remoteproc/omap: fix a sparse warning
    remoteproc: fix checkpatch errors in remoteproc code
    remoteproc: fix error return code in rproc_fw_boot()

    Linus Torvalds
     
  • Pull Xtensa updates from Chris Zankel.

    * tag 'xtensa-next-20130710' of git://github.com/czankel/xtensa-linux: (22 commits)
    xtensa: remove the second argument of __bio_kmap_atomic()
    xtensa: add static function tracer support
    xtensa: Flat DeviceTree copy not future-safe
    xtensa: check TLB sanity on return to userspace
    xtensa: adjust boot parameters address when INITIALIZE_XTENSA_MMU_INSIDE_VMLINUX is selected
    xtensa: bootparams: fix typo
    xtensa: tell git to ignore generated .dtb files
    xtensa: ccount based sched_clock
    xtensa: ccount based clockevent implementation
    xtensa: consolidate ccount access routines
    xtensa: cleanup ccount frequency tracking
    xtensa: timex.h: remove unused symbols
    xtensa: tell git to ignore copied zlib source files
    xtensa: fix section mismatch in pcibios_fixup_bus
    xtensa: ISS: fix section mismatch in iss_net_setup
    arch: xtensa: include: asm: compiling issue, need cmpxchg64() defined.
    xtensa: xtfpga: fix section mismatch
    xtensa: remove unused platform_init_irq()
    xtensa: tell git to ignore generated files
    xtensa: flush TLB entries for pages of non-current mm correctly
    ...

    Linus Torvalds
     
  • Pull more power management and ACPI updates from Rafael Wysocki:

    - Fix for a recent cpufreq regression that caused WARN() to trigger
    overzealously in a couple of places and spam the kernel log with
    useless garbage as a result. From Viresh Kumar.

    - ACPI dock fix removing a discrepancy between the definition of
    acpi_dock_init(), which says that the function returns int, and its
    header in the header file, which says that it is a void function.
    The function is now defined as void too.

    - ACPI PM fix for failures to update device power states as needed, for
    example, during resume from system suspend, because the old state was
    deeper than the new one, but the new one is not D0.

    - Fix for two debug messages in the ACPI power resources code that
    don't have a newline at the end and make the kernel log difficult to
    read. From Mika Westerberg.

    - Two ACPI cleanups from Naresh Bhat and Haicheng Li.

    - cpupower updates from Thomas Renninger, including Intel Haswell
    support improvements and a new idle-set subcommand among other
    things.

    * tag 'pm+acpi-3.11-rc1-more' of git://git.kernel.org/pub/scm/linux/kernel/git/rafael/linux-pm:
    ACPI / power: add missing newline to debug messages
    cpupower: Add Haswell family 0x45 specific idle monitor to show PC8,9,10 states
    cpupower: Haswell also supports the C-states introduced with SandyBridge
    cpupower: Introduce idle-set subcommand and C-state enabling/disabling
    cpupower: Implement disabling of cstate interface
    cpupower: Make idlestate usage unsigned
    ACPI / fan: Initialize acpi_state variable
    ACPI / scan: remove unused LIST_HEAD(acpi_device_list)
    ACPI / dock: Actually define acpi_dock_init() as void
    ACPI / PM: Fix corner case in acpi_bus_update_power()
    cpufreq: Fix serialization of frequency transitions

    Linus Torvalds
     
  • Pull thermal management updates from Zhang Rui:
    "There are not too many changes this time, except two new platform
    thermal drivers, ti-soc-thermal driver and x86_pkg_temp_thermal
    driver, and a couple of small fixes.

    Highlights:

    - move the ti-soc-thermal driver out of the staging tree to the
    thermal tree.

    - introduce the x86_pkg_temp_thermal driver. This driver registers
    CPU digital temperature package level sensor as a thermal zone.

    - small fixes/cleanups including removing redundant use of
    platform_set_drvdata() and of_match_ptr for all platform thermal
    drivers"

    * 'next' of git://git.kernel.org/pub/scm/linux/kernel/git/rzhang/linux: (34 commits)
    thermal: cpu_cooling: fix stub function
    thermal: ti-soc-thermal: use standard GPIO DT bindings
    thermal: MAINTAINERS: Add git tree path for SoC specific updates
    thermal: fix x86_pkg_temp_thermal.c build and Kconfig
    Thermal: Documentation for x86 package temperature thermal driver
    Thermal: CPU Package temperature thermal
    thermal: consider emul_temperature while computing trend
    thermal: ti-soc-thermal: add DT example for DRA752 chip
    thermal: ti-soc-thermal: add dra752 chip to device table
    thermal: ti-soc-thermal: add thermal data for DRA752 chips
    thermal: ti-soc-thermal: remove usage of IS_ERR_OR_NULL
    thermal: ti-soc-thermal: freeze FSM while computing trend
    thermal: ti-soc-thermal: remove external heat while extrapolating hotspot
    thermal: ti-soc-thermal: update DT reference for OMAP5430
    x86, mcheck, therm_throt: Process package thresholds
    thermal: cpu_cooling: fix 'descend' check in get_property()
    Thermal: spear: Remove redundant use of of_match_ptr
    Thermal: kirkwood: Remove redundant use of of_match_ptr
    Thermal: dove: Remove redundant use of of_match_ptr
    Thermal: armada: Remove redundant use of of_match_ptr
    ...

    Linus Torvalds
     
  • Pull second set of NFS client updates from Trond Myklebust:
    "This mainly contains some small readdir optimisations that had
    dependencies on Al Viro's readdir rewrite. There is also a fix for a
    nasty deadlock which surfaced earlier in this merge window.

    Highlights include:
    - Fix an_rpc pipefs regression that causes a deadlock on mount
    - Readdir optimisations by Scott Mayhew and Jeff Layton
    - clean up the rpc_pipefs dentry operation setup"

    * tag 'nfs-for-3.11-2' of git://git.linux-nfs.org/projects/trondmy/linux-nfs:
    SUNRPC: Fix a deadlock in rpc_client_register()
    rpc_pipe: rpc_dir_inode_operations can be static
    NFS: Allow nfs_updatepage to extend a write under additional circumstances
    NFS: Make nfs_readdir revalidate less often
    NFS: Make nfs_attribute_cache_expired() non-static
    rpc_pipe: set dentry operations at d_alloc time
    nfs: set verifier on existing dentries in nfs_prime_dcache

    Linus Torvalds
     
  • …inux/kernel/git/ericvh/v9fs

    Pull second round of 9p patches from Eric Van Hensbergen:
    "Several of these patches were rebased in order to correct style
    issues. Only stylistic changes were made versus the patches which
    were in linux-next for two weeks. The rebases have been in linux-next
    for 3 days and have passed my regressions.

    The bulk of these are RDMA fixes and improvements. There's also some
    additions on the extended attributes front to support some additional
    namespaces and a new option for TCP to force allocation of mount
    requests from a priviledged port"

    * tag 'for-linus-3.11-merge-window-part-2' of git://git.kernel.org/pub/scm/linux/kernel/git/ericvh/v9fs:
    fs/9p: Remove the unused variable "err" in v9fs_vfs_getattr()
    9P: Add cancelled() to the transport functions.
    9P/RDMA: count posted buffers without a pending request
    9P/RDMA: Improve error handling in rdma_request
    9P/RDMA: Do not free req->rc in error handling in rdma_request()
    9P/RDMA: Use a semaphore to protect the RQ
    9P/RDMA: Protect against duplicate replies
    9P/RDMA: increase P9_RDMA_MAXSIZE to 1MB
    9pnet: refactor struct p9_fcall alloc code
    9P/RDMA: rdma_request() needs not allocate req->rc
    9P: Fix fcall allocation for rdma
    fs/9p: xattr: add trusted and security namespaces
    net/9p: add privport option to 9p tcp transport

    Linus Torvalds
     
  • Pull nfsd changes from Bruce Fields:
    "Changes this time include:

    - 4.1 enabled on the server by default: the last 4.1-specific issues
    I know of are fixed, so we're not going to find the rest of the
    bugs without more exposure.
    - Experimental support for NFSv4.2 MAC Labeling (to allow running
    selinux over NFS), from Dave Quigley.
    - Fixes for some delicate cache/upcall races that could cause rare
    server hangs; thanks to Neil Brown and Bodo Stroesser for extreme
    debugging persistence.
    - Fixes for some bugs found at the recent NFS bakeathon, mostly v4
    and v4.1-specific, but also a generic bug handling fragmented rpc
    calls"

    * 'for-3.11' of git://linux-nfs.org/~bfields/linux: (31 commits)
    nfsd4: support minorversion 1 by default
    nfsd4: allow destroy_session over destroyed session
    svcrpc: fix failures to handle -1 uid's
    sunrpc: Don't schedule an upcall on a replaced cache entry.
    net/sunrpc: xpt_auth_cache should be ignored when expired.
    sunrpc/cache: ensure items removed from cache do not have pending upcalls.
    sunrpc/cache: use cache_fresh_unlocked consistently and correctly.
    sunrpc/cache: remove races with queuing an upcall.
    nfsd4: return delegation immediately if lease fails
    nfsd4: do not throw away 4.1 lock state on last unlock
    nfsd4: delegation-based open reclaims should bypass permissions
    svcrpc: don't error out on small tcp fragment
    svcrpc: fix handling of too-short rpc's
    nfsd4: minor read_buf cleanup
    nfsd4: fix decoding of compounds across page boundaries
    nfsd4: clean up nfs4_open_delegation
    NFSD: Don't give out read delegations on creates
    nfsd4: allow client to send no cb_sec flavors
    nfsd4: fail attempts to request gss on the backchannel
    nfsd4: implement minimal SP4_MACH_CRED
    ...

    Linus Torvalds
     
  • Pull tracing changes from Steven Rostedt:
    "The majority of the changes here are cleanups for the large changes
    that were added to 3.10, which includes several bug fixes that have
    been marked for stable.

    As for new features, there were a few, but nothing to write to LWN
    about. These include:

    New function trigger called "dump" and "cpudump" that will cause
    ftrace to dump its buffer to the console when the function is called.
    The difference between "dump" and "cpudump" is that "dump" will dump
    the entire contents of the ftrace buffer, where as "cpudump" will only
    dump the contents of the ftrace buffer for the CPU that called the
    function.

    Another small enhancement is a new sysctl switch called
    "traceoff_on_warning" which, when enabled, will disable tracing if any
    WARN_ON() is triggered. This is useful if you want to debug what
    caused a warning and do not want to risk losing your trace data by the
    ring buffer overwriting the data before you can disable it. There's
    also a kernel command line option that will make this enabled at boot
    up called the same thing"

    * tag 'trace-3.11' of git://git.kernel.org/pub/scm/linux/kernel/git/rostedt/linux-trace: (34 commits)
    tracing: Make tracing_open_generic_{tr,tc}() static
    tracing: Remove ftrace() function
    tracing: Remove TRACE_EVENT_TYPE enum definition
    tracing: Make tracer_tracing_{off,on,is_on}() static
    tracing: Fix irqs-off tag display in syscall tracing
    uprobes: Fix return value in error handling path
    tracing: Fix race between deleting buffer and setting events
    tracing: Add trace_array_get/put() to event handling
    tracing: Get trace_array ref counts when accessing trace files
    tracing: Add trace_array_get/put() to handle instance refs better
    tracing: Protect ftrace_trace_arrays list in trace_events.c
    tracing: Make trace_marker use the correct per-instance buffer
    ftrace: Do not run selftest if command line parameter is set
    tracing/kprobes: Don't pass addr=ip to perf_trace_buf_submit()
    tracing: Use flag buffer_disabled for irqsoff tracer
    tracing/kprobes: Turn trace_probe->files into list_head
    tracing: Fix disabling of soft disable
    tracing: Add missing syscall_metadata comment
    tracing: Simplify code for showing of soft disabled flag
    tracing/kprobes: Kill probe_enable_lock
    ...

    Linus Torvalds
     

11 Jul, 2013

12 commits

  • Merge more patches from Andrew Morton:
    "The rest of MM"

    * emailed patches from Andrew Morton :
    mm: remove free_area_cache
    zswap: add documentation
    zswap: add to mm/
    zbud: add to mm/

    Linus Torvalds
     
  • Since all architectures have been converted to use vm_unmapped_area(),
    there is no remaining use for the free_area_cache.

    Signed-off-by: Michel Lespinasse
    Acked-by: Rik van Riel
    Cc: "James E.J. Bottomley"
    Cc: "Luck, Tony"
    Cc: Benjamin Herrenschmidt
    Cc: David Howells
    Cc: Helge Deller
    Cc: Ivan Kokshaysky
    Cc: Matt Turner
    Cc: Paul Mackerras
    Cc: Richard Henderson
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Michel Lespinasse
     
  • zbud is an special purpose allocator for storing compressed pages. It
    is designed to store up to two compressed pages per physical page.
    While this design limits storage density, it has simple and
    deterministic reclaim properties that make it preferable to a higher
    density approach when reclaim will be used.

    zbud works by storing compressed pages, or "zpages", together in pairs
    in a single memory page called a "zbud page". The first buddy is "left
    justifed" at the beginning of the zbud page, and the last buddy is
    "right justified" at the end of the zbud page. The benefit is that if
    either buddy is freed, the freed buddy space, coalesced with whatever
    slack space that existed between the buddies, results in the largest
    possible free region within the zbud page.

    zbud also provides an attractive lower bound on density. The ratio of
    zpages to zbud pages can not be less than 1. This ensures that zbud can
    never "do harm" by using more pages to store zpages than the
    uncompressed zpages would have used on their own.

    This implementation is a rewrite of the zbud allocator internally used
    by zcache in the driver/staging tree. The rewrite was necessary to
    remove some of the zcache specific elements that were ingrained
    throughout and provide a generic allocation interface that can later be
    used by zsmalloc and others.

    This patch adds zbud to mm/ for later use by zswap.

    Signed-off-by: Seth Jennings
    Acked-by: Rik van Riel
    Cc: Greg Kroah-Hartman
    Cc: Nitin Gupta
    Cc: Minchan Kim
    Cc: Konrad Rzeszutek Wilk
    Cc: Dan Magenheimer
    Cc: Robert Jennings
    Cc: Jenifer Hopper
    Cc: Mel Gorman
    Cc: Johannes Weiner
    Cc: Larry Woodman
    Cc: Benjamin Herrenschmidt
    Cc: Dave Hansen
    Cc: Joe Perches
    Cc: Joonsoo Kim
    Cc: Cody P Schafer
    Cc: Hugh Dickens
    Cc: Paul Mackerras
    Cc: Bob Liu
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Seth Jennings
     
  • Rename LL_SO to BUSY_POLL_SO
    Rename sysctl_net_ll_{read,poll} to sysctl_busy_{read,poll}
    Fix up users of these variables.
    Fix documentation for sysctl.

    a patch for the socket.7 man page will follow separately,
    because of limitations of my mail setup.

    Signed-off-by: Eliezer Tamir
    Signed-off-by: David S. Miller

    Eliezer Tamir
     
  • Rename ndo_ll_poll to ndo_busy_poll.
    Rename sk_mark_ll to sk_mark_napi_id.
    Rename skb_mark_ll to skb_mark_napi_id.
    Correct all useres of these functions.
    Update comments and defines in include/net/busy_poll.h

    Signed-off-by: Eliezer Tamir
    Signed-off-by: David S. Miller

    Eliezer Tamir
     
  • Rename the file and correct all the places where it is included.

    Signed-off-by: Eliezer Tamir
    Signed-off-by: David S. Miller

    Eliezer Tamir
     
  • This patch removes "io_lock" and "map_lock" in struct mapped_device and
    "holders" in struct dm_table and replaces these mechanisms with
    sleepable-rcu.

    Previously, the code would call "dm_get_live_table" and "dm_table_put" to
    get and release table. Now, the code is changed to call "dm_get_live_table"
    and "dm_put_live_table". dm_get_live_table locks sleepable-rcu and
    dm_put_live_table unlocks it.

    dm_get_live_table_fast/dm_put_live_table_fast can be used instead of
    dm_get_live_table/dm_put_live_table. These *_fast functions use
    non-sleepable RCU, so the caller must not block between them.

    If the code changes active or inactive dm table, it must call
    dm_sync_table before destroying the old table.

    Signed-off-by: Mikulas Patocka
    Signed-off-by: Jun'ichi Nomura
    Signed-off-by: Alasdair G Kergon

    Mikulas Patocka
     
  • Pull module updates from Rusty Russell:
    "Nothing interesting. Except the most embarrassing bugfix ever. But
    let's ignore that"

    * tag 'modules-next-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/rusty/linux:
    module: cleanup call chain.
    module: do percpu allocation after uniqueness check. No, really!
    modules: don't fail to load on unknown parameters.
    ABI: Clarify when /sys/module/MODULENAME is created
    There is no /sys/parameters
    module: don't modify argument of module_kallsyms_lookup_name()

    Linus Torvalds
     
  • Pull virtio updates from Rusty Russell:
    "No real surprises"

    * tag 'virtio-next-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/rusty/linux:
    MAINTAINERS: add tools/virtio/ under virtio
    tools/virtio: move module license stub to module.h
    virtio: include asm/barrier explicitly
    virtio: VIRTIO_F_ANY_LAYOUT feature
    lguest: fix example launcher compilation for broken glibc headers.
    virtio-net: fix the race between channels setting and refill
    tools/lguest: real barriers.
    tools/lguest: fix missing rmb().
    virtio_balloon: leak_balloon(): only tell host if we got pages deflated
    virtio-pci: fix leaks of msix_affinity_masks
    Fix comment typo "CONFIG_PAE"

    Linus Torvalds
     
  • Pull vfio updates from Alex Williamson:
    "Largely hugepage support for vfio/type1 iommu and surrounding cleanups
    and fixes"

    * tag 'vfio-v3.11' of git://github.com/awilliam/linux-vfio:
    vfio/type1: Fix leak on error path
    vfio: Limit group opens
    vfio/type1: Fix missed frees and zero sized removes
    vfio: fix documentation
    vfio: Provide module option to disable vfio_iommu_type1 hugepage support
    vfio: hugepage support for vfio_iommu_type1
    vfio: Convert type1 iommu to use rbtree

    Linus Torvalds
     
  • Pull MMC updates from Chris Ball:
    "MMC highlights for 3.11:

    Core:
    - Add support for eMMC 5.1 devices
    - Add MMC_CAP_AGGRESSIVE_PM capability for aggressive power
    management of eMMC/SD between requests, using runtime PM
    - Add an ioctl to perform the eMMC 4.5 Sanitize command. Sample code
    at:

    git://git.kernel.org/pub/scm/linux/kernel/git/cjb/mmc-utils.git

    Drivers:
    - dw_mmc: Add support for Rockchip's Cortex-A9 SoCs
    - dw_mmc: Add support for Altera SoCFPGAs
    - sdhci-esdhc-imx: Add support for 8-bit bus width, non-removable
    cards
    - sdhci-bcm-kona: New driver for Broadcom Kona (281xx) SoCs
    - sdhi/tmio: Add DT DMA support"

    * tag 'mmc-updates-for-3.11-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/cjb/mmc: (87 commits)
    mmc: bcm281xx SDHCI driver
    mmc: sdhci: add card_event callback to sdhci
    mmc: core: Fixup Oops for SDIO shutdown
    mmc: sdhci-pci: add another device id
    mmc: esdhc: Fix bug when writing to SDHCI_HOST_CONTROL register
    mmc: esdhc: Add support for 8-bit bus width and non-removable card
    mmc: core: production year for eMMC 4.41 and later
    mmc: omap: remove unnecessary #if 0's
    mmc: sdhci: fix ctrl_2 on super-speed selection
    mmc: dw_mmc-pltfm: add Rockchip variant
    mmc: dw_mmc-pltfm: move probe and remove below dt match table
    mmc: dw_mmc-pltfm: remove static from dw_mci_pltfm_remove
    mmc: sdhci-acpi: add support for eMMC hardware reset for HID 80860F14
    mmc: sdhci-pci: add support for eMMC hardware reset for BYT eMMC.
    mmc: dw_mmc: Add support DW SD/MMC driver on SOCFPGA
    mmc: sdhci: fix caps2 for HS200
    sdhci-pxav3: Fix runtime PM initialization
    mmc: core: Add DT-bindings for MMC_CAP2_FULL_PWR_CYCLE
    mmc: core: Invent MMC_CAP2_FULL_PWR_CYCLE
    mmc: core: Enable power_off_notify for eMMC shutdown sequence
    ...

    Linus Torvalds
     
  • Pull pwm changes from Thierry Reding:
    "A new driver supports driving PWM signals using the TPU unit found on
    various Renesas SoCs. Furthermore support is added for the NXP
    PCA9685 LED controller. Another big chunk is the sysfs interface
    which has been in the works for quite some time.

    The remaining patches are a random assortment of cleanups and fixes"

    * tag 'for-3.11-rc1' of git://gitorious.org/linux-pwm/linux-pwm:
    pwm: pwm-tiehrpwm: Use clk_enable/disable instead clk_prepare/unprepare.
    pwm: pca9685: Fix wrong argument to set MODE1_SLEEP bit
    pwm: renesas-tpu: Add MODULE_ALIAS to make module auto loading work
    pwm: renesas-tpu: fix return value check in tpu_probe()
    pwm: Add Renesas TPU PWM driver
    pwm: Add sysfs interface
    pwm: Fill in missing .owner fields
    pwm: add pca9685 driver
    pwm: atmel-tcb: prepare clk before calling enable
    pwm: devm: alloc correct pointer size
    pwm: mxs: Let device core handle pinctrl
    MAINTAINERS: Update PWM subsystem entry

    Linus Torvalds