1. 24 May, 2012 11 commits
    • Oleg Nesterov's avatar
      task_work_add: generic process-context callbacks · e73f8959
      Oleg Nesterov authored
      Provide a simple mechanism that allows running code in the (nonatomic)
      context of the arbitrary task.
      
      The caller does task_work_add(task, task_work) and this task executes
      task_work->func() either from do_notify_resume() or from do_exit().  The
      callback can rely on PF_EXITING to detect the latter case.
      
      "struct task_work" can be embedded in another struct, still it has "void
      *data" to handle the most common/simple case.
      
      This allows us to kill the ->replacement_session_keyring hack, and
      potentially this can have more users.
      
      Performance-wise, this adds 2 "unlikely(!hlist_empty())" checks into
      tracehook_notify_resume() and do_exit().  But at the same time we can
      remove the "replacement_session_keyring != NULL" checks from
      arch/*/signal.c and exit_creds().
      
      Note: task_work_add/task_work_run abuses ->pi_lock.  This is only because
      this lock is already used by lookup_pi_state() to synchronize with
      do_exit() setting PF_EXITING.  Fortunately the scope of this lock in
      task_work.c is really tiny, and the code is unlikely anyway.
      Signed-off-by: default avatarOleg Nesterov <oleg@redhat.com>
      Acked-by: default avatarDavid Howells <dhowells@redhat.com>
      Cc: Thomas Gleixner <tglx@linutronix.de>
      Cc: Richard Kuo <rkuo@codeaurora.org>
      Cc: Linus Torvalds <torvalds@linux-foundation.org>
      Cc: Alexander Gordeev <agordeev@redhat.com>
      Cc: Chris Zankel <chris@zankel.net>
      Cc: David Smith <dsmith@redhat.com>
      Cc: "Frank Ch. Eigler" <fche@redhat.com>
      Cc: Geert Uytterhoeven <geert@linux-m68k.org>
      Cc: Larry Woodman <lwoodman@redhat.com>
      Cc: Peter Zijlstra <peterz@infradead.org>
      Cc: Tejun Heo <tj@kernel.org>
      Cc: Ingo Molnar <mingo@elte.hu>
      Signed-off-by: default avatarAndrew Morton <akpm@linux-foundation.org>
      Signed-off-by: default avatarAl Viro <viro@zeniv.linux.org.uk>
      e73f8959
    • Al Viro's avatar
      avr32: missed _TIF_NOTIFY_RESUME on one of do_notify_resume callers · 62366c88
      Al Viro authored
      we need that not just on syscall returns but on irq ones as well...
      Signed-off-by: default avatarAl Viro <viro@zeniv.linux.org.uk>
      62366c88
    • Al Viro's avatar
      parisc: need to check NOTIFY_RESUME when exiting from syscall · 617c62a9
      Al Viro authored
      ... not just on return from interrupt
      Signed-off-by: default avatarAl Viro <viro@zeniv.linux.org.uk>
      617c62a9
    • Al Viro's avatar
    • Al Viro's avatar
      TIF_NOTIFY_RESUME is defined on all targets now · 1227dd77
      Al Viro authored
      Signed-off-by: default avatarAl Viro <viro@zeniv.linux.org.uk>
      1227dd77
    • Linus Torvalds's avatar
      Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/viro/signal · f9369910
      Linus Torvalds authored
      Pull first series of signal handling cleanups from Al Viro:
       "This is just the first part of the queue (about a half of it);
        assorted fixes all over the place in signal handling.
      
        This one ends with all sigsuspend() implementations switched to
        generic one (->saved_sigmask-based).
      
        With this, a bunch of assorted old buglets are fixed and most of the
        missing bits of NOTIFY_RESUME hookup are in place.  Two more fixes sit
        in arm and um trees respectively, and there's a couple of broken ones
        that need obvious fixes - parisc and avr32 check TIF_NOTIFY_RESUME
        only on one of two codepaths; fixes for that will happen in the next
        series"
      
      * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/viro/signal: (55 commits)
        unicore32: if there's no handler we need to restore sigmask, syscall or no syscall
        xtensa: add handling of TIF_NOTIFY_RESUME
        microblaze: drop 'oldset' argument of do_notify_resume()
        microblaze: handle TIF_NOTIFY_RESUME
        score: add handling of NOTIFY_RESUME to do_notify_resume()
        m68k: add TIF_NOTIFY_RESUME and handle it.
        sparc: kill ancient comment in sparc_sigaction()
        h8300: missing checks of __get_user()/__put_user() return values
        frv: missing checks of __get_user()/__put_user() return values
        cris: missing checks of __get_user()/__put_user() return values
        powerpc: missing checks of __get_user()/__put_user() return values
        sh: missing checks of __get_user()/__put_user() return values
        sparc: missing checks of __get_user()/__put_user() return values
        avr32: struct old_sigaction is never used
        m32r: struct old_sigaction is never used
        xtensa: xtensa_sigaction doesn't exist
        alpha: tidy signal delivery up
        score: don't open-code force_sigsegv()
        cris: don't open-code force_sigsegv()
        blackfin: don't open-code force_sigsegv()
        ...
      f9369910
    • Mel Gorman's avatar
      mm: mempolicy: Let vma_merge and vma_split handle vma->vm_policy linkages · 05f144a0
      Mel Gorman authored
      Dave Jones' system call fuzz testing tool "trinity" triggered the
      following bug error with slab debugging enabled
      
          =============================================================================
          BUG numa_policy (Not tainted): Poison overwritten
          -----------------------------------------------------------------------------
      
          INFO: 0xffff880146498250-0xffff880146498250. First byte 0x6a instead of 0x6b
          INFO: Allocated in mpol_new+0xa3/0x140 age=46310 cpu=6 pid=32154
           __slab_alloc+0x3d3/0x445
           kmem_cache_alloc+0x29d/0x2b0
           mpol_new+0xa3/0x140
           sys_mbind+0x142/0x620
           system_call_fastpath+0x16/0x1b
          INFO: Freed in __mpol_put+0x27/0x30 age=46268 cpu=6 pid=32154
           __slab_free+0x2e/0x1de
           kmem_cache_free+0x25a/0x260
           __mpol_put+0x27/0x30
           remove_vma+0x68/0x90
           exit_mmap+0x118/0x140
           mmput+0x73/0x110
           exit_mm+0x108/0x130
           do_exit+0x162/0xb90
           do_group_exit+0x4f/0xc0
           sys_exit_group+0x17/0x20
           system_call_fastpath+0x16/0x1b
          INFO: Slab 0xffffea0005192600 objects=27 used=27 fp=0x          (null) flags=0x20000000004080
          INFO: Object 0xffff880146498250 @offset=592 fp=0xffff88014649b9d0
      
      This implied a reference counting bug and the problem happened during
      mbind().
      
      mbind() applies a new memory policy to a range and uses mbind_range() to
      merge existing VMAs or split them as necessary.  In the event of splits,
      mpol_dup() will allocate a new struct mempolicy and maintain existing
      reference counts whose rules are documented in
      Documentation/vm/numa_memory_policy.txt .
      
      The problem occurs with shared memory policies.  The vm_op->set_policy
      increments the reference count if necessary and split_vma() and
      vma_merge() have already handled the existing reference counts.
      However, policy_vma() screws it up by replacing an existing
      vma->vm_policy with one that potentially has the wrong reference count
      leading to a premature free.  This patch removes the damage caused by
      policy_vma().
      
      With this patch applied Dave's trinity tool runs an mbind test for 5
      minutes without error.  /proc/slabinfo reported that there are no
      numa_policy or shared_policy_node objects allocated after the test
      completed and the shared memory region was deleted.
      Signed-off-by: default avatarMel Gorman <mgorman@suse.de>
      Cc: Dave Jones <davej@redhat.com>
      Cc: KOSAKI Motohiro <kosaki.motohiro@jp.fujitsu.com>
      Cc: Stephen Wilson <wilsons@start.ca>
      Cc: Christoph Lameter <cl@linux.com>
      Cc: Andrew Morton <akpm@linux-foundation.org>
      Cc: <stable@vger.kernel.org>
      Signed-off-by: default avatarLinus Torvalds <torvalds@linux-foundation.org>
      05f144a0
    • Linus Torvalds's avatar
      Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/ebiederm/user-namespace · 644473e9
      Linus Torvalds authored
      Pull user namespace enhancements from Eric Biederman:
       "This is a course correction for the user namespace, so that we can
        reach an inexpensive, maintainable, and reasonably complete
        implementation.
      
        Highlights:
         - Config guards make it impossible to enable the user namespace and
           code that has not been converted to be user namespace safe.
      
         - Use of the new kuid_t type ensures the if you somehow get past the
           config guards the kernel will encounter type errors if you enable
           user namespaces and attempt to compile in code whose permission
           checks have not been updated to be user namespace safe.
      
         - All uids from child user namespaces are mapped into the initial
           user namespace before they are processed.  Removing the need to add
           an additional check to see if the user namespace of the compared
           uids remains the same.
      
         - With the user namespaces compiled out the performance is as good or
           better than it is today.
      
         - For most operations absolutely nothing changes performance or
           operationally with the user namespace enabled.
      
         - The worst case performance I could come up with was timing 1
           billion cache cold stat operations with the user namespace code
           enabled.  This went from 156s to 164s on my laptop (or 156ns to
           164ns per stat operation).
      
         - (uid_t)-1 and (gid_t)-1 are reserved as an internal error value.
           Most uid/gid setting system calls treat these value specially
           anyway so attempting to use -1 as a uid would likely cause
           entertaining failures in userspace.
      
         - If setuid is called with a uid that can not be mapped setuid fails.
           I have looked at sendmail, login, ssh and every other program I
           could think of that would call setuid and they all check for and
           handle the case where setuid fails.
      
         - If stat or a similar system call is called from a context in which
           we can not map a uid we lie and return overflowuid.  The LFS
           experience suggests not lying and returning an error code might be
           better, but the historical precedent with uids is different and I
           can not think of anything that would break by lying about a uid we
           can't map.
      
         - Capabilities are localized to the current user namespace making it
           safe to give the initial user in a user namespace all capabilities.
      
        My git tree covers all of the modifications needed to convert the core
        kernel and enough changes to make a system bootable to runlevel 1."
      
      Fix up trivial conflicts due to nearby independent changes in fs/stat.c
      
      * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/ebiederm/user-namespace: (46 commits)
        userns:  Silence silly gcc warning.
        cred: use correct cred accessor with regards to rcu read lock
        userns: Convert the move_pages, and migrate_pages permission checks to use uid_eq
        userns: Convert cgroup permission checks to use uid_eq
        userns: Convert tmpfs to use kuid and kgid where appropriate
        userns: Convert sysfs to use kgid/kuid where appropriate
        userns: Convert sysctl permission checks to use kuid and kgids.
        userns: Convert proc to use kuid/kgid where appropriate
        userns: Convert ext4 to user kuid/kgid where appropriate
        userns: Convert ext3 to use kuid/kgid where appropriate
        userns: Convert ext2 to use kuid/kgid where appropriate.
        userns: Convert devpts to use kuid/kgid where appropriate
        userns: Convert binary formats to use kuid/kgid where appropriate
        userns: Add negative depends on entries to avoid building code that is userns unsafe
        userns: signal remove unnecessary map_cred_ns
        userns: Teach inode_capable to understand inodes whose uids map to other namespaces.
        userns: Fail exec for suid and sgid binaries with ids outside our user namespace.
        userns: Convert stat to return values mapped from kuids and kgids
        userns: Convert user specfied uids and gids in chown into kuids and kgid
        userns: Use uid_eq gid_eq helpers when comparing kuids and kgids in the vfs
        ...
      644473e9
    • Linus Torvalds's avatar
      Merge tag 'module-for-linus' of... · fb827ec6
      Linus Torvalds authored
      Merge tag 'module-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/rusty/linux-2.6-for-linus
      
      Pull module patches from Rusty Russell, who really sells them:
       "Three trivial patches of no real utility.  Modules are boring."
      
      But to make things slightly more exciting, he adds:
       "Fortunately David Howells is looking to change this, with his module
        signing patchset.  But that's for next merge window...
      
        Cheers,
        Rusty."
      
      * tag 'module-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/rusty/linux-2.6-for-linus:
        Guard check in module loader against integer overflow
        modpost: use proper kernel style for autogenerated files
        modpost: Stop grab_file() from leaking filedescriptors if fstat() fails
      fb827ec6
    • Linus Torvalds's avatar
      Merge branch 'delete-mca' of git://git.kernel.org/pub/scm/linux/kernel/git/paulg/linux · d5b4bb4d
      Linus Torvalds authored
      Pull the MCA deletion branch from Paul Gortmaker:
       "It was good that we could support MCA machines back in the day, but
        realistically, nobody is using them anymore.  They were mostly limited
        to 386-sx 16MHz CPU and some 486 class machines and never more than
        64MB of RAM.  Even the enthusiast hobbyist community seems to have
        dried up close to ten years ago, based on what you can find searching
        various websites dedicated to the relatively short lived hardware.
      
        So lets remove the support relating to CONFIG_MCA.  There is no point
        carrying this forward, wasting cycles doing routine maintenance on it;
        wasting allyesconfig build time on validating it, wasting I/O on git
        grep'ping over it, and so on."
      
      Let's see if anybody screams.  It generally has compiled, and James
      Bottomley pointed out that there was a MCA extension from NCR that
      allowed for up to 4GB of memory and PPro-class machines.  So in *theory*
      there may be users out there.
      
      But even James (technically listed as a maintainer) doesn't actually
      have a system, and while Alan Cox claims to have a machine in his cellar
      that he offered to anybody who wants to take it off his hands, he didn't
      argue for keeping MCA support either.
      
      So we could bring it back.  But somebody had better speak up and talk
      about how they have actually been using said MCA hardware with modern
      kernels for us to do that.  And David already took the patch to delete
      all the networking driver code (commit a5e371f6: "drivers/net:
      delete all code/drivers depending on CONFIG_MCA").
      
      * 'delete-mca' of git://git.kernel.org/pub/scm/linux/kernel/git/paulg/linux:
        MCA: delete all remaining traces of microchannel bus support.
        scsi: delete the MCA specific drivers and driver code
        serial: delete the MCA specific 8250 support.
        arm: remove ability to select CONFIG_MCA
      d5b4bb4d
    • Linus Torvalds's avatar
      Merge tag 'md-3.5' of git://neil.brown.name/md · c80ddb52
      Linus Torvalds authored
      Pull md updates from NeilBrown:
       "It's been a busy cycle for md - lots of fun stuff here..  if you like
        this kind of thing :-)
      
        Main features:
         - RAID10 arrays can be reshaped - adding and removing devices and
           changing chunks (not 'far' array though)
         - allow RAID5 arrays to be reshaped with a backup file (not tested
           yet, but the priciple works fine for RAID10).
         - arrays can be reshaped while a bitmap is present - you no longer
           need to remove it first
         - SSSE3 support for RAID6 syndrome calculations
      
        and of course a number of minor fixes etc."
      
      * tag 'md-3.5' of git://neil.brown.name/md: (56 commits)
        md/bitmap: record the space available for the bitmap in the superblock.
        md/raid10: Remove extras after reshape to smaller number of devices.
        md/raid5: improve removal of extra devices after reshape.
        md: check the return of mddev_find()
        MD RAID1: Further conditionalize 'fullsync'
        DM RAID: Use md_error() in place of simply setting Faulty bit
        DM RAID: Record and handle missing devices
        DM RAID: Set recovery flags on resume
        md/raid5: Allow reshape while a bitmap is present.
        md/raid10: resize bitmap when required during reshape.
        md: allow array to be resized while bitmap is present.
        md/bitmap: make sure reshape request are reflected in superblock.
        md/bitmap: add bitmap_resize function to allow bitmap resizing.
        md/bitmap: use DIV_ROUND_UP instead of open-code
        md/bitmap: create a 'struct bitmap_counts' substructure of 'struct bitmap'
        md/bitmap: make bitmap bitops atomic.
        md/bitmap: make _page_attr bitops atomic.
        md/bitmap: merge bitmap_file_unmap and bitmap_file_put.
        md/bitmap: remove async freeing of bitmap file.
        md/bitmap: convert some spin_lock_irqsave to spin_lock_irq
        ...
      c80ddb52
  2. 23 May, 2012 29 commits
    • Linus Torvalds's avatar
      Merge branch 'sbp-target-merge' of git://git.kernel.org/pub/scm/linux/kernel/git/nab/target-pending · 2c13bc0f
      Linus Torvalds authored
      Pull sbp-2 (firewire) target mode support from Nicholas Bellinger:
       "The FireWire SBP-2 Target is a driver for using an IEEE-1394
        connection as a SCSI transport.  This module uses the SCSI Target
        framework to expose LUNs to other machines attached to a FireWire bus,
        in effect acting as a FireWire hard disk similar to FireWire Target
        Disk mode on many Apple computers.
      
        Also included are the two drivers/firewire/ patches required by
        sbp-target to access fw_request fabric speed needed for mgt_agent
        TCODE_WRITE_BLOCK_REQUEST ops, and exporting fw_card kref logic used
        when creating/destroying active session references to individual
        endpoints.
      
        A credit goes to Chris in being able to get this code up and running
        so quickly w/o any target core changes, and special thanks goes out to
        Stefan Richter + Clemens Ladisch + Andy Grover for their help in
        getting this driver ready for mainline.  Also, one of Chris's goals
        was to be able to connect sbp-target to a PowerPC based MacOS-X based
        client, that he accomplished along the way in this obligatory
        screenshot:
      
          http://linux-iscsi.org/wiki/File:Linux-fireware-target-bootc-macosx.png
      
        Great work Chris + linux-1394 team !!"
      Acked-by: default avatarStefan Richter <stefanr@s5r6.in-berlin.de>
      
      * 'sbp-target-merge' of git://git.kernel.org/pub/scm/linux/kernel/git/nab/target-pending:
        sbp-target: Initial merge of firewire/ieee-1394 target mode support
        firewire: Move fw_card kref functions into linux/firewire.h
        firewire: Add function to get speed from opaque struct fw_request
      2c13bc0f
    • Linus Torvalds's avatar
      Merge git://git.kernel.org/pub/scm/linux/kernel/git/herbert/crypto-2.6 · 0bd3fbd4
      Linus Torvalds authored
      Pull crypto updates from Herbert Xu:
       - New cipher/hash driver for ARM ux500.
       - Code clean-up for aesni-intel.
       - Misc fixes.
      
      Fixed up conflicts in arch/arm/mach-ux500/devices-common.h, where quite
      frankly some of it made no sense at all (the pull brought in a
      declaration for the dbx500_add_platform_device_noirq() function, which
      neither exists nor is used anywhere).
      
      Also some trivial add-add context conflicts in the Kconfig file in
      drivers/{char/hw_random,crypto}/
      
      * git://git.kernel.org/pub/scm/linux/kernel/git/herbert/crypto-2.6:
        crypto: aesni-intel - move more common code to ablk_init_common
        crypto: aesni-intel - use crypto_[un]register_algs
        crypto: ux500 - Cleanup hardware identification
        crypto: ux500 - Update DMA handling for 3.4
        mach-ux500: crypto - core support for CRYP/HASH module.
        crypto: ux500 - Add driver for HASH hardware
        crypto: ux500 - Add driver for CRYP hardware
        hwrng: Kconfig - modify default state for atmel-rng driver
        hwrng: omap - use devm_request_and_ioremap
        crypto: crypto4xx - move up err_request_irq label
        crypto, xor: Sanitize checksumming function selection output
        crypto: caam - add backward compatible string sec4.0
      0bd3fbd4
    • Linus Torvalds's avatar
      Merge git://www.linux-watchdog.org/linux-watchdog · 0b87da68
      Linus Torvalds authored
      Pull first set of watchdog updates from Wim Van Sebroeck:
       "This pull contains:
      
         - The removal of ixp2000_wdt
         - The addition of ie6xx_wdt
         - Some documentation fixes
         - Small fixes and improvements
      
        (Note: Part 2 will contain generic watchdog core changes + conversion
        of some more drivers)"
      
      * git://www.linux-watchdog.org/linux-watchdog:
        Documentation/watchdog: Fix the file descriptor leak when no cmdline arg given
        Documentation/watchdog: close the fd when cmdline arg given
        Documentation/watchdog: Fix a small typo
        watchdog: s3c2410_wdt: Set timeout to actually achieved timeout
        watchdog: wm831x: Convert to gpio_request_one()
        watchdog: via_wdt: depends on PCI
        watchdog: ie6xx_wdt needs io.h
        watchdog: ie6xx_wdt.c: fix printk format warning
        watchdog: Add watchdog driver for Intel Atom E6XX
        watchdog: it87_wdt: Add support for IT8728F watchdog.
        watchdog: i6300esb: don't depend on X86
        watchdog: Use module_pci_driver
        watchdog: sch311x_wdt.c: Remove RESGEN
        watchdog: s3c2410-wdt: Use of_match_ptr().
        watchdog: Device tree support for pnx4008-wdt
        watchdog: ar7_wdt.c: use devm_request_and_ioremap
        watchdog: remove ixp2000 driver
        watchdog: sp5100_tco.c: quiet sparse noise about using plain integer was NULL pointer
      0b87da68
    • Linus Torvalds's avatar
      Merge tag 'upstream-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jgarzik/libata-dev · 59d0952b
      Linus Torvalds authored
      Pull libata update from Jeff Garzik:
       "Changes, all of them boring and minor:
      
        1) Ugly MSFT Hyper-V workaround in ata_piix
      
        2) Fix a longstanding error recovery delay caused by excessive
           re-re-retries, when media errors occur.
      
        3) Minor hw-specific workarounds and quirks
      
        4) New PATA driver for ep93xx"
      
      * tag 'upstream-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jgarzik/libata-dev:
        PATA host controller driver for ep93xx
        [libata] Add " 2GB ATA Flash Disk"/"ADMA428M" to DMA blacklist
        ata_generic: Skip is_intel_ider() check when ata_generic=1 is set
        libata-eh don't waste time retrying media errors (v3)
        ata_piix: defer disks to the Hyper-V drivers by default
        libata: add a host flag to ignore detected ATA devices
      59d0952b
    • Linus Torvalds's avatar
      Merge tag 'hwmon-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/groeck/linux-staging · 1259f6ee
      Linus Torvalds authored
      Pull hwmon updates from Guenter Roeck:
       "New driver for INA219 and INA226, added support for IT8782F and
        IT8783E/F to it87 driver, plus cleanups in a couple of drivers."
      
      * tag 'hwmon-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/groeck/linux-staging:
        hwmon: (it87) Make temp3 attribute conditional for IT8782F
        hwmon: (it87) Convert to use devm_kzalloc and devm_request_region
        hwmon: INA219 and INA226 support
        hwmon: (it87) Create voltage attributes only if voltage is enabled
        hwmon: (ntc_thermistor) Fix checkpatch warning
        hwmon: (ntc_thermistor) Optimize and fix build warning
        hwmon: (ntc_thermistor) Return error code from hwmon_device_register
        hwmon: (ntc_thermistor) Convert to devm_kzalloc
        hwmon: (ad7314) Remove unused defines, and rename OFFSET to SHIFT
        acpi_power_meter: clean up code around setup_attrs
        acpi_power_meter: drop meter_rw_attrs, use common meter_attrs
        acpi_power_meter: remove duplicate code between register_{ro,rw}_attrs
        acpi_power_meter: use a {RW,RO}_SENSOR_TEMPLATE macro to clean things up
        acpi_power_meter: use the same struct {rw,ro}_sensor_template for both
        hwmon: use module_pci_driver
        hwmon: (it87) Add support for IT8782F and IT8783E/F
      1259f6ee
    • Linus Torvalds's avatar
      Merge tag 'pm-for-3.5' of git://git.kernel.org/pub/scm/linux/kernel/git/rafael/linux-pm · 468f4d1a
      Linus Torvalds authored
      Pull power management updates from Rafael Wysocki:
      
       - Implementation of opportunistic suspend (autosleep) and user space
         interface for manipulating wakeup sources.
      
       - Hibernate updates from Bojan Smojver and Minho Ban.
      
       - Updates of the runtime PM core and generic PM domains framework
         related to PM QoS.
      
       - Assorted fixes.
      
      * tag 'pm-for-3.5' of git://git.kernel.org/pub/scm/linux/kernel/git/rafael/linux-pm: (25 commits)
        epoll: Fix user space breakage related to EPOLLWAKEUP
        PM / Domains: Make it possible to add devices to inactive domains
        PM / Hibernate: Use get_gendisk to verify partition if resume_file is integer format
        PM / Domains: Fix computation of maximum domain off time
        PM / Domains: Fix link checking when add subdomain
        PM / Sleep: User space wakeup sources garbage collector Kconfig option
        PM / Sleep: Make the limit of user space wakeup sources configurable
        PM / Documentation: suspend-and-cpuhotplug.txt: Fix typo
        PM / Domains: Cache device stop and domain power off governor results, v3
        PM / Domains: Make device removal more straightforward
        PM / Sleep: Fix a mistake in a conditional in autosleep_store()
        epoll: Add a flag, EPOLLWAKEUP, to prevent suspend while epoll events are ready
        PM / QoS: Create device constraints objects on notifier registration
        PM / Runtime: Remove device fields related to suspend time, v2
        PM / Domains: Rework default domain power off governor function, v2
        PM / Domains: Rework default device stop governor function, v2
        PM / Sleep: Add user space interface for manipulating wakeup sources, v3
        PM / Sleep: Add "prevent autosleep time" statistics to wakeup sources
        PM / Sleep: Implement opportunistic sleep, v2
        PM / Sleep: Add wakeup_source_activate and wakeup_source_deactivate tracepoints
        ...
      468f4d1a
    • Linus Torvalds's avatar
      Merge tag 'regmap-domain-deps' of git://git.kernel.org/pub/scm/linux/kernel/git/broonie/regmap · eb2689e0
      Linus Torvalds authored
      Pull a regmap kconfig dependency fix from Mark Brown:
       "Fix the dependency on IRQ_DOMAIN for REGMAP_IRQ in the core
      
        Fixes a missing select from the Palmas driver a bit more throoughly."
      
      * tag 'regmap-domain-deps' of git://git.kernel.org/pub/scm/linux/kernel/git/broonie/regmap:
        regmap: Use select .. if to get IRQ_DOMAIN enabled
      eb2689e0
    • Linus Torvalds's avatar
      Merge tag 'sound-3.5' of git://git.kernel.org/pub/scm/linux/kernel/git/tiwai/sound · 2e341ca6
      Linus Torvalds authored
      Pull sound updates from Takashi Iwai:
       "This is the first big chunk for 3.5 merges of sound stuff.
      
        There are a few big changes in different areas.  First off, the
        streaming logic of USB-audio endpoints has been largely rewritten for
        the better support of "implicit feedback".  If anything about USB got
        broken, this change has to be checked.
      
        For HD-audio, the resume procedure was changed; instead of delaying
        the resume of the hardware until the first use, now waking up
        immediately at resume.  This is for buggy BIOS.
      
        For ASoC, dynamic PCM support and the improved support for digital
        links between off-SoC devices are major framework changes.
      
        Some highlights are below:
      
        * HD-audio
         - Avoid accesses of invalid pin-control bits that may stall the codec
         - V-ref setup cleanups
         - Fix the races in power-saving code
         - Fix the races in codec cache hashes and connection lists
         - Split some common codes for BIOS auto-parser to hda_auto_parser.c
         - Changed the PM resume code to wake up immediately for buggy BIOS
         - Creative SoundCore3D support
         - Add Conexant CX20751/2/3/4 codec support
      
        * ASoC
         - Dynamic PCM support, allowing support for SoCs with internal
           routing through components with tight sequencing and formatting
           constraints within their internal paths or where there are multiple
           components connected with CPU managed DMA controllers inside the
           SoC.
         - Greatly improved support for direct digital links between off-SoC
           devices, providing a much simpler way of connecting things like
           digital basebands to CODECs.
         - Much more fine grained and robust locking, cleaning up some of the
           confusion that crept in with multi-component.
         - CPU support for nVidia Tegra 30 I2S and audio hub controllers and
           ST-Ericsson MSP I2S controolers
         - New CODEC drivers for Cirrus CS42L52, LAPIS Semiconductor ML26124,
           Texas Instruments LM49453.
         - Some regmap changes needed by the Tegra I2S driver.
         - mc13783 audio support.
      
        * Misc
         - Rewrite with module_pci_driver()
         - Xonar DGX support for snd-oxygen
         - Improvement of packet handling in snd-firewire driver
         - New USB-endpoint streaming logic
         - Enhanced M-audio FTU quirks and relevant cleanups
         - Increment the support of OSS devices to 256
         - snd-aloop accuracy improvement
      
        There are a few more pending changes for 3.5, but they will be sent
        slightly later as partly depending on the changes of DRM."
      
      Fix up conflicts in regmap (due to duplicate patches, with some further
      updates then having already come in from the regmap tree).  Also some
      fairly trivial context conflicts in the imx and mcx soc drivers.
      
      * tag 'sound-3.5' of git://git.kernel.org/pub/scm/linux/kernel/git/tiwai/sound: (280 commits)
        ALSA: snd-usb: fix stream info output in /proc
        ALSA: pcm - Add proper state checks to snd_pcm_drain()
        ALSA: sh: Fix up namespace collision in sh_dac_audio.
        ALSA: hda/realtek - Fix unused variable compile warning
        ASoC: sh: fsi: enable chip specific data transfer mode
        ASoC: sh: fsi: call fsi_hw_startup/shutdown from fsi_dai_trigger()
        ASoC: sh: fsi: use same format for IN/OUT
        ASoC: sh: fsi: add fsi_version() and removed meaningless version check
        ASoC: sh: fsi: use register field macro name on IN/OUT_DMAC
        ASoC: tegra: Add machine driver for WM8753 codec
        ALSA: hda - Fix possible races of accesses to connection list array
        ASoC: OMAP: HDMI: Introduce codec
        ARM: mx31_3ds: Add sound support
        ASoC: imx-mc13783 cleanup
        mx31moboard: Add sound support
        ASoC: mc13783 codec cleanups
        ASoC: add imx-mc13783 sound support
        ASoC: Add mc13783 codec
        mfd: mc13xxx: add codec platform data
        ASoC: don't flip master of DT-instantiated DAI links
        ...
      2e341ca6
    • Linus Torvalds's avatar
      Merge tag 'ktest-v3.5-spelling' of... · 927ad551
      Linus Torvalds authored
      Merge tag 'ktest-v3.5-spelling' of git://git.kernel.org/pub/scm/linux/kernel/git/rostedt/linux-ktest
      
      Pull trivial ktest spelling fix from Steven Rostedt:
       "I promised Jesper that I would push this for 3.5, but forgot to add it
        to my queue.  It's just a spelling fix, but it should go in regardless
        to hide my inability to get words in the English language correct."
      
      Becuse gud spealing is impurtunt.
      
      * tag 'ktest-v3.5-spelling' of git://git.kernel.org/pub/scm/linux/kernel/git/rostedt/linux-ktest:
        ktest: Change singular "paranthesis" to plural "parentheses"
      927ad551
    • Linus Torvalds's avatar
      Merge branches 'perf-urgent-for-linus' and 'perf-core-for-linus' of... · 56edab31
      Linus Torvalds authored
      Merge branches 'perf-urgent-for-linus' and 'perf-core-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip
      
      Pull perf fixes from Ingo Molnar:
      
       - Leftover AMD PMU driver fix fix from the end of the v3.4
         stabilization cycle.
      
       - Late tools/perf/ changes that missed the first round:
          * endianness fixes
          * event parsing improvements
          * libtraceevent fixes factored out from trace-cmd
          * perl scripting engine fixes related to libtraceevent,
          * testcase improvements
          * perf inject / pipe mode fixes
          * plus a kernel side fix
      
      * 'perf-urgent-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
        perf/x86: Update event scheduling constraints for AMD family 15h models
      
      * 'perf-core-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
        Revert "sched, perf: Use a single callback into the scheduler"
        perf evlist: Show event attribute details
        perf tools: Bump default sample freq to 4 kHz
        perf buildid-list: Work better with pipe mode
        perf tools: Fix piped mode read code
        perf inject: Fix broken perf inject -b
        perf tools: rename HEADER_TRACE_INFO to HEADER_TRACING_DATA
        perf tools: Add union u64_swap type for swapping u64 data
        perf tools: Carry perf_event_attr bitfield throught different endians
        perf record: Fix documentation for branch stack sampling
        perf target: Add cpu flag to sample_type if target has cpu
        perf tools: Always try to build libtraceevent
        perf tools: Rename libparsevent to libtraceevent in Makefile
        perf script: Rename struct event to struct event_format in perl engine
        perf script: Explicitly handle known default print arg type
        perf tools: Add hardcoded name term for pmu events
        perf tools: Separate 'mem:' event scanner bits
        perf tools: Use allocated list for each parsed event
        perf tools: Add support for displaying event parser debug info
        perf test: Move parse event automated tests to separated object
      56edab31
    • Linus Torvalds's avatar
      Merge tag 'ia64-3.5-merge' of git://git.kernel.org/pub/scm/linux/kernel/git/aegl/linux · 3813d402
      Linus Torvalds authored
      Pull Itanium fixes from Tony Luck.
      
      * tag 'ia64-3.5-merge' of git://git.kernel.org/pub/scm/linux/kernel/git/aegl/linux:
        [IA64] Liberate the signal layer from IA64 assembler
        [IA64] Add cmpxchg.h to exported userspace headers
        [IA64] Fix fast syscall version of getcpu()
        [IA64] Removed "task_size" element from thread_struct - it is now constant
      3813d402
    • Linus Torvalds's avatar
      Merge branch 'x86-reboot-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip · 2335a836
      Linus Torvalds authored
      Pull x86 reboot changes from Ingo Molnar:
       "The biggest change is a gentler method of rebooting/stopping via IRQs
        first and then via NMIs.  There are several cleanups in the tree as
        well."
      
      * 'x86-reboot-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
        x86/reboot: Update nonmi_ipi parameter
        x86/reboot: Use NMI to assist in shutting down if IRQ fails
        Revert "x86, reboot: Use NMI instead of REBOOT_VECTOR to stop cpus"
        x86/reboot: Clean up coding style
        x86/reboot: Reduce to a single DMI table for reboot quirks
      2335a836
    • Linus Torvalds's avatar
      Merge branch 'x86-platform-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip · 44bc40e1
      Linus Torvalds authored
      Pull x86 platform changes from Ingo Molnar:
       "This tree includes assorted platform driver updates and a preparatory
        series for a platform with custom DMA remapping semantics (sta2x11 I/O
        hub)."
      
      * 'x86-platform-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
        x86/vsmp: Fix number of CPUs when vsmp is disabled
        keyboard: Use BIOS Keyboard variable to set Numlock
        x86/olpc/xo1/sci: Report RTC wakeup events
        x86/olpc/xo1/sci: Produce wakeup events for buttons and switches
        x86, platform: Initial support for sta2x11 I/O hub
        x86: Introduce CONFIG_X86_DMA_REMAP
        x86-32: Introduce CONFIG_X86_DEV_DMA_OPS
      44bc40e1
    • Linus Torvalds's avatar
      Merge branch 'x86-mm-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip · 02171b4a
      Linus Torvalds authored
      Pull x86 mm changes from Ingo Molnar:
       "This tree includes a micro-optimization that avoids cr3 switches
        during idling; it fixes corner cases and there's also small cleanups"
      
      Fix up trivial context conflict with the percpu_xx -> this_cpu_xx
      changes.
      
      * 'x86-mm-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
        x86-64: Fix accounting in kernel_physical_mapping_init()
        x86/tlb: Clean up and unify TLB_FLUSH_ALL definition
        x86: Drop obsolete ARCH_BOOTMEM support
        x86, tlb: Switch cr3 in leave_mm() only when needed
        x86/mm: Fix the size calculation of mapping tables
      02171b4a
    • Linus Torvalds's avatar
      Merge branch 'x86-mce-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip · 70311aaa
      Linus Torvalds authored
      Pull MCE updates from Ingo Molnar:
       "This tree updates/fixes MCE hardware support, it makes the APIC LVT
        thresholding interrupt optional because a subset of AMD F15h models
        don't support it."
      
      * 'x86-mce-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
        x86, MCE, AMD: Disable error thresholding bank 4 on some models
        x86, MCE, AMD: Hide interrupt_enable sysfs node
        x86, MCE, AMD: Make APIC LVT thresholding interrupt optional
      70311aaa
    • Linus Torvalds's avatar
      Merge branch 'x86-fpu-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip · ec0d7f18
      Linus Torvalds authored
      Pull fpu state cleanups from Ingo Molnar:
       "This tree streamlines further aspects of FPU handling by eliminating
        the prepare_to_copy() complication and moving that logic to
        arch_dup_task_struct().
      
        It also fixes the FPU dumps in threaded core dumps, removes and old
        (and now invalid) assumption plus micro-optimizes the exit path by
        avoiding an FPU save for dead tasks."
      
      Fixed up trivial add-add conflict in arch/sh/kernel/process.c that came
      in because we now do the FPU handling in arch_dup_task_struct() rather
      than the legacy (and now gone) prepare_to_copy().
      
      * 'x86-fpu-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
        x86, fpu: drop the fpu state during thread exit
        x86, xsave: remove thread_has_fpu() bug check in __sanitize_i387_state()
        coredump: ensure the fpu state is flushed for proper multi-threaded core dump
        fork: move the real prepare_to_copy() users to arch_dup_task_struct()
      ec0d7f18
    • Linus Torvalds's avatar
      Merge branch 'x86-extable-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip · 269af9a1
      Linus Torvalds authored
      Pull exception table generation updates from Ingo Molnar:
       "The biggest change here is to allow the build-time sorting of the
        exception table, to speed up booting.  This is achieved by the
        architecture enabling BUILDTIME_EXTABLE_SORT.  This option is enabled
        for x86 and MIPS currently.
      
        On x86 a number of fixes and changes were needed to allow build-time
        sorting of the exception table, in particular a relocation invariant
        exception table format was needed.  This required the abstracting out
        of exception table protocol and the removal of 20 years of accumulated
        assumptions about the x86 exception table format.
      
        While at it, this tree also cleans up various other aspects of
        exception handling, such as early(er) exception handling for
        rdmsr_safe() et al.
      
        All in one, as the result of these changes the x86 exception code is
        now pretty nice and modern.  As an added bonus any regressions in this
        code will be early and violent crashes, so if you see any of those,
        you'll know whom to blame!"
      
      Fix up trivial conflicts in arch/{mips,x86}/Kconfig files due to nearby
      modifications of other core architecture options.
      
      * 'x86-extable-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip: (35 commits)
        Revert "x86, extable: Disable presorted exception table for now"
        scripts/sortextable: Handle relative entries, and other cleanups
        x86, extable: Switch to relative exception table entries
        x86, extable: Disable presorted exception table for now
        x86, extable: Add _ASM_EXTABLE_EX() macro
        x86, extable: Remove open-coded exception table entries in arch/x86/ia32/ia32entry.S
        x86, extable: Remove open-coded exception table entries in arch/x86/include/asm/xsave.h
        x86, extable: Remove open-coded exception table entries in arch/x86/include/asm/kvm_host.h
        x86, extable: Remove the now-unused __ASM_EX_SEC macros
        x86, extable: Remove open-coded exception table entries in arch/x86/xen/xen-asm_32.S
        x86, extable: Remove open-coded exception table entries in arch/x86/um/checksum_32.S
        x86, extable: Remove open-coded exception table entries in arch/x86/lib/usercopy_32.c
        x86, extable: Remove open-coded exception table entries in arch/x86/lib/putuser.S
        x86, extable: Remove open-coded exception table entries in arch/x86/lib/getuser.S
        x86, extable: Remove open-coded exception table entries in arch/x86/lib/csum-copy_64.S
        x86, extable: Remove open-coded exception table entries in arch/x86/lib/copy_user_nocache_64.S
        x86, extable: Remove open-coded exception table entries in arch/x86/lib/copy_user_64.S
        x86, extable: Remove open-coded exception table entries in arch/x86/lib/checksum_32.S
        x86, extable: Remove open-coded exception table entries in arch/x86/kernel/test_rodata.c
        x86, extable: Remove open-coded exception table entries in arch/x86/kernel/entry_64.S
        ...
      269af9a1
    • Linus Torvalds's avatar
      Merge branch 'x86-efi-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip · 8ca038dc
      Linus Torvalds authored
      Pull x86 EFI updates from Ingo Molnar:
       "This patchset makes changes to the bzImage EFI header, so that it can
        be signed with a secure boot signature tool.  It should not affect
        anyone who is not using the EFI self-boot feature in any way."
      
      * 'x86-efi-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
        x86, efi: Fix NumberOfRvaAndSizes field in PE32 header for EFI_STUB
        x86, efi: Fix .text section overlapping image header for EFI_STUB
        x86, efi: Fix issue of overlapping .reloc section for EFI_STUB
      8ca038dc
    • Linus Torvalds's avatar
      Merge branch 'x86-urgent-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip · e7b30a17
      Linus Torvalds authored
      Pull x86/urgent branch from Ingo Molnar:
       "These are the fixes left over from the very end of the v3.4
        stabilization cycle, plus one more fix."
      
      Ugh.  Those KERN_CONT additions are just pointless.  I think they came
      as a reaction to some of the early (broken) printk() work - but that was
      fixed before it was merged.
      
      * 'x86-urgent-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
        x86, relocs: Build clean fix
        x86, printk: Add missing KERN_CONT to NMI selftest
        x86: Fix boot on Twinhead H12Y
      e7b30a17
    • Linus Torvalds's avatar
      Merge branches 'x86-asm-for-linus', 'x86-cleanups-for-linus',... · 19bec32d
      Linus Torvalds authored
      Merge branches 'x86-asm-for-linus', 'x86-cleanups-for-linus', 'x86-cpu-for-linus', 'x86-debug-for-linus' and 'x86-microcode-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip
      
      Pull initial trivial x86 stuff from Ingo Molnar.
      
      Various random cleanups and trivial fixes.
      
      * 'x86-asm-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
        x86-64: Eliminate dead ia32 syscall handlers
      
      * 'x86-cleanups-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
        x86/pci-calgary_64.c: Remove obsoleted simple_strtoul() usage
        x86: Don't continue booting if we can't load the specified initrd
        x86: kernel/dumpstack.c simple_strtoul cleanup
        x86: kernel/check.c simple_strtoul cleanup
        debug: Add CONFIG_READABLE_ASM
        x86: spinlock.h: Remove REG_PTR_MODE
      
      * 'x86-cpu-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
        x86/cache_info: Fix setup of l2/l3 ids
      
      * 'x86-debug-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
        x86: Avoid double stack traces with show_regs()
      
      * 'x86-microcode-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
        x86, microcode: microcode_core.c simple_strtoul cleanup
      19bec32d
    • Linus Torvalds's avatar
      Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/rkuo/linux-hexagon-kernel · 514b1923
      Linus Torvalds authored
      Pull Hexagon architecture changes from Richard Kuo:
       "These are mostly cleanups and feedback remaining from the original
        upstreaming."
      
      * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/rkuo/linux-hexagon-kernel:
        various Kconfig cleanup and old platform build code removal
        hexagon/mm/vm_fault.c: Port OOM changes to do_page_fault
        arch/hexagon/kernel/dma.c: make function static
        Remove unneeded include of version.h from arch/hexagon/include/asm/spinlock_types.h
        Hexagon: Use resource_size function
      514b1923
    • Linus Torvalds's avatar
      Merge branch 'next' of git://git.kernel.org/pub/scm/linux/kernel/git/benh/powerpc · 6f73b362
      Linus Torvalds authored
      Pull powerpc updates from Benjamin Herrenschmidt:
       "Here are the powerpc goodies for 3.5.  Main highlights are:
      
         - Support for the NX crypto engine in Power7+
         - A bunch of Anton goodness, including some micro optimization of our
           syscall entry on Power7
         - I converted a pile of our thermal control drivers to the new i2c
           APIs (essentially turning the old therm_pm72 into a proper set of
           windfarm drivers).  That's one more step toward removing the
           deprecated i2c APIs, there's still a few drivers to fix, but we are
           getting close
         - kexec/kdump support for 47x embedded cores
      
        The big missing thing here is no updates from Freescale.  Not sure
        what's up here, but with Kumar not working for them anymore things are
        a bit in a state of flux in that area."
      
      * 'next' of git://git.kernel.org/pub/scm/linux/kernel/git/benh/powerpc: (71 commits)
        powerpc: Fix irq distribution
        Revert "powerpc/hw-breakpoint: Use generic hw-breakpoint interfaces for new PPC ptrace flags"
        powerpc: Fixing a cputhread code documentation
        powerpc/crypto: Enable the PFO-based encryption device
        powerpc/crypto: Build files for the nx device driver
        powerpc/crypto: debugfs routines and docs for the nx device driver
        powerpc/crypto: SHA512 hash routines for nx encryption
        powerpc/crypto: SHA256 hash routines for nx encryption
        powerpc/crypto: AES-XCBC mode routines for nx encryption
        powerpc/crypto: AES-GCM mode routines for nx encryption
        powerpc/crypto: AES-ECB mode routines for nx encryption
        powerpc/crypto: AES-CTR mode routines for nx encryption
        powerpc/crypto: AES-CCM mode routines for nx encryption
        powerpc/crypto: AES-CBC mode routines for nx encryption
        powerpc/crypto: nx driver code supporting nx encryption
        powerpc/pseries: Enable the PFO-based RNG accelerator
        powerpc/pseries/hwrng: PFO-based hwrng driver
        powerpc/pseries: Add PFO support to the VIO bus
        powerpc/pseries: Add pseries update notifier for OFDT prop changes
        powerpc/pseries: Add new hvcall constants to support PFO
        ...
      6f73b362
    • Linus Torvalds's avatar
      Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/rw/uml · 3a8580f8
      Linus Torvalds authored
      Pull UML updates from Richard Weinberger:
       "Most changes are bug fixes and cleanups"
      
      * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/rw/uml:
        um: missing checks of __put_user()/__get_user() return values
        um: stub_rt_sigsuspend isn't needed these days anymore
        um/x86: merge (and trim) 32- and 64-bit variants of ptrace.h
        irq: Remove irq_chip->release()
        um: Remove CONFIG_IRQ_RELEASE_METHOD
        um: Remove usage of irq_chip->release()
        um: Implement um_free_irq()
        um: Fix __swp_type()
        um: Implement a custom pte_same() function
        um: Add BUG() to do_ops()'s error path
        um: Remove unused variables
        um: bury unused _TIF_RESTORE_SIGMASK
        um: wrong sigmask saved in case of multiple sigframes
        um: add TIF_NOTIFY_RESUME
        um: ->restart_block.fn needs to be reset on sigreturn
      3a8580f8
    • Linus Torvalds's avatar
      Merge tag 'sh-for-linus' of git://github.com/pmundt/linux-sh · 1d767cae
      Linus Torvalds authored
      Pull SuperH updates from Paul Mundt:
       - New CPUs: SH7734 (SH-4A), SH7264 and SH7269 (SH-2A)
       - New boards: RSK2+SH7264, RSK2+SH7269
       - Unbreaking kgdb for SMP
       - Consolidation of _32/_64 page fault handling.
       - watchdog and legacy DMA chainsawing, part 1
       - Conversion to evt2irq() hwirq lookup, to support relocation of
         vectored IRQs for irqdomains.
      
      * tag 'sh-for-linus' of git://github.com/pmundt/linux-sh: (98 commits)
        sh: intc: Kill off special reservation interface.
        sh: Enable PIO API for hp6xx and se770x.
        sh: Kill off machvec IRQ hinting.
        sh: dma: More legacy cpu dma chainsawing.
        sh: Kill off MAX_DMA_ADDRESS leftovers.
        sh: Tidy up some of the cpu legacy dma header mess.
        sh: Move sh4a dma header from cpu-sh4 to cpu-sh4a.
        sh64: Fix up vmalloc fault range check.
        Revert "sh: Ensure fixmap and store queue space can co-exist."
        serial: sh-sci: Fix for port types without BRI interrupts.
        sh: legacy PCI evt2irq migration.
        sh: cpu dma evt2irq migration.
        sh: sh7763rdp evt2irq migration.
        sh: sdk7780 evt2irq migration.
        sh: migor evt2irq migration.
        sh: landisk evt2irq migration.
        sh: kfr2r09 evt2irq migration.
        sh: ecovec24 evt2irq migration.
        sh: ap325rxa evt2irq migration.
        sh: urquell evt2irq migration.
        ...
      1d767cae
    • Jiri Olsa's avatar
      Revert "sched, perf: Use a single callback into the scheduler" · ab0cce56
      Jiri Olsa authored
      This reverts commit cb04ff9a ("sched, perf: Use a single
      callback into the scheduler").
      
      Before this change was introduced, the process switch worked
      like this (wrt. to perf event schedule):
      
           schedule (prev, next)
             - schedule out all perf events for prev
             - switch to next
             - schedule in all perf events for current (next)
      
      After the commit, the process switch looks like:
      
           schedule (prev, next)
             - schedule out all perf events for prev
             - schedule in all perf events for (next)
             - switch to next
      
      The problem is, that after we schedule perf events in, the pmu
      is enabled and we can receive events even before we make the
      switch to next - so "current" still being prev process (event
      SAMPLE data are filled based on the value of the "current"
      process).
      
      Thats exactly what we see for test__PERF_RECORD test. We receive
      SAMPLES with PID of the process that our tracee is scheduled
      from.
      
      Discussed with Peter Zijlstra:
      
       > Bah!, yeah I guess reverting is the right thing for now. Sad
       > though.
       >
       > So by having the two hooks we have a black-spot between them
       > where we receive no events at all, this black-spot covers the
       > hand-over of current and we thus don't receive the 'wrong'
       > events.
       >
       > I rather liked we could do away with both that black-spot and
       > clean up the code a little, but apparently people rely on it.
      Signed-off-by: default avatarJiri Olsa <jolsa@redhat.com>
      Acked-by: default avatarPeter Zijlstra <a.p.zijlstra@chello.nl>
      Cc: acme@redhat.com
      Cc: paulus@samba.org
      Cc: cjashfor@linux.vnet.ibm.com
      Cc: fweisbec@gmail.com
      Cc: eranian@google.com
      Link: http://lkml.kernel.org/r/20120523111302.GC1638@m.brq.redhat.comSigned-off-by: default avatarIngo Molnar <mingo@kernel.org>
      ab0cce56
    • Devendra Naga's avatar
      Documentation/watchdog: Fix the file descriptor leak when no cmdline arg given · cad19fa6
      Devendra Naga authored
      we start a infinite loop when user gives ./watchdog-test, and when user
      ctrl + c's the program, we just exit immeadiately with out closing the
      filedescriptor of the watchdog device. a signal handler is used to
      do the job of closing the filedescriptor and exiting the program.
      Signed-off-by: default avatarDevendra Naga <devendra.aaru@gmail.com>
      Signed-off-by: default avatarWim Van Sebroeck <wim@iguana.be>
      cad19fa6
    • Devendra Naga's avatar
      Documentation/watchdog: close the fd when cmdline arg given · 3c2a6186
      Devendra Naga authored
      in the watchdog test code, the ioctl is performed on the watchdog device
      and just doing exit(0) so we leak a filedescripor.
      Signed-off-by: default avatarDevendra Naga <devendra.aaru@gmail.com>
      Signed-off-by: default avatarWim Van Sebroeck <wim@iguana.be>
      3c2a6186
    • Devendra Naga's avatar
      2deca736
    • Hans de Goede's avatar
      watchdog: s3c2410_wdt: Set timeout to actually achieved timeout · 5f2430f5
      Hans de Goede authored
      While rebasing my "watchdog_dev: Let the driver update the timeout field on
      set_timeout success" patch (before I noticed it was already picked up by Wim),
      I noticed that the s3c2410_wdt driver may not always have a 1 second
      resolution, this patch changes s3c2410wdt_set_heartbeat to update the
      timeout to the actually achieved timeout.
      Signed-off-by: default avatarHans de Goede <hdegoede@redhat.com>
      Signed-off-by: default avatarWim Van Sebroeck <wim@iguana.be>
      5f2430f5