1. 10 6月, 2014 16 次提交
    • F
      s390/qdio: replace shift loop by ilog2 · 92bdae5d
      Fabian Frederick 提交于
      account_sbals is called by get_inbound_buffer_frontier and
      get_outbound_buffer_frontier with 'count' value > 0 so we can safely
      convert shift loop to ilog2.
      
      Cc: Joe Perches <joe@perches.com>
      Cc: Andrew Morton <akpm@linux-foundation.org>
      Signed-off-by: NFabian Frederick <fabf@skynet.be>
      Signed-off-by: NSebastian Ott <sebott@linux.vnet.ibm.com>
      Signed-off-by: NMartin Schwidefsky <schwidefsky@de.ibm.com>
      92bdae5d
    • S
      s390/cio: silence lockdep warning · dbe33fc9
      Sebastian Ott 提交于
      On systems where a ccw based console device is used a lockdep false alarm
      could be triggered when a device driver calls printk while holding a
      subchannels lock (e.g. in it's irq handler). Since this is valid behavior
      fix this by introducing a separate lock class for the console subchannels
      lock.
      
      The lockdep warning was revealed by "printk: enable interrupts before calling
      console_trylock_for_printk()" which changed console_unlock() to be called with
      lockdep enabled.
      
      [ INFO: possible recursive locking detected ]
      3.15.0-rc5-next-20140520 #1 Not tainted
      ---------------------------------------------
      ccwgroup/2239 is trying to acquire lock:
      (&(sch->lock)->rlock){-.-...}, at: [<0000000000642a52>] raw3215_write+0x52/0x200
      
      but task is already holding lock:
      (&(sch->lock)->rlock){-.-...}, at: [<00000000005fd160>] do_cio_interrupt+0x60/0x108
      
      other info that might help us debug this:
      Possible unsafe locking scenario:
      
      CPU0
      ----
      lock(&(sch->lock)->rlock);
      lock(&(sch->lock)->rlock);
      
      *** DEADLOCK ***
      
      May be due to missing lock nesting notation
      
      8 locks held by ccwgroup/2239:
      
      stack backtrace:
      CPU: 3 PID: 2239 Comm: ccwgroup Not tainted 3.15.0-rc5-next-20140520 #1
      0000000036fab518 0000000036fab528 0000000000000002 0000000000000000
      0000000036fab5b8 0000000036fab530 0000000036fab530 00000000001116e8
      0000000000000000 0000000000986ec4 00000000009701b6 000000000000000b
      0000000036fab578 0000000036fab518 0000000000000000 0000000000000000
      0000000000000000 00000000001116e8 0000000036fab518 0000000036fab578
      Call Trace:
      ([<0000000000111626>] show_trace+0x14e/0x158)
      [<000000000011169a>] show_stack+0x6a/0xe8
      [<00000000007c6e72>] dump_stack+0x82/0xb0
      [<00000000001a95f2>] validate_chain.isra.37+0xa4a/0xbb0
      [<00000000001acaca>] __lock_acquire+0x4da/0xcd0
      [<00000000001ada1a>] lock_acquire+0xba/0x218
      [<00000000007cd634>] _raw_spin_lock_irqsave+0x6c/0xb8
      [<0000000000642a52>] raw3215_write+0x52/0x200
      [<0000000000643d16>] con3215_write+0x76/0xf8
      [<00000000001bd87a>] call_console_drivers.constprop.25+0xfa/0x210
      [<00000000001be0b0>] console_unlock+0x3e0/0x4e8
      [<00000000001be450>] vprintk_emit+0x298/0x6e0
      [<00000000005aa210>] dev_vprintk_emit+0xe0/0x1a8
      [<00000000005aa320>] dev_printk_emit+0x48/0x50
      [<00000000005aa390>] __dev_printk+0x68/0xb0
      [<00000000005aa7c2>] _dev_info+0x62/0x70
      [<0000000000657bf0>] qeth_l2_send_setmac_cb+0xd0/0x190
      [<0000000000651a1e>] qeth_send_control_data_cb+0x3a6/0x6a8
      [<0000000000655546>] qeth_irq+0x1a6/0xac0
      [<000000000060a0ac>] ccw_device_call_handler+0xa4/0xc0
      [<0000000000608b62>] ccw_device_irq+0x5a/0x190
      [<00000000005fd1ca>] do_cio_interrupt+0xca/0x108
      [<00000000001c0a2e>] handle_irq_event_percpu+0x5e/0x378
      [<00000000001c46fc>] handle_percpu_irq+0x6c/0x98
      [<00000000001c0066>] generic_handle_irq+0x46/0x68
      [<000000000010b5b6>] do_IRQ+0x5e/0x88
      [<00000000007cf304>] io_call+0x6/0x20
      [<000000000064c63a>] qeth_send_control_data+0x322/0x570
      ([<000000000064c50e>] qeth_send_control_data+0x1f6/0x570)
      [<0000000000651db2>] qeth_send_ipa_cmd+0x92/0x120
      [<000000000065b310>] __qeth_l2_set_online+0x170/0xaa8
      [<000000000060ebb6>] ccwgroup_set_online+0x56/0x90
      [<000000000060ef96>] ccwgroup_online_store+0xd6/0xe0
      [<000000000033d11a>] kernfs_fop_write+0x10a/0x188
      [<00000000002bbd00>] vfs_write+0x98/0x1c0
      [<00000000002bc8a0>] SyS_write+0x60/0xd0
      [<00000000007cee3a>] sysc_nr_ok+0x22/0x28
      [<000003fffd0c3f28>] 0x3fffd0c3f28
      Reported-by: NHeiko Carstens <heiko.carstens@de.ibm.com>
      Signed-off-by: NSebastian Ott <sebott@linux.vnet.ibm.com>
      Signed-off-by: NMartin Schwidefsky <schwidefsky@de.ibm.com>
      dbe33fc9
    • M
      s390/uaccess: always load the kernel ASCE after task switch · f8b13505
      Martin Schwidefsky 提交于
      This patch fixes a problem introduced with git commit beef560b
      "s390/uaccess: simplify control register updates".
      
      The switch_mm function is not called if the next process is a kernel
      thread without an attached mm or is a nop if the mm does not change.
      But CR1 still needs to be loaded with the kernel ASCE in case the
      code returns to a uaccess function that uses the secondary space mode.
      
      In addition move the set_fs call from finish_arch_switch to
      finish_arch_post_lock_switch and then remove finish_arch_switch.
      Signed-off-by: NMartin Schwidefsky <schwidefsky@de.ibm.com>
      f8b13505
    • M
      s390/ap_bus: Make modules parameters visible in sysfs · c1a42f49
      Michael Veigel 提交于
      Change the visibility of the module parameters ap_domain_index and
      ap_thread_flag for the owner and the members of the owners group in
      sysfs.
      
      Previously the parameters where invisible due to a value of zero
      as permissions parameter in the module_param_named macro.
      Signed-off-by: NMichael Veigel <veigel@de.ibm.com>
      Signed-off-by: NMartin Schwidefsky <schwidefsky@de.ibm.com>
      c1a42f49
    • L
      Merge tag 'for-f2fs-3.16' of git://git.kernel.org/pub/scm/linux/kernel/git/jaegeuk/f2fs · 64b2d1fb
      Linus Torvalds 提交于
      Pull f2fs updates from Jaegeuk Kim:
       "In this round, there is no special interesting feature, but we've
        investigated a couple of tuning points with respect to the I/O flow.
        Several major bug fixes and a bunch of clean-ups also have been made.
      
        This patch-set includes the following major enhancement patches:
         - enhance wait_on_page_writeback
         - support SEEK_DATA and SEEK_HOLE
         - enhance readahead flows
         - enhance IO flushes
         - support fiemap
         - add some tracepoints
      
        The other bug fixes are as follows:
         - fix to support a large volume > 2TB correctly
         - recovery bug fix wrt fallocated space
         - fix recursive lock on xattr operations
         - fix some cases on the remount flow
      
        And, there are a bunch of cleanups"
      
      * tag 'for-f2fs-3.16' of git://git.kernel.org/pub/scm/linux/kernel/git/jaegeuk/f2fs: (52 commits)
        f2fs: support f2fs_fiemap
        f2fs: avoid not to call remove_dirty_inode
        f2fs: recover fallocated space
        f2fs: fix to recover data written by dio
        f2fs: large volume support
        f2fs: avoid crash when trace f2fs_submit_page_mbio event in ra_sum_pages
        f2fs: avoid overflow when large directory feathure is enabled
        f2fs: fix recursive lock by f2fs_setxattr
        MAINTAINERS: add a co-maintainer from samsung for F2FS
        MAINTAINERS: change the email address for f2fs
        f2fs: use inode_init_owner() to simplify codes
        f2fs: avoid to use slab memory in f2fs_issue_flush for efficiency
        f2fs: add a tracepoint for f2fs_read_data_page
        f2fs: add a tracepoint for f2fs_write_{meta,node,data}_pages
        f2fs: add a tracepoint for f2fs_write_{meta,node,data}_page
        f2fs: add a tracepoint for f2fs_write_end
        f2fs: add a tracepoint for f2fs_write_begin
        f2fs: fix checkpatch warning
        f2fs: deactivate inode page if the inode is evicted
        f2fs: decrease the lock granularity during write_begin
        ...
      64b2d1fb
    • L
      Merge branch 'for-next' of git://git.samba.org/sfrench/cifs-2.6 · b1cce803
      Linus Torvalds 提交于
      Pull CIFS fixes from Steve French.
      
      * 'for-next' of git://git.samba.org/sfrench/cifs-2.6:
        CIFS: Fix memory leaks in SMB2_open
        cifs: ensure that vol->username is not NULL before running strlen on it
        Clarify SMB2/SMB3 create context and add missing ones
        Do not send ClientGUID on SMB2.02 dialect
        cifs: Set client guid on per connection basis
        fs/cifs/netmisc.c: convert printk to pr_foo()
        fs/cifs/cifs.c: replace seq_printf by seq_puts
        Update cifs version number to 2.03
        fs: cifs: new helper: file_inode(file)
        cifs: fix potential races in cifs_revalidate_mapping
        cifs: new helper function: cifs_revalidate_mapping
        cifs: convert booleans in cifsInodeInfo to a flags field
        cifs: fix cifs_uniqueid_to_ino_t not to ever return 0
      b1cce803
    • L
      Merge tag 'scsi-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jejb/scsi · 1c54fc1e
      Linus Torvalds 提交于
      Pull SCSI updates from James Bottomley:
       "This patch consists of the usual driver updates (qla2xxx, qla4xxx,
        lpfc, be2iscsi, fnic, ufs, NCR5380) The NCR5380 is the addition to
        maintained status of a long neglected driver for older hardware.  In
        addition there are a lot of minor fixes and cleanups and some more
        updates to make scsi mq ready"
      
      * tag 'scsi-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jejb/scsi: (130 commits)
        include/scsi/osd_protocol.h: remove unnecessary __constant
        mvsas: Recognise device/subsystem 9485/9485 as 88SE9485
        Revert "be2iscsi: Fix processing cqe for cxn whose endpoint is freed"
        mptfusion: fix msgContext in mptctl_hp_hostinfo
        acornscsi: remove linked command support
        scsi/NCR5380: dprintk macro
        fusion: Remove use of DEF_SCSI_QCMD
        fusion: Add free msg frames to the head, not tail of list
        mpt2sas: Add free smids to the head, not tail of list
        mpt2sas: Remove use of DEF_SCSI_QCMD
        mpt2sas: Remove uses of serial_number
        mpt3sas: Remove use of DEF_SCSI_QCMD
        mpt3sas: Remove uses of serial_number
        qla2xxx: Use kmemdup instead of kmalloc + memcpy
        qla4xxx: Use kmemdup instead of kmalloc + memcpy
        qla2xxx: fix incorrect debug printk
        be2iscsi: Bump the driver version
        be2iscsi: Fix processing cqe for cxn whose endpoint is freed
        be2iscsi: Fix destroy MCC-CQ before MCC-EQ is destroyed
        be2iscsi: Fix memory corruption in MBX path
        ...
      1c54fc1e
    • L
      Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/dtor/input · f4f9b8fc
      Linus Torvalds 提交于
      Pull input updates from Dmitry Torokhov:
       "A big update to the Atmel touchscreen driver, devm support for polled
        input devices, several drivers have been converted to using managed
        resources, and assorted driver fixes"
      
      * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/dtor/input: (87 commits)
        Input: synaptics - fix resolution for manually provided min/max
        Input: atmel_mxt_ts - fix invalid return from mxt_get_bootloader_version
        Input: max8997_haptic - add error handling for regulator and pwm
        Input: elantech - don't set bit 1 of reg_10 when the no_hw_res quirk is set
        Input: elantech - deal with clickpads reporting right button events
        Input: edt-ft5x06 - fix an i2c write for M09 support
        Input: omap-keypad - remove platform data support
        ARM: OMAP2+: remove unused omap4-keypad file and code
        Input: ab8500-ponkey - switch to using managed resources
        Input: max8925_onkey - switch to using managed resources
        Input: 88pm860x-ts - switch to using managed resources
        Input: 88pm860x_onkey - switch to using managed resources
        Input: intel-mid-touch - switch to using managed resources
        Input: wacom - process outbound for newer Cintiqs
        Input: wacom - set stylus_in_proximity when pen is in range
        DTS: ARM: OMAP3-N900: Add tsc2005 support
        Input: tsc2005 - add DT support
        Input: add common DT binding for touchscreens
        Input: jornada680_kbd - switch top using managed resources
        Input: adp5520-keys - switch to using managed resources
        ...
      f4f9b8fc
    • L
      Merge tag 'fbdev-omap-dt-3.16' of git://git.kernel.org/pub/scm/linux/kernel/git/tomba/linux · 9894e6d9
      Linus Torvalds 提交于
      Pull OMAP DT fbdev updates from Tomi Valkeinen:
       "Here are display related device tree data changes for OMAP.  They are
        based on an already merged branch to satisfy the dependencies for the
        dts file changes.
      
        Add OMAP DT data:
         - omap5 display subsystem
         - display data for omap5 uEVM board
         - am43xx display subsystem
         - display data for am43xx ePOS and GP boards (LCD only)
         - display data for GTA04 board
         - display data for overo board
         - display data for duovero-parlor board
         - display data for omap3 evm and ldp boards"
      
      * tag 'fbdev-omap-dt-3.16' of git://git.kernel.org/pub/scm/linux/kernel/git/tomba/linux:
        ARM: omap5.dtsi: Add audio related parameters to hdmi node
        ARM: omap4.dtsi: Add audio related parametes to hdmi node
        ARM: dts: duovero-parlor: Add HDMI output
        ARM: dts: overo: Add support for 3.5'' LCD output
        ARM: dts: overo: Add support for 4.3'' LCD output
        ARM: dts: overo: Add support for DVI output
        ARM: dts: Add LCD panel sharp ls037v7dw01 support for omap3-evm and ldp
        ARM: dts: omap3-gta04: Add display support
        ARM: dts: omap5-uevm.dts: add display nodes
        ARM: dts: omap5-uevm.dts: add tca6424a
        ARM: dts: omap5.dtsi: add DSS nodes
        ARM: dts: am43x-epos-evm: add LCD data
        ARM: dts: am437x-gp-evm: add LCD data
        ARM: dts: am4372.dtsi: add DSS information
      9894e6d9
    • L
      Merge branch 'upstream' of git://git.linux-mips.org/pub/scm/ralf/upstream-linus · 82abb273
      Linus Torvalds 提交于
      Pull MIPS updates from Ralf Baechle:
       - three fixes for 3.15 that didn't make it in time
       - limited Octeon 3 support.
       - paravirtualization support
       - improvment to platform support for Netlogix SOCs.
       - add support for powering down the Malta eval board in software
       - add many instructions to the in-kernel microassembler.
       - add support for the BPF JIT.
       - minor cleanups of the BCM47xx code.
       - large cleanup of math emu code resulting in significant code size
         reduction, better readability of the code and more accurate
         emulation.
       - improvments to the MIPS CPS code.
       - support C3 power status for the R4k count/compare clock device.
       - improvments to the GIO support for older SGI workstations.
       - increase number of supported CPUs to 256; this can be reached on
         certain embedded multithreaded ccNUMA configurations.
       - various small cleanups, updates and fixes
      
      * 'upstream' of git://git.linux-mips.org/pub/scm/ralf/upstream-linus: (173 commits)
        MIPS: IP22/IP28: Improve GIO support
        MIPS: Octeon: Add twsi interrupt initialization for OCTEON 3XXX, 5XXX, 63XX
        DEC: Document the R4k MB ASIC mini interrupt controller
        DEC: Add self as the maintainer
        MIPS: Add microMIPS MSA support.
        MIPS: Replace calls to obsolete strict_strto call with kstrto* equivalents.
        MIPS: Replace obsolete strict_strto call with kstrto
        MIPS: BFP: Simplify code slightly.
        MIPS: Call find_vma with the mmap_sem held
        MIPS: Fix 'write_msa_##' inline macro.
        MIPS: Fix MSA toolchain support detection.
        mips: Update the email address of Geert Uytterhoeven
        MIPS: Add minimal defconfig for mips_paravirt
        MIPS: Enable build for new system 'paravirt'
        MIPS: paravirt: Add pci controller for virtio
        MIPS: Add code for new system 'paravirt'
        MIPS: Add functions for hypervisor call
        MIPS: OCTEON: Add OCTEON3 to __get_cpu_type
        MIPS: Add function get_ebase_cpunum
        MIPS: Add minimal support for OCTEON3 to c-r4k.c
        ...
      82abb273
    • L
      Merge tag 'arc-v3.16-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/vgupta/arc · 9b651cc2
      Linus Torvalds 提交于
      Pull ARC updates from Vineet Gupta:
       "Nothing too exciting here, just minor fixes/cleanup.  Only noteworthy
        ones are:
      
         - Moving cache disabling to early boot
         - ARC UART enabled only if earlyprintk setup in cmdline"
      
      * tag 'arc-v3.16-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/vgupta/arc:
        ARC: Disable caches in early boot if so configured
        ARC: [arcfpga] Early ARC UART to be only activated by cmdline
        ARC: [arcfpga] Get rid of legacy BVCI latency unit support
        ARC: remove duplicate header exports
        ARC: arc_local_timer_setup() need not pass own cpu id
        ARC: Fixed spelling errors within comments
        ARC: make start_thread() out-of-line
        ARC: fix mmuv2 warning
        ARC: [SMP] ISS SMP extension bitrot
      9b651cc2
    • L
      Merge tag 'trace-3.16' of git://git.kernel.org/pub/scm/linux/kernel/git/rostedt/linux-trace · 214b9313
      Linus Torvalds 提交于
      Pull tracing updates from Steven Rostedt:
       "Lots of tweaks, small fixes, optimizations, and some helper functions
        to help out the rest of the kernel to ease their use of trace events.
      
        The big change for this release is the allowing of other tracers, such
        as the latency tracers, to be used in the trace instances and allow
        for function or function graph tracing to be in the top level
        simultaneously"
      
      * tag 'trace-3.16' of git://git.kernel.org/pub/scm/linux/kernel/git/rostedt/linux-trace: (44 commits)
        tracing: Fix memory leak on instance deletion
        tracing: Fix leak of ring buffer data when new instances creation fails
        tracing/kprobes: Avoid self tests if tracing is disabled on boot up
        tracing: Return error if ftrace_trace_arrays list is empty
        tracing: Only calculate stats of tracepoint benchmarks for 2^32 times
        tracing: Convert stddev into u64 in tracepoint benchmark
        tracing: Introduce saved_cmdlines_size file
        tracing: Add __get_dynamic_array_len() macro for trace events
        tracing: Remove unused variable in trace_benchmark
        tracing: Eliminate double free on failure of allocation on boot up
        ftrace/x86: Call text_ip_addr() instead of the duplicated code
        tracing: Print max callstack on stacktrace bug
        tracing: Move locking of trace_cmdline_lock into start/stop seq calls
        tracing: Try again for saved cmdline if failed due to locking
        tracing: Have saved_cmdlines use the seq_read infrastructure
        tracing: Add tracepoint benchmark tracepoint
        tracing: Print nasty banner when trace_printk() is in use
        tracing: Add funcgraph_tail option to print function name after closing braces
        tracing: Eliminate duplicate TRACE_GRAPH_PRINT_xx defines
        tracing: Add __bitmask() macro to trace events to cpumasks and other bitmasks
        ...
      214b9313
    • L
      Merge branch 'for-3.16' of git://git.kernel.org/pub/scm/linux/kernel/git/tj/cgroup · 14208b0e
      Linus Torvalds 提交于
      Pull cgroup updates from Tejun Heo:
       "A lot of activities on cgroup side.  Heavy restructuring including
        locking simplification took place to improve the code base and enable
        implementation of the unified hierarchy, which currently exists behind
        a __DEVEL__ mount option.  The core support is mostly complete but
        individual controllers need further work.  To explain the design and
        rationales of the the unified hierarchy
      
              Documentation/cgroups/unified-hierarchy.txt
      
        is added.
      
        Another notable change is css (cgroup_subsys_state - what each
        controller uses to identify and interact with a cgroup) iteration
        update.  This is part of continuing updates on css object lifetime and
        visibility.  cgroup started with reference count draining on removal
        way back and is now reaching a point where csses behave and are
        iterated like normal refcnted objects albeit with some complexities to
        allow distinguishing the state where they're being deleted.  The css
        iteration update isn't taken advantage of yet but is planned to be
        used to simplify memcg significantly"
      
      * 'for-3.16' of git://git.kernel.org/pub/scm/linux/kernel/git/tj/cgroup: (77 commits)
        cgroup: disallow disabled controllers on the default hierarchy
        cgroup: don't destroy the default root
        cgroup: disallow debug controller on the default hierarchy
        cgroup: clean up MAINTAINERS entries
        cgroup: implement css_tryget()
        device_cgroup: use css_has_online_children() instead of has_children()
        cgroup: convert cgroup_has_live_children() into css_has_online_children()
        cgroup: use CSS_ONLINE instead of CGRP_DEAD
        cgroup: iterate cgroup_subsys_states directly
        cgroup: introduce CSS_RELEASED and reduce css iteration fallback window
        cgroup: move cgroup->serial_nr into cgroup_subsys_state
        cgroup: link all cgroup_subsys_states in their sibling lists
        cgroup: move cgroup->sibling and ->children into cgroup_subsys_state
        cgroup: remove cgroup->parent
        device_cgroup: remove direct access to cgroup->children
        memcg: update memcg_has_children() to use css_next_child()
        memcg: remove tasks/children test from mem_cgroup_force_empty()
        cgroup: remove css_parent()
        cgroup: skip refcnting on normal root csses and cgrp_dfl_root self css
        cgroup: use cgroup->self.refcnt for cgroup refcnting
        ...
      14208b0e
    • L
      Merge branch 'for-3.16' of git://git.kernel.org/pub/scm/linux/kernel/git/tj/libata · 6ea4fa70
      Linus Torvalds 提交于
      Pull libata updates from Tejun Heo:
       "Nothing too interesting - another ahci platform driver variant,
        additional controller support, minor fixes and cleanups"
      
      * 'for-3.16' of git://git.kernel.org/pub/scm/linux/kernel/git/tj/libata:
        ahci: Add Device ID for HighPoint RocketRaid 642L
        ata: ep93xx: use dmaengine_prep_slave_sg api instead of internal callback
        ahci: add PCI ID for Marvell 88SE91A0 SATA Controller
        sata_fsl: remove check for CONFIG_MPC8315_DS
        ahci: add support for Hisilicon sata
        libahci_platform: add host_flags parameter in ahci_platform_init_host()
        ata: ahci: append new hflag AHCI_HFLAG_NO_FBS
        ata: use CONFIG_PM_SLEEP instead of CONFIG_PM where applicable in host drivers
        ata: ahci_mvebu: new driver for Marvell Armada 380 AHCI interfaces
        Documentation: dt-bindings: reformat and order list of ahci-platform compatibles
        libata-sff: remove dead code
        ata: SATL compliance for Inquiry Product Revision
        pata_octeon_cf: use devm_kzalloc() to allocate cf_port
      6ea4fa70
    • L
      Merge branch 'for-3.16' of git://git.kernel.org/pub/scm/linux/kernel/git/tj/wq · da85d191
      Linus Torvalds 提交于
      Pull workqueue updates from Tejun Heo:
       "Lai simplified worker destruction path and internal workqueue locking
        and there are some other minor changes.
      
        Except for the removal of some long-deprecated interfaces which
        haven't had any in-kernel user for quite a while, there shouldn't be
        any difference to workqueue users"
      
      * 'for-3.16' of git://git.kernel.org/pub/scm/linux/kernel/git/tj/wq:
        kernel/workqueue.c: pr_warning/pr_warn & printk/pr_info
        workqueue: remove the confusing POOL_FREEZING
        workqueue: rename first_worker() to first_idle_worker()
        workqueue: remove unused work_clear_pending()
        workqueue: remove unused WORK_CPU_END
        workqueue: declare system_highpri_wq
        workqueue: use generic attach/detach routine for rescuers
        workqueue: separate pool-attaching code out from create_worker()
        workqueue: rename manager_mutex to attach_mutex
        workqueue: narrow the protection range of manager_mutex
        workqueue: convert worker_idr to worker_ida
        workqueue: separate iteration role from worker_idr
        workqueue: destroy worker directly in the idle timeout handler
        workqueue: async worker destruction
        workqueue: destroy_worker() should destroy idle workers only
        workqueue: use manager lock only to protect worker_idr
        workqueue: Remove deprecated system_nrt[_freezable]_wq
        workqueue: Remove deprecated flush[_delayed]_work_sync()
        kernel/workqueue.c: pr_warning/pr_warn & printk/pr_info
        workqueue: simplify wq_update_unbound_numa() by jumping to use_dfl_pwq if the target cpumask equals wq's
      da85d191
    • L
      Merge branch 'for-3.16' of git://git.kernel.org/pub/scm/linux/kernel/git/tj/percpu · 68a29ef2
      Linus Torvalds 提交于
      Pull percpu updates from Tejun Heo:
       "Nothing too exciting.  percpu_ref is going through some interface
        changes and getting new features with more changes in the pipeline but
        given its young age and few users, it's very low impact"
      
      * 'for-3.16' of git://git.kernel.org/pub/scm/linux/kernel/git/tj/percpu:
        percpu-refcount: implement percpu_ref_tryget()
        percpu-refcount: rename percpu_ref_tryget() to percpu_ref_tryget_live()
        percpu: Replace __get_cpu_var with this_cpu_ptr
      68a29ef2
  2. 09 6月, 2014 10 次提交
    • J
    • L
      Merge tag 'for-linus-3.16-merge-window' of... · 963649d7
      Linus Torvalds 提交于
      Merge tag 'for-linus-3.16-merge-window' of git://git.kernel.org/pub/scm/linux/kernel/git/ericvh/v9fs
      
      Pull 9p fixes from Eric Van Hensbergen:
       "Two bug fixes, one in xattr error path and the other in parsing
        major/minor numbers from devices"
      
      * tag 'for-linus-3.16-merge-window' of git://git.kernel.org/pub/scm/linux/kernel/git/ericvh/v9fs:
        9P: fix return value in v9fs_fid_xattr_set
        fs/9p: adjust sscanf parameters accordingly to the variable types
      963649d7
    • R
      numa,sched: fix load_to_imbalanced logic inversion · 1662867a
      Rik van Riel 提交于
      This function is supposed to return true if the new load imbalance is
      worse than the old one.  It didn't.  I can only hope brown paper bags
      are in style.
      
      Now things converge much better on both the 4 node and 8 node systems.
      
      I am not sure why this did not seem to impact specjbb performance on the
      4 node system, which is the system I have full-time access to.
      
      This bug was introduced recently, with commit e63da036 ("sched/numa:
      Allow task switch if load imbalance improves")
      Signed-off-by: NRik van Riel <riel@redhat.com>
      Signed-off-by: NLinus Torvalds <torvalds@linux-foundation.org>
      1662867a
    • L
      Don't trigger congestion wait on dirty-but-not-writeout pages · b738d764
      Linus Torvalds 提交于
      shrink_inactive_list() used to wait 0.1s to avoid congestion when all
      the pages that were isolated from the inactive list were dirty but not
      under active writeback.  That makes no real sense, and apparently causes
      major interactivity issues under some loads since 3.11.
      
      The ostensible reason for it was to wait for kswapd to start writing
      pages, but that seems questionable as well, since the congestion wait
      code seems to trigger for kswapd itself as well.  Also, the logic behind
      delaying anything when we haven't actually started writeback is not
      clear - it only delays actually starting that writeback.
      
      We'll still trigger the congestion waiting if
      
       (a) the process is kswapd, and we hit pages flagged for immediate
           reclaim
      
       (b) the process is not kswapd, and the zone backing dev writeback is
           actually congested.
      
      This probably needs to be revisited, but as it is this fixes a reported
      regression.
      Reported-by: NFelipe Contreras <felipe.contreras@gmail.com>
      Pinpointed-by: NHillf Danton <dhillf@gmail.com>
      Cc: Michal Hocko <mhocko@suse.cz>
      Cc: Andrew Morton <akpm@linux-foundation.org>
      Cc: Mel Gorman <mgorman@suse.de>
      Signed-off-by: NLinus Torvalds <torvalds@linux-foundation.org>
      b738d764
    • L
      Merge tag 'ext4_for_linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tytso/ext4 · f8409abd
      Linus Torvalds 提交于
      Pull ext4 updates from Ted Ts'o:
       "Clean ups and miscellaneous bug fixes, in particular for the new
        collapse_range and zero_range fallocate functions.  In addition,
        improve the scalability of adding and remove inodes from the orphan
        list"
      
      * tag 'ext4_for_linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tytso/ext4: (25 commits)
        ext4: handle symlink properly with inline_data
        ext4: fix wrong assert in ext4_mb_normalize_request()
        ext4: fix zeroing of page during writeback
        ext4: remove unused local variable "stored" from ext4_readdir(...)
        ext4: fix ZERO_RANGE test failure in data journalling
        ext4: reduce contention on s_orphan_lock
        ext4: use sbi in ext4_orphan_{add|del}()
        ext4: use EXT_MAX_BLOCKS in ext4_es_can_be_merged()
        ext4: add missing BUFFER_TRACE before ext4_journal_get_write_access
        ext4: remove unnecessary double parentheses
        ext4: do not destroy ext4_groupinfo_caches if ext4_mb_init() fails
        ext4: make local functions static
        ext4: fix block bitmap validation when bigalloc, ^flex_bg
        ext4: fix block bitmap initialization under sparse_super2
        ext4: find the group descriptors on a 1k-block bigalloc,meta_bg filesystem
        ext4: avoid unneeded lookup when xattr name is invalid
        ext4: fix data integrity sync in ordered mode
        ext4: remove obsoleted check
        ext4: add a new spinlock i_raw_lock to protect the ext4's raw inode
        ext4: fix locking for O_APPEND writes
        ...
      f8409abd
    • L
      Merge tag 'llvmlinux-for-v3.16' of git://git.linuxfoundation.org/llvmlinux/kernel · b20dcab9
      Linus Torvalds 提交于
      Pull LLVM patches from Behan Webster:
       "Next set of patches to support compiling the kernel with clang.
        They've been soaking in linux-next since the last merge window.
      
        More still in the works for the next merge window..."
      
      * tag 'llvmlinux-for-v3.16' of git://git.linuxfoundation.org/llvmlinux/kernel:
        arm, unwind, LLVMLinux: Enable clang to be used for unwinding the stack
        ARM: LLVMLinux: Change "extern inline" to "static inline" in glue-cache.h
        all: LLVMLinux: Change DWARF flag to support gcc and clang
        net: netfilter: LLVMLinux: vlais-netfilter
        crypto: LLVMLinux: aligned-attribute.patch
      b20dcab9
    • L
      Merge branch 'x86-vdso-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip · ed81e780
      Linus Torvalds 提交于
      Pull x86 vdso build fix from Peter Anvin:
       "This fixes building the vdso code on older Linux systems, and probably
        some non-Linux systems"
      
      * 'x86-vdso-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
        x86, vdso: Use <tools/le_byteshift.h> for littleendian access
      ed81e780
    • L
      Merge branch 'next' (accumulated 3.16 merge window patches) into master · 3f17ea6d
      Linus Torvalds 提交于
      Now that 3.15 is released, this merges the 'next' branch into 'master',
      bringing us to the normal situation where my 'master' branch is the
      merge window.
      
      * accumulated work in next: (6809 commits)
        ufs: sb mutex merge + mutex_destroy
        powerpc: update comments for generic idle conversion
        cris: update comments for generic idle conversion
        idle: remove cpu_idle() forward declarations
        nbd: zero from and len fields in NBD_CMD_DISCONNECT.
        mm: convert some level-less printks to pr_*
        MAINTAINERS: adi-buildroot-devel is moderated
        MAINTAINERS: add linux-api for review of API/ABI changes
        mm/kmemleak-test.c: use pr_fmt for logging
        fs/dlm/debug_fs.c: replace seq_printf by seq_puts
        fs/dlm/lockspace.c: convert simple_str to kstr
        fs/dlm/config.c: convert simple_str to kstr
        mm: mark remap_file_pages() syscall as deprecated
        mm: memcontrol: remove unnecessary memcg argument from soft limit functions
        mm: memcontrol: clean up memcg zoneinfo lookup
        mm/memblock.c: call kmemleak directly from memblock_(alloc|free)
        mm/mempool.c: update the kmemleak stack trace for mempool allocations
        lib/radix-tree.c: update the kmemleak stack trace for radix tree allocations
        mm: introduce kmemleak_update_trace()
        mm/kmemleak.c: use %u to print ->checksum
        ...
      3f17ea6d
    • L
      Linux 3.15 · 1860e379
      Linus Torvalds 提交于
      1860e379
    • L
      Revert "x86/smpboot: Initialize secondary CPU only if master CPU will wait for it" · bb077d60
      Linus Torvalds 提交于
      This reverts commit 3e1a878b.
      
      It came in very late, and already has one reported failure: Sitsofe
      reports that the current tree fails to boot on his EeePC, and bisected
      it down to this.  Rather than waste time trying to figure out what's
      wrong, just revert it.
      Reported-by: NSitsofe Wheeler <sitsofe@gmail.com>
      Cc: Igor Mammedov <imammedo@redhat.com>
      Cc: Toshi Kani <toshi.kani@hp.com>
      Cc: Thomas Gleixner <tglx@linutronix.de>
      Acked-by: NIngo Molnar <mingo@kernel.org>
      Signed-off-by: NLinus Torvalds <torvalds@linux-foundation.org>
      bb077d60
  3. 08 6月, 2014 14 次提交
    • D
      Merge branch 'next' into for-linus · a292241c
      Dmitry Torokhov 提交于
      Prepare input updates for 3.16.
      a292241c
    • B
      Input: synaptics - fix resolution for manually provided min/max · d49cb7ae
      Benjamin Tissoires 提交于
      commit 421e08c4 fixed the reported min/max for the X and Y axis,
      but unfortunately, it broke the resolution of those same axis.
      
      On the t540p, the resolution is the same regarding X and Y. It is not
      a problem for xf86-input-synaptics because this driver is only interested
      in the ratio between X and Y.
      Unfortunately, xf86-input-cmt uses directly the resolution, and having a
      null resolution leads to some divide by 0 errors, which are translated by
      -infinity in the resulting coordinates.
      Reported-by: NPeter Hutterer <peter.hutterer@who-t.net>
      Signed-off-by: NBenjamin Tissoires <benjamin.tissoires@redhat.com>
      Cc: stable@vger.kernel.org
      Signed-off-by: NDmitry Torokhov <dmitry.torokhov@gmail.com>
      d49cb7ae
    • N
      Input: atmel_mxt_ts - fix invalid return from mxt_get_bootloader_version · 68807a0c
      Nick Dyer 提交于
      The patch e57a66aa: "Input: atmel_mxt_ts - read and report
      bootloader version" from May 18, 2014, leads to the following static
      checker warning:
      
      	drivers/input/touchscreen/atmel_mxt_ts.c:437 mxt_get_bootloader_version()
      	warn: signedness bug returning '(-5)'
      
      drivers/input/touchscreen/atmel_mxt_ts.c
         429  static u8 mxt_get_bootloader_version(struct mxt_data *data, u8 val)
         430  {
         431          struct device *dev = &data->client->dev;
         432          u8 buf[3];
         433
         434          if (val & MXT_BOOT_EXTENDED_ID) {
         435                  if (mxt_bootloader_read(data, &buf[0], 3) != 0) {
         436                          dev_err(dev, "%s: i2c failure\n", __func__);
         437                          return -EIO;
                                             ^^^^
      This gets truncated into a number from 0-255 and anyway the caller
      doesn't check for errors.
      
      (reported by Dan Carpenter)
      Signed-off-by: NNick Dyer <nick.dyer@itdev.co.uk>
      Signed-off-by: NDmitry Torokhov <dmitry.torokhov@gmail.com>
      68807a0c
    • S
      Input: max8997_haptic - add error handling for regulator and pwm · b1bc3031
      Sachin Kamat 提交于
      Let's start checking return value of regulator_enable and pwm_enable to
      avoid errors. Fixes the following warning:
      
      drivers/input/misc/max8997_haptic.c:185:19: warning: ignoring return value of ‘regulator_enable’, declared with attribute warn_unused_result [-Wunused-result]
      Signed-off-by: NSachin Kamat <sachin.kamat@linaro.org>
      Signed-off-by: NDmitry Torokhov <dmitry.torokhov@gmail.com>
      b1bc3031
    • H
      Input: elantech - don't set bit 1 of reg_10 when the no_hw_res quirk is set · fb4f8f56
      Hans de Goede 提交于
      The touchpad on the GIGABYTE U2442 not only stops communicating when we try
      to set bit 3 (enable real hardware resolution) of reg_10, but on some BIOS
      versions also when we set bit 1 (enable two finger mode auto correct).
      
      I've asked the original reporter of:
      https://bugzilla.kernel.org/show_bug.cgi?id=61151
      
      To check that not setting bit 1 does not lead to any adverse effects on his
      model / BIOS revision, and it does not, so this commit fixes the touchpad
      not working on these versions by simply never setting bit 1 for laptop
      models with the no_hw_res quirk.
      Reported-and-tested-by: NJames Lademann <jwlademann@gmail.com>
      Tested-by: NPhilipp Wolfer <ph.wolfer@gmail.com>
      Cc: stable@vger.kernel.org
      Signed-off-by: NHans de Goede <hdegoede@redhat.com>
      Signed-off-by: NDmitry Torokhov <dmitry.torokhov@gmail.com>
      fb4f8f56
    • H
      Input: elantech - deal with clickpads reporting right button events · cd9e83e2
      Hans de Goede 提交于
      At least the Dell Vostro 5470 elantech *clickpad* reports right button
      clicks when clicked in the right bottom area:
      
      https://bugzilla.redhat.com/show_bug.cgi?id=1103528
      
      This is different from how (elantech) clickpads normally operate, normally
      no matter where the user clicks on the pad the pad always reports a left
      button event, since there is only 1 hardware button beneath the path.
      
      It looks like Dell has put 2 buttons under the pad, one under each bottom
      corner, causing this.
      
      Since this however still clearly is a real clickpad hardware-wise, we still
      want to report it as such to userspace, so that things like finger movement
      in the bottom area can be properly ignored as it should be on clickpads.
      
      So deal with this weirdness by simply mapping a right click to a left click
      on elantech clickpads. As an added advantage this is something which we can
      simply do on all elantech clickpads, so no need to add special quirks for
      this weird model.
      Reported-and-tested-by: NElder Marco <eldermarco@gmail.com>
      Cc: stable@vger.kernel.org
      Signed-off-by: NHans de Goede <hdegoede@redhat.com>
      Signed-off-by: NDmitry Torokhov <dmitry.torokhov@gmail.com>
      cd9e83e2
    • R
      Input: edt-ft5x06 - fix an i2c write for M09 support · cc071aca
      Robert Woerle 提交于
      The driver sends 3 bytes instead of 2 when accessing a register on the M09
      firmware, so writing to gain seems to overflow into the offset register.
      Signed-off-by: NRobert Woerle <robert@linuxdevelopment.de>
      Acked-By: NSimon Budig <simon.budig@kernelconcepts.de>
      Signed-off-by: NDmitry Torokhov <dmitry.torokhov@gmail.com>
      cc071aca
    • L
      Merge tag 'clk-for-linus-3.16' of git://git.linaro.org/people/mike.turquette/linux into next · 1a5700bc
      Linus Torvalds 提交于
      Pull clock framework updates from Mike Turquette:
       "The clock framework changes for 3.16 are pretty typical: mostly clock
        driver additions and fixes.  There are additions to the clock core
        code for some of the basic types (e.g. the common divider type has
        some fixes and featured added to it).
      
        One minor annoyance is a last-minute dependency that wasn't handled
        quite right.  Commit ba0fae3b ("clk: berlin: add core clock driver
        for BG2/BG2CD") in this pull request depends on
        include/dt-bindings/clock/berlin2.h, which is already in your tree via
        the arm-soc pull request.  Building for the berlin platform will break
        when the clk tree is built on it's own, but merged into your master
        branch everything should be fine"
      
      * tag 'clk-for-linus-3.16' of git://git.linaro.org/people/mike.turquette/linux: (75 commits)
        mmc: sunxi: Add driver for SD/MMC hosts found on Allwinner sunxi SoCs
        clk: export __clk_round_rate for providers
        clk: versatile: free icst on error return
        clk: qcom: Return error pointers for unimplemented clocks
        clk: qcom: Support msm8974pro global clock control hardware
        clk: qcom: Properly support display clocks on msm8974
        clk: qcom: Support display RCG clocks
        clk: qcom: Return highest rate when round_rate() exceeds plan
        clk: qcom: Fix mmcc-8974's PLL configurations
        clk: qcom: Fix clk_rcg2_is_enabled() check
        clk: berlin: add core clock driver for BG2Q
        clk: berlin: add core clock driver for BG2/BG2CD
        clk: berlin: add driver for BG2x complex divider cells
        clk: berlin: add driver for BG2x simple PLLs
        clk: berlin: add driver for BG2x audio/video PLL
        clk: st: Terminate of match table
        clk/exynos4: Fix compilation warning
        ARM: shmobile: r8a7779: Add clock index macros for DT sources
        clk: divider: Fix overflow in clk_divider_bestdiv
        clk: u300: Terminate of match table
        ...
      1a5700bc
    • L
      Merge tag 'vfio-v3.16-rc1' of git://github.com/awilliam/linux-vfio into next · a68a7509
      Linus Torvalds 提交于
      Pull VFIO updates from Alex Williamson:
       "A handful of VFIO bug fixes for v3.16"
      
      * tag 'vfio-v3.16-rc1' of git://github.com/awilliam/linux-vfio:
        drivers/vfio/pci: Fix wrong MSI interrupt count
        drivers/vfio: Rework offsetofend()
        vfio/iommu_type1: Avoid overflow
        vfio/pci: Fix unchecked return value
        vfio/pci: Fix sizing of DPA and THP express capabilities
      a68a7509
    • L
      Merge git://git.kernel.org/pub/scm/linux/kernel/git/herbert/cryptodev-2.6 into next · 639b4ac6
      Linus Torvalds 提交于
      Pull crypto updates from Herbert Xu:
       "Here is the crypto update for 3.16:
      
         - Added test vectors for SHA/AES-CCM/DES-CBC/3DES-CBC.
         - Fixed a number of error-path memory leaks in tcrypt.
         - Fixed error-path memory leak in caam.
         - Removed unnecessary global mutex from mxs-dcp.
         - Added ahash walk interface that can actually be asynchronous.
         - Cleaned up caam error reporting.
         - Allow crypto_user get operation to be used by non-root users.
         - Add support for SSS module on Exynos.
         - Misc fixes"
      
      * git://git.kernel.org/pub/scm/linux/kernel/git/herbert/cryptodev-2.6: (60 commits)
        crypto: testmgr - add aead cbc des, des3_ede tests
        crypto: testmgr - Fix DMA-API warning
        crypto: cesa - tfm->__crt_alg->cra_type directly
        crypto: sahara - tfm->__crt_alg->cra_name directly
        crypto: padlock - tfm->__crt_alg->cra_name directly
        crypto: n2 - tfm->__crt_alg->cra_name directly
        crypto: dcp - tfm->__crt_alg->cra_name directly
        crypto: cesa - tfm->__crt_alg->cra_name directly
        crypto: ccp - tfm->__crt_alg->cra_name directly
        crypto: geode - Don't use tfm->__crt_alg->cra_name directly
        crypto: geode - Weed out printk() from probe()
        crypto: geode - Consistently use AES_KEYSIZE_128
        crypto: geode - Kill AES_IV_LENGTH
        crypto: geode - Kill AES_MIN_BLOCK_SIZE
        crypto: mxs-dcp - Remove global mutex
        crypto: hash - Add real ahash walk interface
        hwrng: n2-drv - Introduce the use of the managed version of kzalloc
        crypto: caam - reinitialize keys_fit_inline for decrypt and givencrypt
        crypto: s5p-sss - fix multiplatform build
        hwrng: timeriomem - remove unnecessary OOM messages
        ...
      639b4ac6
    • L
      Merge branch 'for-linus' of git://git.open-osd.org/linux-open-osd into next · 9d2cd01b
      Linus Torvalds 提交于
      Pull exofs raid6 support from Boaz Harrosh:
       "These simple patches will enable raid6 using the kernel's raid6_pq
        engine for support under exofs and pnfs-objects.
      
        There is nothing needed to do at exofs and pnfs-obj.  Just fire your
        mkfs.exofs with --raid=6 (that was already supported before) and off
        you go as usual.  The ORE will pick up the new map and will start
        writing two devices of redundancy bits.  The patches are so simple
        because most of the ORE was already for the general raid case, only a
        few bug fixes were needed and the actual wiring into the raid6_pq
        engine"
      
      * 'for-linus' of git://git.open-osd.org/linux-open-osd:
        ore: Support for raid 6
        ore: Remove redundant dev_order(), more cleanups
        ore: (trivial) reformat some code
      9d2cd01b
    • J
      f2fs: support f2fs_fiemap · 9ab70134
      Jaegeuk Kim 提交于
      This patch links f2fs_fiemap with generic function with get_block.
      Signed-off-by: NJaegeuk Kim <jaegeuk@kernel.org>
      9ab70134
    • L
      Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/mason/linux-btrfs · c593e897
      Linus Torvalds 提交于
      Pull btrfs fix from Chris Mason:
       "I had this in my 3.16 merge window queue, but it is small and obvious
        enough for 3.15.  I cherry-picked and retested against current rc8"
      
      * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/mason/linux-btrfs:
        Btrfs: send, fix corrupted path strings for long paths
      c593e897
    • L
      Merge git://git.kernel.org/pub/scm/linux/kernel/git/nab/target-pending · 052e5c7e
      Linus Torvalds 提交于
      Pull SCSI target fixes from Nicholas Bellinger:
       "Here are the remaining fixes for v3.15.
      
        This series includes:
      
         - iser-target fix for ImmediateData exception reference count bug
           (Sagi + nab)
         - iscsi-target fix for MC/S login + potential iser-target MRDSL
           buffer overrun (Santosh + Roland)
         - iser-target fix for v3.15-rc multi network portal shutdown
           regression (nab)
         - target fix for allowing READ_CAPCITY during ALUA Standby access
           state (Chris + nab)
         - target fix for NULL pointer dereference of alua_access_state for
           un-configured devices (Chris + nab)"
      
      * git://git.kernel.org/pub/scm/linux/kernel/git/nab/target-pending:
        target: Fix alua_access_state attribute OOPs for un-configured devices
        target: Allow READ_CAPACITY opcode in ALUA Standby access state
        iser-target: Fix multi network portal shutdown regression
        iscsi-target: Fix wrong buffer / buffer overrun in iscsi_change_param_value()
        iser-target: Add missing target_put_sess_cmd for ImmedateData failure
      052e5c7e