1. 12 Mar, 2013 5 commits
    • Linus Torvalds's avatar
      Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jmorris/linux-security · fa4a6732
      Linus Torvalds authored
      Pull key management race fix from James Morris.
      
      * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jmorris/linux-security:
        keys: fix race with concurrent install_user_keyrings()
      fa4a6732
    • Linus Torvalds's avatar
      Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/sage/ceph-client · 368edaad
      Linus Torvalds authored
      Pull Ceph fix from Sage Weil:
       "This fixes a bug in the new message decoding that just went in during
        the last window."
      
      * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/sage/ceph-client:
        libceph: fix decoding of pgids
      368edaad
    • Linus Torvalds's avatar
      Merge branch 'for-3.9' of git://linux-nfs.org/~bfields/linux · 5b22b184
      Linus Torvalds authored
      Pull nfsd bugfixes from Bruce Fields:
       "Some minor fallout from the user-namespace work broke most krb5 mounts
        to nfsd, and I screwed up a change to the AF_LOCAL rpc code."
      
      * 'for-3.9' of git://linux-nfs.org/~bfields/linux:
        sunrpc: don't attempt to cancel unitialized work
        nfsd: fix krb5 handling of anonymous principals
      5b22b184
    • Al Viro's avatar
      vfs: fix pipe counter breakage · a930d879
      Al Viro authored
      If you open a pipe for neither read nor write, the pipe code will not
      add any usage counters to the pipe, causing the 'struct pipe_inode_info"
      to be potentially released early.
      
      That doesn't normally matter, since you cannot actually use the pipe,
      but the pipe release code - particularly fasync handling - still expects
      the actual pipe infrastructure to all be there.  And rather than adding
      NULL pointer checks, let's just disallow this case, the same way we
      already do for the named pipe ("fifo") case.
      
      This is ancient going back to pre-2.4 days, and until trinity, nobody
      naver noticed.
      Reported-by: default avatarDave Jones <davej@redhat.com>
      Signed-off-by: default avatarLinus Torvalds <torvalds@linux-foundation.org>
      a930d879
    • David Howells's avatar
      keys: fix race with concurrent install_user_keyrings() · 0da9dfdd
      David Howells authored
      This fixes CVE-2013-1792.
      
      There is a race in install_user_keyrings() that can cause a NULL pointer
      dereference when called concurrently for the same user if the uid and
      uid-session keyrings are not yet created.  It might be possible for an
      unprivileged user to trigger this by calling keyctl() from userspace in
      parallel immediately after logging in.
      
      Assume that we have two threads both executing lookup_user_key(), both
      looking for KEY_SPEC_USER_SESSION_KEYRING.
      
      	THREAD A			THREAD B
      	===============================	===============================
      					==>call install_user_keyrings();
      	if (!cred->user->session_keyring)
      	==>call install_user_keyrings()
      					...
      					user->uid_keyring = uid_keyring;
      	if (user->uid_keyring)
      		return 0;
      	<==
      	key = cred->user->session_keyring [== NULL]
      					user->session_keyring = session_keyring;
      	atomic_inc(&key->usage); [oops]
      
      At the point thread A dereferences cred->user->session_keyring, thread B
      hasn't updated user->session_keyring yet, but thread A assumes it is
      populated because install_user_keyrings() returned ok.
      
      The race window is really small but can be exploited if, for example,
      thread B is interrupted or preempted after initializing uid_keyring, but
      before doing setting session_keyring.
      
      This couldn't be reproduced on a stock kernel.  However, after placing
      systemtap probe on 'user->session_keyring = session_keyring;' that
      introduced some delay, the kernel could be crashed reliably.
      
      Fix this by checking both pointers before deciding whether to return.
      Alternatively, the test could be done away with entirely as it is checked
      inside the mutex - but since the mutex is global, that may not be the best
      way.
      Signed-off-by: default avatarDavid Howells <dhowells@redhat.com>
      Reported-by: default avatarMateusz Guzik <mguzik@redhat.com>
      Cc: <stable@kernel.org>
      Signed-off-by: default avatarAndrew Morton <akpm@linux-foundation.org>
      Signed-off-by: default avatarJames Morris <james.l.morris@oracle.com>
      0da9dfdd
  2. 11 Mar, 2013 15 commits
    • Sage Weil's avatar
      libceph: fix decoding of pgids · d6c0dd6b
      Sage Weil authored
      In 4f6a7e5e we effectively dropped support
      for the legacy encoding for the OSDMap and incremental.  However, we didn't
      fix the decoding for the pgid.
      Signed-off-by: default avatarSage Weil <sage@inktank.com>
      Reviewed-by: default avatarYehuda Sadeh <yehuda@inktank.com>
      d6c0dd6b
    • Linus Torvalds's avatar
      Merge branch 'perf-urgent-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip · 7c6baa30
      Linus Torvalds authored
      Pull perf fixes from Ingo Molnar:
       "Misc minor fixes mostly related to tracing"
      
      * 'perf-urgent-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
        s390: Fix a header dependencies related build error
        tracing: update documentation of snapshot utility
        tracing: Do not return EINVAL in snapshot when not allocated
        tracing: Add help of snapshot feature when snapshot is empty
        ftrace: Update the kconfig for DYNAMIC_FTRACE
      7c6baa30
    • Linus Torvalds's avatar
      Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net · 0cb77508
      Linus Torvalds authored
      Pull networking fixes from David Miller:
      
       1) Missing cancel of work items in mac80211 MLME, from Ben Greear.
      
       2) Fix DMA mapping handling in iwlwifi by using coherent DMA for
          command headers, from Johannes Berg.
      
       3) Decrease the amount of pressure on the page allocator by using order
          1 pages less in iwlwifi, from Emmanuel Grumbach.
      
       4) Fix mesh PS broadcast OOPS in mac80211, from Marco Porsch.
      
       5) Don't forget to recalculate idle state in mac80211 monitor
          interface, from Felix Fietkau.
      
       6) Fix varargs in netfilter conntrack handler, from Joe Perches.
      
       7) Need to reset entire chip when command queue fills up in iwlwifi,
          from Emmanuel Grumbach.
      
       8) The TX antenna value must be valid when calibrations are performed
          in iwlwifi, fix from Dor Shaish.
      
       9) Don't generate netfilter audit log entries when audit is disabled,
          from Gao Feng.
      
      10) Deal with DMA unit hang on e1000e during power state transitions,
          from Bruce Allan.
      
      11) Remove BUILD_BUG_ON check from igb driver, from Alexander Duyck.
      
      12) Fix lockdep warning on i2c handling of igb driver, from Carolyn
          Wyborny.
      
      13) Fix several TTY handling issues in IRDA ircomm tty driver, from
          Peter Hurley.
      
      14) Several QFQ packet scheduler fixes from Paolo Valente.
      
      15) When VXLAN encapsulates on transmit, we have to reset the netfilter
          state.  From Zang MingJie.
      
      16) Fix jiffie check in net_rx_action() so that we really cap the
          processing at 2HZ.  From Eric Dumazet.
      
      17) Fix erroneous trigger of IP option space exhaustion, when routers
          are pre-specified and we are looking to see if we can insert a
          timestamp, we will have the space.  From David Ward.
      
      18) Fix various issues in benet driver wrt waiting for firmware to
          finish POST after resets or errors.  From Gavin Shan and Sathya
          Perla.
      
      19) Fix TX locking in SFC driver, from Ben Hutchings.
      
      20) Like the VXLAN fix above, when we encap in a TUN device we have to
          reset the netfilter state.  This should fix several strange crashes
          reported by Dave Jones and others.  From Eric Dumazet.
      
      21) Don't forget to clean up MAC address resources when shutting down a
          port in mlx4 driver, from Yan Burman.
      
      22) Fix divide by zero in vmxnet3 driver, from Bhavesh Davda.
      
      23) Fix device statistic regression in tg3 when the driver is using
          phylib, from Nithin Sujir.
      
      24) Fix info leak in several netlink handlers, from Mathias Krause.
      
      * git://git.kernel.org/pub/scm/linux/kernel/git/davem/net: (79 commits)
        6lowpan: Fix endianness issue in is_addr_link_local().
        rrunner.c: fix possible memory leak in rr_init_one()
        dcbnl: fix various netlink info leaks
        rtnl: fix info leak on RTM_GETLINK request for VF devices
        bridge: fix mdb info leaks
        tg3: Update link_up flag for phylib devices
        ipv6: stop multicast forwarding to process interface scoped addresses
        bridging: fix rx_handlers return code
        netlabel: fix build problems when CONFIG_IPV6=n
        drivers/isdn: checkng length to be sure not memory overflow
        net/rds: zero last byte for strncpy
        bnx2x: Fix SFP+ misconfiguration in iSCSI boot scenario
        bnx2x: Fix intermittent long KR2 link up time
        macvlan: Set IFF_UNICAST_FLT flag to prevent unnecessary promisc mode.
        team: unsyc the devices addresses when port is removed
        bridge: add missing vid to br_mdb_get()
        Fix: sparse warning in inet_csk_prepare_forced_close
        afkey: fix a typo
        MAINTAINERS: Update qlcnic maintainers list
        netlabel: correctly list all the static label mappings
        ...
      0cb77508
    • Linus Torvalds's avatar
      Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/rw/uml · ffb6a445
      Linus Torvalds authored
      Pull UML fixes from Richard Weinberger:
       "This update brings various fixes.
        Nothing special...
      
        In my local queue I have some more fixes which will be sent later to
        you.  3.9 uncovered strange UML issues.  :("
      
      * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/rw/uml:
        um: Use tty_port in SIGWINCH handler
        um: Use tty_port_operations->destruct
        um: fix build failure due to mess-up of sig_info protorype
        um: add missing declaration of 'getrlimit()' and friends
        net : enable tx time stamping in the vde driver.
        hostfs: fix a not needed double check
      ffb6a445
    • Linus Torvalds's avatar
      Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/dtor/input · 152fcb27
      Linus Torvalds authored
      Pull input updates from Dmitry Torokhov:
       "Except for the largish change to the ALPS driver adding "Dolphin V1"
        support and Wacom getting a new signature of yet another device, the
        rest are straightforward driver fixes."
      
      * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/dtor/input:
        Input: mms114 - Fix regulator enable and disable paths
        Input: ads7864 - check return value of regulator enable
        Input: tc3589x-keypad - fix keymap size
        Input: wacom - add support for 0x10d
        Input: ALPS - update documentation for recent touchpad driver mods
        Input: ALPS - add "Dolphin V1" touchpad support
        Input: ALPS - remove unused argument to alps_enter_command_mode()
        Input: cypress_ps2 - fix trackpadi found in Dell XPS12
      152fcb27
    • Li Zefan's avatar
      s390: Fix a header dependencies related build error · cb16b91a
      Li Zefan authored
      Commit 877c6856
      ("perf: Remove include of cgroup.h from perf_event.h") caused
      this build failure if PERF_EVENTS is enabled:
      
         In file included from arch/s390/include/asm/perf_event.h:9:0,
                          from include/linux/perf_event.h:24,
                          from kernel/events/ring_buffer.c:12:
         arch/s390/include/asm/cpu_mf.h: In function 'qctri':
         arch/s390/include/asm/cpu_mf.h:61:12: error: 'EINVAL' undeclared (first use in this function)
      
      cpu_mf.h had an implicit errno.h dependency, which was added
      indirectly via cgroups.h but not anymore. Add it explicitly.
      Reported-by: default avatarFengguang Wu <fengguang.wu@intel.com>
      Tested-by: default avatarFengguang Wu <fengguang.wu@intel.com>
      Signed-off-by: default avatarLi Zefan <lizefan@huawei.com>
      Cc: Martin Schwidefsky <schwidefsky@de.ibm.com>
      Cc: Heiko Carstens <heiko.carstens@de.ibm.com>
      Link: http://lkml.kernel.org/r/51385F79.7000106@huawei.comSigned-off-by: default avatarIngo Molnar <mingo@kernel.org>
      cb16b91a
    • Richard Weinberger's avatar
      um: Use tty_port in SIGWINCH handler · 2116bda6
      Richard Weinberger authored
      The tty below tty_port might get destroyed by the tty layer
      while we hold a reference to it.
      So we have to carry tty_port around...
      Signed-off-by: default avatarRichard Weinberger <richard@nod.at>
      2116bda6
    • Richard Weinberger's avatar
      um: Use tty_port_operations->destruct · cc4f0248
      Richard Weinberger authored
      As we setup the SIGWINCH handler in tty_port_operations->activate
      it makes sense to tear down it in ->destruct.
      Signed-off-by: default avatarRichard Weinberger <richard@nod.at>
      cc4f0248
    • Sergei Trofimovich's avatar
      um: fix build failure due to mess-up of sig_info protorype · 72383d43
      Sergei Trofimovich authored
      arch/um/os-Linux/signal.c:18:8: error: conflicting types for 'sig_info'
      In file included from /home/slyfox/linux-2.6/arch/um/os-Linux/signal.c:12:0:
      arch/um/include/shared/as-layout.h:64:15: note: previous declaration of 'sig_info' was here
      Signed-off-by: default avatarSergei Trofimovich <slyfox@gentoo.org>
      CC: Jeff Dike <jdike@addtoit.com>
      CC: Richard Weinberger <richard@nod.at>
      CC: "Martin Pärtel" <martin.partel@gmail.com>
      CC: Al Viro <viro@zeniv.linux.org.uk>
      CC: user-mode-linux-devel@lists.sourceforge.net
      CC: user-mode-linux-user@lists.sourceforge.net
      CC: linux-kernel@vger.kernel.org
      Signed-off-by: default avatarRichard Weinberger <richard@nod.at>
      72383d43
    • Sergei Trofimovich's avatar
      um: add missing declaration of 'getrlimit()' and friends · fdfa4c95
      Sergei Trofimovich authored
      arch/um/os-Linux/start_up.c: In function 'check_coredump_limit':
      arch/um/os-Linux/start_up.c:338:16: error: storage size of 'lim' isn't known
      arch/um/os-Linux/start_up.c:339:2: error: implicit declaration of function 'getrlimit' [-Werror=implicit-function-declaration]
      Signed-off-by: default avatarSergei Trofimovich <slyfox@gentoo.org>
      CC: Jeff Dike <jdike@addtoit.com>
      CC: Richard Weinberger <richard@nod.at>
      CC: Al Viro <viro@zeniv.linux.org.uk>
      CC: user-mode-linux-devel@lists.sourceforge.net
      CC: user-mode-linux-user@lists.sourceforge.net
      CC: linux-kernel@vger.kernel.org
      Signed-off-by: default avatarRichard Weinberger <richard@nod.at>
      fdfa4c95
    • Paul Chavent's avatar
      net : enable tx time stamping in the vde driver. · 55ea1cfa
      Paul Chavent authored
      This new version moves the skb_tx_timestamp in the main uml
      driver. This should avoid the need to call this function in each
      transport (vde, slirp, tuntap, ...). It also add support for ethtool
      get_ts_info.
      Signed-off-by: default avatarPaul Chavent <paul.chavent@onera.fr>
      Acked-by: default avatarRichard Cochran <richardcochran@gmail.com>
      Signed-off-by: default avatarRichard Weinberger <richard@nod.at>
      55ea1cfa
    • Marco Stornelli's avatar
      hostfs: fix a not needed double check · bc077320
      Marco Stornelli authored
      With the commit 3be2be0a we removed vmtruncate,
      but actaully there is no need to call inode_newsize_ok() because the checks are
      already done in inode_change_ok() at the begin of the function.
      Signed-off-by: default avatarMarco Stornelli <marco.stornelli@gmail.com>
      Signed-off-by: default avatarRichard Weinberger <richard@nod.at>
      bc077320
    • Mark Brown's avatar
      Input: mms114 - Fix regulator enable and disable paths · 4b7d293c
      Mark Brown authored
      When it uses regulators the mms114 driver checks to see if it managed to
      acquire regulators and ignores errors. This is not the intended usage and
      not great style in general.
      
      Since the driver already refuses to probe if it fails to allocate the
      regulators simply make the enable and disable calls unconditional and
      add appropriate error handling, including adding cleanup of the
      regulators if setup_reg() fails.
      Signed-off-by: default avatarMark Brown <broonie@opensource.wolfsonmicro.com>
      Acked-by: default avatarJoonyoung Shim <jy0922.shim@samsung.com>
      Signed-off-by: default avatarDmitry Torokhov <dmitry.torokhov@gmail.com>
      4b7d293c
    • Mark Brown's avatar
      Input: ads7864 - check return value of regulator enable · f94352f8
      Mark Brown authored
      At least print a warning if we can't power the device up.
      Signed-off-by: default avatarMark Brown <broonie@opensource.wolfsonmicro.com>
      Signed-off-by: default avatarDmitry Torokhov <dmitry.torokhov@gmail.com>
      f94352f8
    • Rabin Vincent's avatar
      Input: tc3589x-keypad - fix keymap size · 39735019
      Rabin Vincent authored
      The keymap size used by tc3589x is too low, leading to the driver
      overwriting other people's memory.  Fix this by making the driver
      use the automatically allocated keymap provided by
      matrix_keypad_build_keymap() instead of allocating one on its own.
      Signed-off-by: default avatarRabin Vincent <rabin.vincent@stericsson.com>
      Signed-off-by: default avatarDmitry Torokhov <dmitry.torokhov@gmail.com>
      39735019
  3. 10 Mar, 2013 7 commits
  4. 09 Mar, 2013 7 commits
    • Stephan Frank's avatar
      Input: wacom - add support for 0x10d · 58694837
      Stephan Frank authored
      It is a Wacom device found in Fujitsu Lifebook T902.
      Signed-off-by: default avatarStephan Frank <sfrank@cs.tu-berlin.de>
      Acked-by: default avatarPing Cheng <pingc@wacom.com>
      Signed-off-by: default avatarDmitry Torokhov <dmitry.torokhov@gmail.com>
      58694837
    • Linus Torvalds's avatar
      Atmel MXT touchscreen: increase reset timeouts · 8343bce1
      Linus Torvalds authored
      There is a more complete atmel patch-series out by Nick Dyer that fixes
      this and other things, but in the meantime this is the minimal thing to
      get the touchscreen going on (at least my) Pixel Chromebook.
      
      Not that I want my dirty fingers near that beautiful screen, but it
      seems that a non-initialized touchscreen will also end up being a
      constant wakeup source, so you have to disable it to go to sleep.  And
      it's easier to just fix the initialization sequence.
      Signed-off-by: default avatarLinus Torvalds <torvalds@linux-foundation.org>
      8343bce1
    • J. Bruce Fields's avatar
      sunrpc: don't attempt to cancel unitialized work · 190b1ecf
      J. Bruce Fields authored
      As of dc107402 "SUNRPC: make AF_LOCAL connect synchronous", we no longer initialize connect_worker in the
      AF_LOCAL case, resulting in warnings like:
      
          WARNING: at lib/debugobjects.c:261 debug_print_object+0x8c/0xb0() Hardware name: Bochs
          ODEBUG: assert_init not available (active state 0) object type: timer_list hint: stub_timer+0x0/0x20
          Modules linked in: iscsi_tcp libiscsi_tcp libiscsi scsi_transport_iscsi nfsd auth_rpcgss nfs_acl lockd sunrpc
          Pid: 4816, comm: nfsd Tainted: G        W    3.8.0-rc2-00049-gdc107402 #801
          Call Trace:
           [<ffffffff8156ec00>] ? free_obj_work+0x60/0xa0
           [<ffffffff81046aaf>] warn_slowpath_common+0x7f/0xc0
           [<ffffffff81046ba6>] warn_slowpath_fmt+0x46/0x50
           [<ffffffff8156eccc>] debug_print_object+0x8c/0xb0
           [<ffffffff81055030>] ? timer_debug_hint+0x10/0x10
           [<ffffffff8156f7e3>] debug_object_assert_init+0xe3/0x120
           [<ffffffff81057ebb>] del_timer+0x2b/0x80
           [<ffffffff8109c4e6>] ? mark_held_locks+0x86/0x110
           [<ffffffff81065a29>] try_to_grab_pending+0xd9/0x150
           [<ffffffff81065b57>] __cancel_work_timer+0x27/0xc0
           [<ffffffff81065c03>] cancel_delayed_work_sync+0x13/0x20
           [<ffffffffa0007067>] xs_destroy+0x27/0x80 [sunrpc]
           [<ffffffffa00040d8>] xprt_destroy+0x78/0xa0 [sunrpc]
           [<ffffffffa0006241>] xprt_put+0x21/0x30 [sunrpc]
           [<ffffffffa00030cf>] rpc_free_client+0x10f/0x1a0 [sunrpc]
           [<ffffffffa0002ff3>] ? rpc_free_client+0x33/0x1a0 [sunrpc]
           [<ffffffffa0002f7e>] rpc_release_client+0x6e/0xb0 [sunrpc]
           [<ffffffffa000325d>] rpc_shutdown_client+0xfd/0x1b0 [sunrpc]
           [<ffffffffa0017196>] rpcb_put_local+0x106/0x130 [sunrpc]
          ...
      Acked-by: default avatar"Myklebust, Trond" <Trond.Myklebust@netapp.com>
      Signed-off-by: default avatarJ. Bruce Fields <bfields@redhat.com>
      190b1ecf
    • Eric W. Biederman's avatar
      proc: Use nd_jump_link in proc_ns_follow_link · db04dc67
      Eric W. Biederman authored
      Update proc_ns_follow_link to use nd_jump_link instead of just
      manually updating nd.path.dentry.
      
      This fixes the BUG_ON(nd->inode != parent->d_inode) reported by Dave
      Jones and reproduced trivially with mkdir /proc/self/ns/uts/a.
      
      Sigh it looks like the VFS change to require use of nd_jump_link
      happend while proc_ns_follow_link was baking and since the common case
      of proc_ns_follow_link continued to work without problems the need for
      making this change was overlooked.
      
      Cc: stable@vger.kernel.org
      Signed-off-by: default avatar"Eric W. Biederman" <ebiederm@xmission.com>
      db04dc67
    • Linus Torvalds's avatar
      Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/mason/linux-btrfs · 0aefda3e
      Linus Torvalds authored
      Pull btrfs fixes from Chris Mason:
       "These are scattered fixes and one performance improvement.  The
        biggest functional change is in how we throttle metadata changes.  The
        new code bumps our average file creation rate up by ~13% in fs_mark,
        and lowers CPU usage.
      
        Stefan bisected out a regression in our allocation code that made
        balance loop on extents larger than 256MB."
      
      * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/mason/linux-btrfs:
        Btrfs: improve the delayed inode throttling
        Btrfs: fix a mismerge in btrfs_balance()
        Btrfs: enforce min_bytes parameter during extent allocation
        Btrfs: allow running defrag in parallel to administrative tasks
        Btrfs: avoid deadlock on transaction waiting list
        Btrfs: do not BUG_ON on aborted situation
        Btrfs: do not BUG_ON in prepare_to_reloc
        Btrfs: free all recorded tree blocks on error
        Btrfs: build up error handling for merge_reloc_roots
        Btrfs: check for NULL pointer in updating reloc roots
        Btrfs: fix unclosed transaction handler when the async transaction commitment fails
        Btrfs: fix wrong handle at error path of create_snapshot() when the commit fails
        Btrfs: use set_nlink if our i_nlink is 0
      0aefda3e
    • Benson Leung's avatar
      Platform: x86: chromeos_laptop : Add basic platform data for atmel devices · 2ef39204
      Benson Leung authored
      Add basic platform data to get the current upstream driver working
      with the 224s touchpad and 1664s touchscreen.
      We will be using NULL config so we will use the settings from the
      devices' NVRAMs.
      Signed-off-by: default avatarBenson Leung <bleung@chromium.org>
      Tested-by: default avatarOlof Johansson <olof@lixom.net>
      Signed-off-by: default avatarLinus Torvalds <torvalds@linux-foundation.org>
      2ef39204
    • Daniel Kurtz's avatar
      Input: atmel_mxt_ts - Support for touchpad variant · 22dfab7f
      Daniel Kurtz authored
      This same driver can be used by atmel based touchscreens and touchpads
      (buttonpads). Platform data may specify a device is a touchpad
      using the is_tp flag.
      
      This will cause the driver to perform some touchpad specific
      initializations, such as:
        * register input device name "Atmel maXTouch Touchpad" instead of
        Touchscreen.
        * register BTN_LEFT & BTN_TOOL_* event types.
        * register axis resolution (as a fixed constant, for now)
        * register BUTTONPAD property
        * process GPIO buttons using reportid T19
      
      Input event GPIO mapping is done by the platform data key_map array.
      
      key_map[x] should contain the KEY or BTN code to send when processing
      GPIOx from T19. To specify a GPIO as not an input source, populate
      with KEY_RESERVED, or 0.
      Signed-off-by: default avatarDaniel Kurtz <djkurtz@chromium.org>
      Signed-off-by: default avatarBenson Leung <bleung@chromium.org>
      Signed-off-by: default avatarNick Dyer <nick.dyer@itdev.co.uk>
      Tested-by: default avatarOlof Johansson <olof@lixom.net>
      Signed-off-by: default avatarLinus Torvalds <torvalds@linux-foundation.org>
      22dfab7f
  5. 08 Mar, 2013 6 commits
    • Linus Torvalds's avatar
      Merge branch 'for-next' of git://git.samba.org/sfrench/cifs-2.6 · 67a865a4
      Linus Torvalds authored
      Pull CIFS fixes from Steve French:
       "A small set of cifs fixes which includes one for a recent regression
        in the write path (pointed out by Anton), some fixes for rename
        problems and as promised for 3.9 removing the obsolete sockopt mount
        option (and the accompanying deprecation warning)."
      
      * 'for-next' of git://git.samba.org/sfrench/cifs-2.6:
        CIFS: Fix missing of oplock_read value in smb30_values structure
        cifs: don't try to unlock pagecache page after releasing it
        cifs: remove the sockopt= mount option
        cifs: Check server capability before attempting silly rename
        cifs: Fix bug when checking error condition in cifs_rename_pending_delete()
      67a865a4
    • Linus Torvalds's avatar
      Merge branch 'akpm' (fixes from Andrew) · 59d8e5eb
      Linus Torvalds authored
      Merge misc fixes from Andrew Morton.
      
      * emailed patches from Andrew Morton <akpm@linux-foundation.org>:
        alpha: boot: fix build breakage introduced by system.h disintegration
        memcg: initialize kmem-cache destroying work earlier
        Randy has moved
        ksm: fix m68k build: only NUMA needs pfn_to_nid
        dmi_scan: fix missing check for _DMI_ signature in smbios_present()
        Revert parts of "hlist: drop the node parameter from iterators"
        idr: remove WARN_ON_ONCE() on negative IDs
        mm/mempolicy.c: fix sp_node_init() argument ordering
        mm/mempolicy.c: fix wrong sp_node insertion
        ipc: don't allocate a copy larger than max
        ipc: fix potential oops when src msg > 4k w/ MSG_COPY
      59d8e5eb
    • Will Deacon's avatar
      alpha: boot: fix build breakage introduced by system.h disintegration · c3d6b628
      Will Deacon authored
      Commit ec221208 ("Disintegrate asm/system.h for Alpha") removed the
      system.h include from boot/head.S, which puts the PAL_* asm constants
      out of scope.
      
      Include <asm/pal.h> so we can get building again.
      Signed-off-by: default avatarWill Deacon <will.deacon@arm.com>
      Cc: David Rusling <david.rusling@linaro.org>
      Cc: David Howells <dhowells@redhat.com>
      Signed-off-by: default avatarAndrew Morton <akpm@linux-foundation.org>
      Signed-off-by: default avatarLinus Torvalds <torvalds@linux-foundation.org>
      c3d6b628
    • Konstantin Khlebnikov's avatar
      memcg: initialize kmem-cache destroying work earlier · 15cf17d2
      Konstantin Khlebnikov authored
      Fix a warning from lockdep caused by calling cancel_work_sync() for
      uninitialized struct work.  This path has been triggered by destructon
      kmem-cache hierarchy via destroying its root kmem-cache.
      
        cache ffff88003c072d80
        obj ffff88003b410000 cache ffff88003c072d80
        obj ffff88003b924000 cache ffff88003c20bd40
        INFO: trying to register non-static key.
        the code is fine but needs lockdep annotation.
        turning off the locking correctness validator.
        Pid: 2825, comm: insmod Tainted: G           O 3.9.0-rc1-next-20130307+ #611
        Call Trace:
          __lock_acquire+0x16a2/0x1cb0
          lock_acquire+0x8a/0x120
          flush_work+0x38/0x2a0
          __cancel_work_timer+0x89/0xf0
          cancel_work_sync+0xb/0x10
          kmem_cache_destroy_memcg_children+0x81/0xb0
          kmem_cache_destroy+0xf/0xe0
          init_module+0xcb/0x1000 [kmem_test]
          do_one_initcall+0x11a/0x170
          load_module+0x19b0/0x2320
          SyS_init_module+0xc6/0xf0
          system_call_fastpath+0x16/0x1b
      
      Example module to demonstrate:
      
        #include <linux/module.h>
        #include <linux/slab.h>
        #include <linux/mm.h>
        #include <linux/workqueue.h>
      
        int __init mod_init(void)
        {
        	int size = 256;
        	struct kmem_cache *cache;
        	void *obj;
        	struct page *page;
      
        	cache = kmem_cache_create("kmem_cache_test", size, size, 0, NULL);
        	if (!cache)
        		return -ENOMEM;
      
        	printk("cache %p\n", cache);
      
        	obj = kmem_cache_alloc(cache, GFP_KERNEL);
        	if (obj) {
        		page = virt_to_head_page(obj);
        		printk("obj %p cache %p\n", obj, page->slab_cache);
        		kmem_cache_free(cache, obj);
        	}
      
        	flush_scheduled_work();
      
        	obj = kmem_cache_alloc(cache, GFP_KERNEL);
        	if (obj) {
        		page = virt_to_head_page(obj);
        		printk("obj %p cache %p\n", obj, page->slab_cache);
        		kmem_cache_free(cache, obj);
        	}
      
        	kmem_cache_destroy(cache);
      
        	return -EBUSY;
        }
      
        module_init(mod_init);
        MODULE_LICENSE("GPL");
      Signed-off-by: default avatarKonstantin Khlebnikov <khlebnikov@openvz.org>
      Cc: Glauber Costa <glommer@parallels.com>
      Signed-off-by: default avatarAndrew Morton <akpm@linux-foundation.org>
      Signed-off-by: default avatarLinus Torvalds <torvalds@linux-foundation.org>
      15cf17d2
    • Randy Dunlap's avatar
      Randy has moved · 755727b7
      Randy Dunlap authored
      Update email address and CREDITS info.  xenotime.net is defunct.
      Signed-off-by: default avatarRandy Dunlap <rdunlap@infradead.org>
      Cc: Harry Wei <harryxiyou@gmail.com>
      Cc: Keiichi KII <k-keiichi@bx.jp.nec.com>
      Signed-off-by: default avatarAndrew Morton <akpm@linux-foundation.org>
      Signed-off-by: default avatarLinus Torvalds <torvalds@linux-foundation.org>
      755727b7
    • Hugh Dickins's avatar
      ksm: fix m68k build: only NUMA needs pfn_to_nid · d8fc16a8
      Hugh Dickins authored
      A CONFIG_DISCONTIGMEM=y m68k config gave
      
        mm/ksm.c: In function `get_kpfn_nid':
        mm/ksm.c:492: error: implicit declaration of function `pfn_to_nid'
      
      linux/mmzone.h declares it for CONFIG_SPARSEMEM and CONFIG_FLATMEM, but
      expects the arch's asm/mmzone.h to declare it for CONFIG_DISCONTIGMEM
      (see arch/mips/include/asm/mmzone.h for example).
      
      Or perhaps it is only expected when CONFIG_NUMA=y: too much of a maze,
      and m68k got away without it so far, so fix the build in mm/ksm.c.
      Signed-off-by: default avatarHugh Dickins <hughd@google.com>
      Reported-by: default avatarGeert Uytterhoeven <geert@linux-m68k.org>
      Cc: Petr Holasek <pholasek@redhat.com>
      Signed-off-by: default avatarAndrew Morton <akpm@linux-foundation.org>
      Signed-off-by: default avatarLinus Torvalds <torvalds@linux-foundation.org>
      d8fc16a8