1. 29 Apr, 2013 27 commits
    • H Hartley Sweeten's avatar
      drivers/video/ep93xx-fb.c: fix section mismatch and use module_platform_driver · bb5254d2
      H Hartley Sweeten authored
      Remove the __init tags from the ep93xxfb_calc_fbsize() and
      ep93xxfb_alloc_videomem() functions to fix the section mismatch
      warnings.
      
      Use module_platform_driver() to remove the init/exit boilerplate.
      Signed-off-by: default avatarH Hartley Sweeten <hsweeten@visionengravers.com>
      Cc: Ryan Mallon <rmallon@gmail.com>
      Cc: Florian Tobias Schandinat <FlorianSchandinat@gmx.de>
      Signed-off-by: default avatarAndrew Morton <akpm@linux-foundation.org>
      Signed-off-by: default avatarLinus Torvalds <torvalds@linux-foundation.org>
      bb5254d2
    • Sachin Kamat's avatar
      drivers/video/exynos/exynos_mipi_dsi.c: convert to devm_ioremap_resource() · 6637eca3
      Sachin Kamat authored
      Use the newly introduced devm_ioremap_resource() instead of
      devm_request_and_ioremap() which provides more consistent error
      handling.
      
      devm_ioremap_resource() provides its own error messages; so all explicit
      error messages can be removed from the failure code paths.
      Signed-off-by: default avatarSachin Kamat <sachin.kamat@linaro.org>
      Cc: Donghwa Lee <dh09.lee@samsung.com>
      Cc: Florian Tobias Schandinat <FlorianSchandinat@gmx.de>
      Reviewed-by: default avatarThierry Reding <thierry.reding@avionic-design.de>
      Signed-off-by: default avatarAndrew Morton <akpm@linux-foundation.org>
      Signed-off-by: default avatarLinus Torvalds <torvalds@linux-foundation.org>
      6637eca3
    • Haiyang Zhang's avatar
      drivers/video: add Hyper-V Synthetic Video Frame Buffer Driver · 68a2d20b
      Haiyang Zhang authored
      This is the driver for the Hyper-V Synthetic Video, which supports
      screen resolution up to Full HD 1920x1080 on Windows Server 2012 host,
      and 1600x1200 on Windows Server 2008 R2 or earlier.  It also solves the
      double mouse cursor issue of the emulated video mode.
      Signed-off-by: default avatarHaiyang Zhang <haiyangz@microsoft.com>
      Reviewed-by: default avatarK. Y. Srinivasan <kys@microsoft.com>
      Cc: Greg Kroah-Hartman <gregkh@linuxfoundation.org>,
      Cc: Olaf Hering <olaf@aepfle.de>
      Cc: Geert Uytterhoeven <geert@linux-m68k.org>
      Cc: Florian Tobias Schandinat <FlorianSchandinat@gmx.de>
      Signed-off-by: default avatarAndrew Morton <akpm@linux-foundation.org>
      Signed-off-by: default avatarLinus Torvalds <torvalds@linux-foundation.org>
      68a2d20b
    • Devendra Naga's avatar
      drivers/video/console/fbcon_cw.c: fix compiler warning in cw_update_attr · 6cd472d3
      Devendra Naga authored
      With make W=1 we get
      
        drivers/video/console/fbcon_cw.c: In function `cw_update_attr':
        drivers/video/console/fbcon_cw.c:30:8: warning: variable `t' set but not used [-Wunused-but-set-variable]
      
      fixed by removing as since its used nowhere
      Signed-off-by: default avatarDevendra Naga <devendra.aaru@gmail.com>
      Cc: Florian Tobias Schandinat <FlorianSchandinat@gmx.de>
      Signed-off-by: default avatarAndrew Morton <akpm@linux-foundation.org>
      Signed-off-by: default avatarLinus Torvalds <torvalds@linux-foundation.org>
      6cd472d3
    • Shubhrajyoti Datta's avatar
      matroxfb: convert struct i2c_msg initialization to C99 format · 86fa05e0
      Shubhrajyoti Datta authored
      Convert the struct i2c_msg initialization to C99 format.  This makes
      maintaining and editing the code simpler.  Also helps once other fields
      like transferred are added in future.
      
      Thanks to Julia Lawall for automating the conversion.
      Signed-off-by: default avatarShubhrajyoti D <shubhrajyoti@ti.com>
      Signed-off-by: default avatarJean Delvare <khali@linux-fr.org>
      Cc: Julia Lawall <julia@diku.dk>
      Cc: Florian Tobias Schandinat <FlorianSchandinat@gmx.de>
      Signed-off-by: default avatarAndrew Morton <akpm@linux-foundation.org>
      Signed-off-by: default avatarLinus Torvalds <torvalds@linux-foundation.org>
      86fa05e0
    • Chen Gang's avatar
      kernel/audit_tree.c: tree will leak memory when failure occurs in audit_trim_trees() · 12b2f117
      Chen Gang authored
      audit_trim_trees() calls get_tree().  If a failure occurs we must call
      put_tree().
      
      [akpm@linux-foundation.org: run put_tree() before mutex_lock() for small scalability improvement]
      Signed-off-by: default avatarChen Gang <gang.chen@asianux.com>
      Cc: Al Viro <viro@zeniv.linux.org.uk>
      Cc: Eric Paris <eparis@redhat.com>
      Signed-off-by: default avatarAndrew Morton <akpm@linux-foundation.org>
      Signed-off-by: default avatarLinus Torvalds <torvalds@linux-foundation.org>
      12b2f117
    • Chen Gang's avatar
      kernel/auditfilter.c: tree and watch will memory leak when failure occurs · 373e0f34
      Chen Gang authored
      In audit_data_to_entry() when a failure occurs we must check and free
      the tree and watch to avoid a memory leak.
      
        test:
          plan:
            test command:
              "auditctl -a exit,always -w /etc -F auid=-1"
              (on fedora17, need modify auditctl to let "-w /etc" has effect)
            running:
              under fedora17 x86_64, 2 CPUs 3.20GHz, 2.5GB RAM.
              let 15 auditctl processes continue running at the same time.
            monitor command:
              watch -d -n 1 "cat /proc/meminfo | awk '{print \$2}' \
                | head -n 4 | xargs \
                | awk '{print \"used \",\$1 - \$2 - \$3 - \$4}'"
      
          result:
            for original version:
              will use up all memory, within 3 hours.
              kill all auditctl, the memory still does not free.
            for new version (apply this patch):
              after 14 hours later, not find issues.
      Signed-off-by: default avatarChen Gang <gang.chen@asianux.com>
      Cc: Eric Paris <eparis@redhat.com>
      Cc: Al Viro <viro@zeniv.linux.org.uk>
      Signed-off-by: default avatarAndrew Morton <akpm@linux-foundation.org>
      Signed-off-by: default avatarLinus Torvalds <torvalds@linux-foundation.org>
      373e0f34
    • Gao feng's avatar
      audit: remove unnecessary #if CONFIG_AUDIT · dde5b7d6
      Gao feng authored
      The files which include kernel/audit.h are complied only when
      CONFIG_AUDIT is set.
      
      Just like audit_pid, there is no need to surround audit_ever_enabled
      with CONFIG_AUDIT.
      Signed-off-by: default avatarGao feng <gaofeng@cn.fujitsu.com>
      Cc: Al Viro <viro@zeniv.linux.org.uk>
      Cc: Eric Paris <eparis@redhat.com>
      Signed-off-by: default avatarAndrew Morton <akpm@linux-foundation.org>
      Signed-off-by: default avatarLinus Torvalds <torvalds@linux-foundation.org>
      dde5b7d6
    • Gao feng's avatar
      audit: remove duplicate export of audit_enabled · 374c586d
      Gao feng authored
      audit_enabled has already been exported in include/linux/audit.h.  and
      kernel/audit.h includes include/linux/audit.h, no need to export
      aduit_enabled again in kernel/audit.h
      Signed-off-by: default avatarGao feng <gaofeng@cn.fujitsu.com>
      Cc: Al Viro <viro@zeniv.linux.org.uk>
      Cc: Eric Paris <eparis@redhat.com>
      Signed-off-by: default avatarAndrew Morton <akpm@linux-foundation.org>
      Signed-off-by: default avatarLinus Torvalds <torvalds@linux-foundation.org>
      374c586d
    • Gao feng's avatar
      audit: don't check if kauditd is valid every time · 13f51e1c
      Gao feng authored
      We only need to check if kauditd is valid after we start it, if kauditd
      is invalid, we will set kauditd_task to NULL.  So next time, we will
      start kauditd again.
      
      It means if kauditd_task is not NULL,it must be valid.
      Signed-off-by: default avatarGao feng <gaofeng@cn.fujitsu.com>
      Cc: Eric Paris <eparis@redhat.com>
      Cc: Al Viro <viro@zeniv.linux.org.uk>
      Signed-off-by: default avatarAndrew Morton <akpm@linux-foundation.org>
      Signed-off-by: default avatarLinus Torvalds <torvalds@linux-foundation.org>
      13f51e1c
    • Rakib Mullick's avatar
      kernel/auditsc.c: use kzalloc instead of kmalloc+memset · 3f68613f
      Rakib Mullick authored
      In audit_alloc_context() use kzalloc instead of kmalloc+memset.  Also
      rename audit_zero_context() to audit_set_context(), to represent it's
      inner workings properly.
      
      [akpm@linux-foundation.org: remove audit_set_context() altogether - fold it into its caller]
      Signed-off-by: default avatarRakib Mullick <rakib.mullick@gmail.com>
      Cc: Al Viro <viro@zeniv.linux.org.uk>
      Cc: Eric Paris <eparis@redhat.com>
      Signed-off-by: default avatarAndrew Morton <akpm@linux-foundation.org>
      Signed-off-by: default avatarLinus Torvalds <torvalds@linux-foundation.org>
      3f68613f
    • Oleg Nesterov's avatar
      kthread: kill task_get_live_kthread() · b5c5442b
      Oleg Nesterov authored
      task_get_live_kthread() looks confusing and unneeded.  It does
      get_task_struct() but only kthread_stop() needs this, it can be called
      even if the calller doesn't have a reference when we know that this
      kthread can't exit until we do kthread_stop().
      
      kthread_park() and kthread_unpark() do not need get_task_struct(), the
      callers already have the reference.  And it can not help if we can race
      with the exiting kthread anyway, kthread_park() can hang forever in this
      case.
      
      Change kthread_park() and kthread_unpark() to use to_live_kthread(),
      change kthread_stop() to do get_task_struct() by hand and remove
      task_get_live_kthread().
      Signed-off-by: default avatarOleg Nesterov <oleg@redhat.com>
      Cc: Thomas Gleixner <tglx@linutronix.de>
      Cc: Namhyung Kim <namhyung@kernel.org>
      Cc: "Paul E. McKenney" <paulmck@linux.vnet.ibm.com>
      Cc: Peter Zijlstra <peterz@infradead.org>
      Cc: Rusty Russell <rusty@rustcorp.com.au>
      Cc: "Srivatsa S. Bhat" <srivatsa.bhat@linux.vnet.ibm.com>
      Cc: Tejun Heo <tj@kernel.org>
      Signed-off-by: default avatarAndrew Morton <akpm@linux-foundation.org>
      Signed-off-by: default avatarLinus Torvalds <torvalds@linux-foundation.org>
      b5c5442b
    • Oleg Nesterov's avatar
      kthread: introduce to_live_kthread() · 4ecdafc8
      Oleg Nesterov authored
      "k->vfork_done != NULL" with a barrier() after to_kthread(k) in
      task_get_live_kthread(k) looks unclear, and sub-optimal because we load
      ->vfork_done twice.
      
      All we need is to ensure that we do not return to_kthread(NULL).  Add a
      new trivial helper which loads/checks ->vfork_done once, this also looks
      more understandable.
      Signed-off-by: default avatarOleg Nesterov <oleg@redhat.com>
      Cc: Thomas Gleixner <tglx@linutronix.de>
      Cc: Namhyung Kim <namhyung@kernel.org>
      Cc: "Paul E. McKenney" <paulmck@linux.vnet.ibm.com>
      Cc: Peter Zijlstra <peterz@infradead.org>
      Cc: Rusty Russell <rusty@rustcorp.com.au>
      Cc: "Srivatsa S. Bhat" <srivatsa.bhat@linux.vnet.ibm.com>
      Cc: Tejun Heo <tj@kernel.org>
      Signed-off-by: default avatarAndrew Morton <akpm@linux-foundation.org>
      Signed-off-by: default avatarLinus Torvalds <torvalds@linux-foundation.org>
      4ecdafc8
    • Linus Torvalds's avatar
      Merge tag 'usb-3.10-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/usb · ec25e246
      Linus Torvalds authored
      Pull USB patches from Greg Kroah-Hartman:
       "Here's the big USB pull request for 3.10-rc1.
      
        Lots of USB patches here, the majority being USB gadget changes and
        USB-serial driver cleanups, the rest being ARM build fixes / cleanups,
        and individual driver updates.  We also finally got some chipidea
        fixes, which have been delayed for a number of kernel releases, as the
        maintainer has now reappeared.
      
        All of these have been in linux-next for a while"
      
      * tag 'usb-3.10-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/usb: (568 commits)
        USB: ehci-msm: USB_MSM_OTG needs USB_PHY
        USB: OHCI: avoid conflicting platform drivers
        USB: OMAP: ISP1301 needs USB_PHY
        USB: lpc32xx: ISP1301 needs USB_PHY
        USB: ftdi_sio: enable two UART ports on ST Microconnect Lite
        usb: phy: tegra: don't call into tegra-ehci directly
        usb: phy: phy core cannot yet be a module
        USB: Fix initconst in ehci driver
        usb-storage: CY7C68300A chips do not support Cypress ATACB
        USB: serial: option: Added support Olivetti Olicard 145
        USB: ftdi_sio: correct ST Micro Connect Lite PIDs
        ARM: mxs_defconfig: add CONFIG_USB_PHY
        ARM: imx_v6_v7_defconfig: add CONFIG_USB_PHY
        usb: phy: remove exported function from __init section
        usb: gadget: zero: put function instances on unbind
        usb: gadget: f_sourcesink.c: correct a copy-paste misnomer
        usb: gadget: cdc2: fix error return code in cdc_do_config()
        usb: gadget: multi: fix error return code in rndis_do_config()
        usb: gadget: f_obex: fix error return code in obex_bind()
        USB: storage: convert to use module_usb_driver()
        ...
      ec25e246
    • Linus Torvalds's avatar
      Merge tag 'tty-3.10-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/tty · 507ffe4f
      Linus Torvalds authored
      Pull tty/serial driver update from Greg Kroah-Hartman:
       "Here's the big tty/serial driver merge request for 3.10-rc1
      
        Once again, Jiri has a number of TTY driver fixes and cleanups, and
        Peter Hurley came through with a bunch of ldisc fixes that resolve a
        number of reported issues.  There are some other serial driver
        cleanups as well.
      
        All of these have been in the linux-next tree for a while"
      
      * tag 'tty-3.10-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/tty: (117 commits)
        tty/serial/sirf: fix MODULE_DEVICE_TABLE
        serial: mxs: drop superfluous {get|put}_device
        serial: mxs: fix buffer overflow
        ARM: PL011: add support for extended FIFO-size of PL011-r1p5
        serial_core.c: add put_device() after device_find_child()
        tty: Fix unsafe bit ops in tty_throttle_safe/unthrottle_safe
        serial: sccnxp: Replace pdata.init/exit with regulator API
        serial: sccnxp: Do not override device name
        TTY: pty, fix compilation warning
        TTY: rocket, fix compilation warning
        TTY: ircomm: fix DTR being raised on hang up
        TTY: synclinkmp: fix DTR being raised on hang up
        TTY: synclink_gt: fix DTR being raised on hang up
        TTY: synclink: fix DTR being raised on hang up
        serial: 8250_dw: Fix the stub for dw8250_probe_acpi()
        serial: 8250_dw: Convert to devm_ioremap()
        serial: 8250_dw: Set port capabilities based on CPR register
        serial: 8250_dw: Let ACPI code extract the DMA client info
        serial: 8250_dw: Support clk framework also with ACPI
        serial: 8250_dw: Enable runtime PM
        ...
      507ffe4f
    • Linus Torvalds's avatar
      Merge tag 'staging-3.10-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/staging · fdc719b6
      Linus Torvalds authored
      Pull staging driver tree update from Greg Kroah-Hartman:
       "Here's the big staging driver tree update for 3.10-rc1
      
        This update contains loads of comedi driver cleanups and fixes in
        here, iio updates, android driver changes, and other various staging
        driver cleanups.
      
        Thanks to some drivers being removed, and the comedi driver cleanups,
        we have removed more code than we added:
      
         627 files changed, 65145 insertions(+), 76321 deletions(-)
      
        which is always nice to see.
      
        All of these have been in linux-next for a while."
      
      * tag 'staging-3.10-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/staging: (940 commits)
        staging: comedi: ni_labpc: fix legacy driver build
        staging: comedi: das800: cleanup the cio-das802/16 fifo comments
        staging: comedi: das800: rename CamelCase vars in das800_ai_do_cmd()
        staging: comedi: das800: tidy up the private data
        staging: comedi: das800: tidy up das800_interrupt()
        staging: comedi: das800: tidy up das800_ai_insn_read()
        staging: comedi: das800: tidy up das800_di_insn_bits()
        staging: comedi: das800: tidy up das800_do_insn_bits()
        staging: comedi: das800: remove extra divisor calculation call
        staging: comedi: das800: rename {enable,disable}_das800
        staging: comedi: das800: tidy up subdevice init
        staging: comedi: das800: allow attaching without interrupt support
        staging: comedi: das800: interrupts are required for async command support
        staging: comedi: das800: tidy up das800_ai_do_cmdtest()
        staging: comedi: das800: remove 'volatile' on private data variables
        staging: comedi: das800: cleanup the boardinfo
        staging: comedi: das800: cleanup range table declarations
        staging: comedi: das800: introduce das800_ind_{write, read}()
        staging: comedi: das800: remove forward declarations
        staging: comedi: das800: move das800_set_frequency()
        ...
      fdc719b6
    • Linus Torvalds's avatar
      Merge tag 'driver-core-3.10-rc1' of... · 2794b5d4
      Linus Torvalds authored
      Merge tag 'driver-core-3.10-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/driver-core
      
      Pull driver core update from Greg Kroah-Hartman:
       "Here's the merge request for the driver core tree for 3.10-rc1
      
        It's pretty small, just a number of driver core and sysfs updates and
        fixes, all of which have been in linux-next for a while now.
      
        Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>"
      
      Fixed conflict in kernel/rtmutex-tester.c, the locking tree had a better
      fix for the same sysfs file mode problem.
      
      * tag 'driver-core-3.10-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/driver-core:
        PM / Runtime: Idle devices asynchronously after probe|release
        driver core: handle user namespaces properly with the uid/gid devtmpfs change
        driver core: devtmpfs: fix compile failure with CONFIG_UIDGID_STRICT_TYPE_CHECKS
        devtmpfs: add base.h include
        driver core: add uid and gid to devtmpfs
        sysfs: check if one entry has been removed before freeing
        sysfs: fix crash_notes_size build warning
        sysfs: fix use after free in case of concurrent read/write and readdir
        rtmutex-tester: fix mode of sysfs files
        Documentation: Add ABI entry for crash_notes and crash_notes_size
        sysfs: Add crash_notes_size to export percpu note size
        driver core: platform_device.h: fix checkpatch errors and warnings
        driver core: platform.c: fix checkpatch errors and warnings
        driver core: warn that platform_driver_probe can not use deferred probing
        sysfs: use atomic_inc_unless_negative in sysfs_get_active
        base: core: WARN() about bogus permissions on device attributes
        device: separate all subsys mutexes
      2794b5d4
    • Linus Torvalds's avatar
      Merge tag 'char-misc-3.10-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/char-misc · 4f567cbc
      Linus Torvalds authored
      Pull char/misc driver update from Greg Kroah-Hartman:
       "Here's the big char / misc driver update for 3.10-rc1
      
        A number of various driver updates, the majority being new
        functionality in the MEI driver subsystem (it's now a subsystem, it
        started out just a single driver), extcon updates, memory updates,
        hyper-v updates, and a bunch of other small stuff that doesn't fit in
        any other tree.
      
        All of these have been in linux-next for a while"
      
      * tag 'char-misc-3.10-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/char-misc: (148 commits)
        Tools: hv: Fix a checkpatch warning
        tools: hv: skip iso9660 mounts in hv_vss_daemon
        tools: hv: use FIFREEZE/FITHAW in hv_vss_daemon
        tools: hv: use getmntent in hv_vss_daemon
        Tools: hv: Fix a checkpatch warning
        tools: hv: fix checks for origin of netlink message in hv_vss_daemon
        Tools: hv: fix warnings in hv_vss_daemon
        misc: mark spear13xx-pcie-gadget as broken
        mei: fix krealloc() misuse in in mei_cl_irq_read_msg()
        mei: reduce flow control only for completed messages
        mei: reseting -> resetting
        mei: fix reading large reposnes
        mei: revamp mei_irq_read_client_message function
        mei: revamp mei_amthif_irq_read_message
        mei: revamp hbm state machine
        Revert "drivers/scsi: use module_pcmcia_driver() in pcmcia drivers"
        Revert "scsi: pcmcia: nsp_cs: remove module init/exit function prototypes"
        scsi: pcmcia: nsp_cs: remove module init/exit function prototypes
        mei: wd: fix line over 80 characters
        misc: tsl2550: Use dev_pm_ops
        ...
      4f567cbc
    • Linus Torvalds's avatar
      Merge tag 'hwmon-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/groeck/linux-staging · 92ddcf4a
      Linus Torvalds authored
      Pull hwmon update from Guenter Roeck:
      
       - New drivers for NCT6775, NCT6776, NCT6779, and LM95234.
      
       - Added support for LTC2974, LTC3883, LM25056, TMP431, TMP432, ADT7310,
         and ADT7320 to existing drivers.
      
       - Various code cleanups and minor improvements.
      
      * tag 'hwmon-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/groeck/linux-staging: (54 commits)
        hwmon: (nct6775) Fix coding style problems
        hwmon: (nct6775) Constify strings
        hwmon: (tmp401) Add support for TMP432
        hwmon: (tmp401) Add support for update_interval attribute
        hwmon: (tmp401) Reset valid flag when resetting temperature history
        hwmon: (tmp401) Simplification and cleanup
        hwmon: (tmp401) Use sysfs_create_group / sysfs_remove_group
        hwmon: (tmp401) Drop unused defines, use BIT for bit masks
        hwmon: (nct6775) Use ARRAY_SIZE for loops where possible
        documentation: hwmon: Fix typo in documentation/hwmon
        hwmon: (nct6775) Enable both AUXTIN and VIN3 on NCT6776
        hwmon: (ad7314) use spi_get_drvdata() and spi_set_drvdata()
        MAINTAINERS: Add myself as maintainer for the NCT6775 driver
        hwmon: (nct6775) Expand scope of supported chips
        hwmon: (gpio-fan) Use is_visible to determine if attributes should be created
        hwmon: (tmp401) Fix device detection for TMP411B and TMP411C
        hwmon: Add driver for LM95234
        hwmon: (tmp401) Add support for TMP431
        hwmon: (pmbus/lm25066) Add support for LM25056
        hwmon: (pmbus/lm25066) Refactor device specific coefficients
        ...
      92ddcf4a
    • Linus Torvalds's avatar
      Merge tag 'pinctrl-for-v3.10' of git://git.kernel.org/pub/scm/linux/kernel/git/linusw/linux-pinctrl · 000a74f4
      Linus Torvalds authored
      Pull pinctrl update from Linus Walleij:
       "These are the pinctrl changes for v3.10:
      
         - Patrice Chotard contributed a new configuration debugfs interface
           and reintroduced fine-grained locking into the core: instead of
           having a "big pinctrl lock" we have a per-controller lock and
           specialized locks for the global controller and pinctrl handle
           lists.
      
         - Haoijan Zhuang deleted all the PXA and MMP2 pinctrl drivers and
           replaced them with pinctrl-single (which is also used by other
           SoCs) so we are gaining consolidation.  The platform particulars
           now come in through the device tree.
      
         - Haoijan also added support for generic pin config into the
           pinctrl-single driver which is another big consolidation win.
      
         - Finally also GPIO ranges are now supported by the pinctrl-single
           driver.
      
         - Tomasz Figa contributed a new Samsung S3C pinctrl driver, bringing
           more of the older Samsung platforms under the pinctrl umbrella and
           out of arch/arm.
      
         - Maxime Ripard contributed new Allwinner A10/A13 drivers.
      
         - Sachin Kamat, Wei Yongjun and Axel Lin did a lot of cleanups."
      
      * tag 'pinctrl-for-v3.10' of git://git.kernel.org/pub/scm/linux/kernel/git/linusw/linux-pinctrl: (66 commits)
        pinctrl: move subsystem mutex to pinctrl_dev struct
        pinctrl/pinconfig: fix misplaced goto
        pinctrl: s3c64xx: Fix build error caused by undefined chained_irq_enter
        pinctrl/pinconfig: add debug interface
        pinctrl: abx500: fix issue when no pdata
        pinctrl: pinctrl-single: add missing double quote
        pinctrl: sunxi: Rename wemac functions to emac
        pinctrl: exynos5440: add gpio interrupt support
        pinctrl: exynos5440: fix probe failure due to missing pin-list in config nodes
        pinctrl: ab8505: Staticize some symbols
        pinctrl: ab8540: Staticize some symbols
        pinctrl: ab9540: Staticize some symbols
        pinctrl: ab8500: Staticize some symbols
        pinctrl: abx500: Staticize some symbols
        pinctrl: Add pinctrl-s3c64xx driver
        pinctrl: samsung: Handle banks with two configuration registers
        pinctrl: samsung: Remove hardcoded register offsets
        pinctrl: samsung: Split pin bank description into two structures
        pinctrl: samsung: Include pinctrl-exynos driver data conditionally
        pinctrl: samsung: Protect bank registers with a spinlock
        ...
      000a74f4
    • Linus Torvalds's avatar
      Merge tag 'fbdev-for-3.10' of git://gitorious.org/linux-omap-dss2/linux · 8127b39e
      Linus Torvalds authored
      Pull fbdev updates from Tomi Valkeinen:
      
       - use vm_iomap_memory() in various fb drivers to map the fb memory to
         userspace
      
       - Cleanups for the videomode and display_timing features
      
       - Updates to vt8500, wm8505 and auo-k190x fb drivers
      
      * tag 'fbdev-for-3.10' of git://gitorious.org/linux-omap-dss2/linux: (36 commits)
        fbdev: fix check for fb_mmap's mmio availability
        fbdev: improve fb_mmap bounds checks
        fbdev/ps3fb: use vm_iomap_memory()
        fbdev/sgivwfb: use vm_iomap_memory()
        fbdev/vermillion: use vm_iomap_memory()
        fbdev/sa1100fb: use vm_iomap_memory()
        fbdev/fb-puv3: use vm_iomap_memory()
        fbdev/controlfb: use vm_iomap_memory()
        fbdev/omapfb: use vm_iomap_memory()
        video: vt8500: fix Kconfig for videomode
        video/s3c: move platform_data out of arch/arm
        video/exynos: remove unnecessary header inclusions
        drivers/video: fsl-diu-fb: add hardware cursor support
        drivers: video: use module_platform_driver_probe()
        ARM: OMAP: remove "config FB_OMAP_CONSISTENT_DMA_SIZE"
        video: wm8505fb: Convert to devm_ioremap_resource()
        AUO-K190x: Add resolutions for portrait displays
        AUO-K190x: add framebuffer rotation support
        AUO-K190x: add a 16bit truecolor mode
        AUO-K190x: make color handling more flexible
        ...
      8127b39e
    • Linus Torvalds's avatar
      Merge tag 'pci-v3.10-changes' of git://git.kernel.org/pub/scm/linux/kernel/git/helgaas/pci · 96a3e8af
      Linus Torvalds authored
      Pull PCI updates from Bjorn Helgaas:
       "PCI changes for the v3.10 merge window:
      
        PCI device hotplug
         - Remove ACPI PCI subdrivers (Jiang Liu, Myron Stowe)
         - Make acpiphp builtin only, not modular (Jiang Liu)
         - Add acpiphp mutual exclusion (Jiang Liu)
      
        Power management
         - Skip "PME enabled/disabled" messages when not supported (Rafael
           Wysocki)
         - Fix fallback to PCI_D0 (Rafael Wysocki)
      
        Miscellaneous
         - Factor quirk_io_region (Yinghai Lu)
         - Cache MSI capability offsets & cleanup (Gavin Shan, Bjorn Helgaas)
         - Clean up EISA resource initialization and logging (Bjorn Helgaas)
         - Fix prototype warnings (Andy Shevchenko, Bjorn Helgaas)
         - MIPS: Initialize of_node before scanning bus (Gabor Juhos)
         - Fix pcibios_get_phb_of_node() declaration "weak" annotation (Gabor
           Juhos)
         - Add MSI INTX_DISABLE quirks for AR8161/AR8162/etc (Xiong Huang)
         - Fix aer_inject return values (Prarit Bhargava)
         - Remove PME/ACPI dependency (Andrew Murray)
         - Use shared PCI_BUS_NUM() and PCI_DEVID() (Shuah Khan)"
      
      * tag 'pci-v3.10-changes' of git://git.kernel.org/pub/scm/linux/kernel/git/helgaas/pci: (63 commits)
        vfio-pci: Use cached MSI/MSI-X capabilities
        vfio-pci: Use PCI_MSIX_TABLE_BIR, not PCI_MSIX_FLAGS_BIRMASK
        PCI: Remove "extern" from function declarations
        PCI: Use PCI_MSIX_TABLE_BIR, not PCI_MSIX_FLAGS_BIRMASK
        PCI: Drop msi_mask_reg() and remove drivers/pci/msi.h
        PCI: Use msix_table_size() directly, drop multi_msix_capable()
        PCI: Drop msix_table_offset_reg() and msix_pba_offset_reg() macros
        PCI: Drop is_64bit_address() and is_mask_bit_support() macros
        PCI: Drop msi_data_reg() macro
        PCI: Drop msi_lower_address_reg() and msi_upper_address_reg() macros
        PCI: Drop msi_control_reg() macro and use PCI_MSI_FLAGS directly
        PCI: Use cached MSI/MSI-X offsets from dev, not from msi_desc
        PCI: Clean up MSI/MSI-X capability #defines
        PCI: Use cached MSI-X cap while enabling MSI-X
        PCI: Use cached MSI cap while enabling MSI interrupts
        PCI: Remove MSI/MSI-X cap check in pci_msi_check_device()
        PCI: Cache MSI/MSI-X capability offsets in struct pci_dev
        PCI: Use u8, not int, for PM capability offset
        [SCSI] megaraid_sas: Use correct #define for MSI-X capability
        PCI: Remove "extern" from function declarations
        ...
      96a3e8af
    • Linus Torvalds's avatar
      Merge tag 'please-pull-misc-3.10' of git://git.kernel.org/pub/scm/linux/kernel/git/aegl/linux · a8745105
      Linus Torvalds authored
      Pull ia64 fixes from Tony Luck:
       "Bundle of miscellaneous ia64 fixes for 3.10 merge window."
      
      * tag 'please-pull-misc-3.10' of git://git.kernel.org/pub/scm/linux/kernel/git/aegl/linux:
        Add size restriction to the kdump documentation
        Fix example error_injection_tool
        Fix build error for numa_clear_node() under IA64
        Fix initialization of CMCI/CMCP interrupts
        Change "select DMAR" to "select INTEL_IOMMU"
        Wrong asm register contraints in the kvm implementation
        Wrong asm register contraints in the futex implementation
        Remove cast for kmalloc return value
        Fix kexec oops when iosapic was removed
        iosapic: fix a minor typo in comments
        Add WB/UC check for early_ioremap
        Fix broken fsys_getppid()
        tiocx: check retval from bus_register()
      a8745105
    • Linus Torvalds's avatar
      Merge branch 'core-locking-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip · 916bb6d7
      Linus Torvalds authored
      Pull locking changes from Ingo Molnar:
       "The most noticeable change are mutex speedups from Waiman Long, for
        higher loads.  These scalability changes should be most noticeable on
        larger server systems.
      
        There are also cleanups, fixes and debuggability improvements."
      
      * 'core-locking-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
        lockdep: Consolidate bug messages into a single print_lockdep_off() function
        lockdep: Print out additional debugging advice when we hit lockdep BUGs
        mutex: Back out architecture specific check for negative mutex count
        mutex: Queue mutex spinners with MCS lock to reduce cacheline contention
        mutex: Make more scalable by doing less atomic operations
        mutex: Move mutex spinning code from sched/core.c back to mutex.c
        locking/rtmutex/tester: Set correct permissions on sysfs files
        lockdep: Remove unnecessary 'hlock_next' variable
      916bb6d7
    • Linus Torvalds's avatar
      Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/s390/linux · d0b88838
      Linus Torvalds authored
      Pull s390 update from Martin Schwidefsky:
       "This is the first batch of s390 patches for the 3.10 merge window.
      
        Included are some performance enhancements: storage key
        initialization, zero page cache synonyms, system call micro
        optimization and the speedup patches for dasdfmt.  Sebastian managed
        to get rid of the special casing for the console device in the cio
        layer.  And the usual bunch of bug fixes."
      
      * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/s390/linux: (59 commits)
        s390/pci: use pci_scan_root_bus
        s390/scm_blk: fix memleak in init function
        s390/scm_blk: allow more cluster size values
        s390/cio: fix irq statistics
        s390/memory hotplug: prevent offline of active memory increments
        s390: remove small stack config option
        s390: system call path micro optimization
        s390: lowcore stack pointer offsets
        s390/uapi: change struct statfs[64] member types to unsigned values
        s390/pci: return correct dma address for offset > PAGE_SIZE
        s390/ptrace: remove empty ifdefs
        s390/compat: remove ptrace compat definitions from uapi header file
        s390/compat: fix compile error for !COMPAT
        s390/compat: fix compat_sys_statfs() memory corruption
        s390/zcore: Fix HSA copy length for last block
        s390/mm,gmap: segment mapping race
        s390/mm,gmap: implement gmap_translate()
        s390/pci: remove disable_device implementation
        s390/pci: disable per default
        s390/pci: return error after failed pci ops
        ...
      d0b88838
    • Linus Torvalds's avatar
      Merge tag 'stable/for-linus-3.10-rc0-tag' of... · 9d2da7af
      Linus Torvalds authored
      Merge tag 'stable/for-linus-3.10-rc0-tag' of git://git.kernel.org/pub/scm/linux/kernel/git/konrad/xen
      
      Pull Xen updates from Konrad Rzeszutek Wilk:
       "Features:
         - Populate the boot_params with EDD data.
         - Cleanups in the IRQ code.
        Bug-fixes:
         - CPU hotplug offline/online in PVHVM mode.
         - Re-upload processor PM data after ACPI S3 suspend/resume cycle."
      
      And Konrad gets a gold star for sending the pull request early when he
      thought he'd be away for the first week of the merge window (but because
      of 3.9 dragging out to -rc8 he then re-sent the reminder on the first
      day of the merge window anyway)
      
      * tag 'stable/for-linus-3.10-rc0-tag' of git://git.kernel.org/pub/scm/linux/kernel/git/konrad/xen:
        xen: resolve section mismatch warnings in xen-acpi-processor
        xen: Re-upload processor PM data to hypervisor after S3 resume (v2)
        xen/smp: Unifiy some of the PVs and PVHVM offline CPU path
        xen/smp/pvhvm: Don't initialize IRQ_WORKER as we are using the native one.
        xen/spinlock: Disable IRQ spinlock (PV) allocation on PVHVM
        xen/spinlock:  Check against default value of -1 for IRQ line.
        xen/time: Add default value of -1 for IRQ and check for that.
        xen/events: Check that IRQ value passed in is valid.
        xen/time: Fix kasprintf splat when allocating timer%d IRQ line.
        xen/smp/spinlock: Fix leakage of the spinlock interrupt line for every CPU online/offline
        xen/smp: Fix leakage of timer interrupt line for every CPU online/offline.
        xen kconfig: fix select INPUT_XEN_KBDDEV_FRONTEND
        xen: drop tracking of IRQ vector
        x86/xen: populate boot_params with EDD data
      9d2da7af
    • Linus Torvalds's avatar
      Linux 3.9 · c1be5a5b
      Linus Torvalds authored
      c1be5a5b
  2. 27 Apr, 2013 4 commits
  3. 26 Apr, 2013 9 commits
    • Linus Torvalds's avatar
      Merge branch 'v4l_for_linus' of git://git.kernel.org/pub/scm/linux/kernel/git/mchehab/linux-media · d7d7271f
      Linus Torvalds authored
      Pull media fixes from Mauro Carvalho Chehab:
       "Two driver fixes.
      
        One avoids reading any file at a system with a cx25821 board
        (fortunately, this is not a common device).  The other one prevents
        reading after a buffer with ISDB-T devices based on mb86a20s."
      
      * 'v4l_for_linus' of git://git.kernel.org/pub/scm/linux/kernel/git/mchehab/linux-media:
        [media] cx25821: do not expose broken video output streams
        [media] mb86a20s: Fix estimate_rate setting
      d7d7271f
    • Linus Torvalds's avatar
      Merge branch 'fixes-3.9-late' of git://git.kernel.org/pub/scm/linux/kernel/git/deller/parisc-linux · 96edcf31
      Linus Torvalds authored
      Pull late parisc fixes from Helge Deller:
       "I know it's *very* late in the 3.9 release cycle, but since there
        aren't that many people testing the parisc linux kernel, a few (for
        our port) critical issues just showed up a few days back for the first
        time.
      
        What's in it?
         - add missing __ucmpdi2 symbol, which is required for btrfs on 32bit
           kernel.
         - change kunmap() macro to static inline function.  This fixes a
           debian/gcc-4.4 build error.
         - add locking when doing PTE updates.  This fixes random userspace
           crashes.
         - disable (optional) -mlong-calls compiler option for modules, else
           modules can't be loaded at runtime.
         - a smart patch by Will Deacon which fixes 64bit put_user() warnings
           on 32bit kernel."
      
      * 'fixes-3.9-late' of git://git.kernel.org/pub/scm/linux/kernel/git/deller/parisc-linux:
        parisc: use spin_lock_irqsave/spin_unlock_irqrestore for PTE updates
        parisc: disable -mlong-calls compiler option for kernel modules
        parisc: uaccess: fix compiler warnings caused by __put_user casting
        parisc: Change kunmap macro to static inline function
        parisc: Provide __ucmpdi2 to resolve undefined references in 32 bit builds.
      96edcf31
    • Matt Fleming's avatar
      efivars: only check for duplicates on the registered list · f464246d
      Matt Fleming authored
      variable_is_present() accesses '__efivars' directly, but when called via
      gsmi_init() Michel reports observing the following crash,
      
        BUG: unable to handle kernel NULL pointer dereference at (null)
        IP: variable_is_present+0x55/0x170
        Call Trace:
          register_efivars+0x106/0x370
          gsmi_init+0x2ad/0x3da
          do_one_initcall+0x3f/0x170
      
      The reason for the crash is that '__efivars' hasn't been initialised nor
      has it been registered with register_efivars() by the time the google
      EFI SMI driver runs.  The gsmi code uses its own struct efivars, and
      therefore, a different variable list.  Fix the above crash by passing
      the registered struct efivars to variable_is_present(), so that we
      traverse the correct list.
      Reported-by: default avatarMichel Lespinasse <walken@google.com>
      Tested-by: default avatarMichel Lespinasse <walken@google.com>
      Cc: Mike Waychison <mikew@google.com>
      Cc: Matthew Garrett <matthew.garrett@nebula.com>
      Cc: Seiji Aguchi <seiji.aguchi@hds.com>
      Signed-off-by: default avatarMatt Fleming <matt.fleming@intel.com>
      Signed-off-by: default avatarLinus Torvalds <torvalds@linux-foundation.org>
      f464246d
    • Patrice Chotard's avatar
      pinctrl: move subsystem mutex to pinctrl_dev struct · 42fed7ba
      Patrice Chotard authored
      This mutex avoids deadlock in case of use of multiple pin
      controllers. Before this modification, by using a global
      mutex, deadlock appeared when, for example, a call to
      pinctrl_pins_show() locked the pinctrl_mutex, called the
      ops->pin_dbg_show of a particular pin controller. If this
      pin controller needs I2C access to retrieve configuration
      information and I2C driver is using pinctrl to drive its
      pins, a call to pinctrl_select_state() try to lock again
      pinctrl_mutex which leads to a deadlock.
      
      Notice that the mutex grab from the two direction functions
      was moved into pinctrl_gpio_direction().
      
      For several cases, we can't replace pinctrl_mutex by
      pctldev->mutex, because at this stage, pctldev is
      not accessible :
      	- pinctrl_get()/pinctrl_put()
      	- pinctrl_register_maps()
      
      So add respectively pinctrl_list_mutex and
      pinctrl_maps_mutex in order to protect
      pinctrl_list and pinctrl_maps list instead.
      
      Reintroduce pinctrldev_list_mutex in
      find_pinctrl_by_of_node(),
      pinctrl_find_and_add_gpio_range()
      pinctrl_request_gpio(), pinctrl_free_gpio(),
      pinctrl_gpio_direction(), pinctrl_devices_show(),
      pinctrl_register() and pinctrl_unregister() to
      protect pinctrldev_list.
      
      Changes v2->v3:
      - Fix a missing EXPORT_SYMBOL_GPL() for pinctrl_select_state().
      
      Changes v1->v2:
      - pinctrl_select_state_locked() is removed, all lock mechanism
        is located inside pinctrl_select_state(). When parsing
        the state->setting list, take the per-pin-controller driver
        lock. (Patrice).
      - Introduce pinctrldev_list_mutex to protect pinctrldev_list
        in all functions which parse or modify pictrldev_list.
        (Patrice).
      - move find_pinctrl_by_of_node() from pinctrl/devicetree.c to
        pinctrl/core.c in order to protect pinctrldev_list.
        (Patrice).
      - Sink mutex:es into some functions and remove some _locked
        variants down to where the lists are actually accessed to
        make things simpler. (Linus)
      - Drop *all* mutexes completely from pinctrl_lookup_state()
        and pinctrl_select_state() - no relevant mutex was taken
        and it was unclear what this was protecting against. (Linus)
      
      Reported by : Seraphin Bonnaffe <seraphin.bonnaffe@stericsson.com>
      Signed-off-by: default avatarPatrice Chotard <patrice.chotard@st.com>
      Signed-off-by: default avatarLinus Walleij <linus.walleij@linaro.org>
      42fed7ba
    • Laurent Meunier's avatar
      pinctrl/pinconfig: fix misplaced goto · cb6d315d
      Laurent Meunier authored
      This update contains a basic fix that went unseen through
      test and review.
      Signed-off-by: default avatarLaurent Meunier <laurent.meunier@st.com>
      Reviewed-by: default avatarPatrice Chotard <patrice.chotard@stericsson.com>
      Signed-off-by: default avatarLinus Walleij <linus.walleij@linaro.org>
      cb6d315d
    • Jiri Slaby's avatar
      TTY: fix atime/mtime regression · 37b7f3c7
      Jiri Slaby authored
      In commit b0de59b5 ("TTY: do not update atime/mtime on read/write")
      we removed timestamps from tty inodes to fix a security issue and waited
      if something breaks.  Well, 'w', the utility to find out logged users
      and their inactivity time broke.  It shows that users are inactive since
      the time they logged in.
      
      To revert to the old behaviour while still preventing attackers to
      guess the password length, we update the timestamps in one-minute
      intervals by this patch.
      Signed-off-by: default avatarJiri Slaby <jslaby@suse.cz>
      Cc: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
      Signed-off-by: default avatarLinus Torvalds <torvalds@linux-foundation.org>
      37b7f3c7
    • Zhao Hongjiang's avatar
      aio: fix possible invalid memory access when DEBUG is enabled · 91d80a84
      Zhao Hongjiang authored
      dprintk() shouldn't access @ring after it's unmapped.
      Signed-off-by: default avatarZhao Hongjiang <zhaohongjiang@huawei.com>
      Cc: stable@vger.kernel.org
      Signed-off-by: default avatarLinus Torvalds <torvalds@linux-foundation.org>
      91d80a84
    • Sebastian Ott's avatar
      s390/pci: use pci_scan_root_bus · 1c21351b
      Sebastian Ott authored
      The pci config space accessors on s390 are (now) smart enough to
      figure out if a pci function is available. So instead of calling
      pci_create_root_bus and then pci_scan_single_device for each
      available function just call pci_scan_root_bus and let the pci core
      do the scanning (via config reads on all possible functions) and
      device creation.
      Reviewed-by: default avatarGerald Schaefer <gerald.schaefer@de.ibm.com>
      Signed-off-by: default avatarSebastian Ott <sebott@linux.vnet.ibm.com>
      Signed-off-by: default avatarMartin Schwidefsky <schwidefsky@de.ibm.com>
      1c21351b
    • Sebastian Ott's avatar
      s390/scm_blk: fix memleak in init function · fff60fab
      Sebastian Ott authored
      If the allocation of a single request fails the already allocated
      requests will not be freed.
      Reviewed-by: default avatarPeter Oberparleiter <oberpar@linux.vnet.ibm.com>
      Signed-off-by: default avatarSebastian Ott <sebott@linux.vnet.ibm.com>
      Signed-off-by: default avatarMartin Schwidefsky <schwidefsky@de.ibm.com>
      fff60fab