1. 10 Feb, 2015 24 commits
    • Xue jiufei's avatar
      ocfs2/dlm: add missing dlm_lock_put() when recovery master down · b934beaf
      Xue jiufei authored
      When the recovery master is down, the owner of $RECOVERY calls
      dlm_do_local_recovery_cleanup() to prune any $RECOVERY entries for dead
      nodes.  The lock is in the granted list and the refcount must be 2.  We
      should put twice to remove this lock.  Otherwise, it will lead to a memory
      leak.
      Signed-off-by: default avatarjoyce.xue <xuejiufei@huawei.com>
      Reported-by: default avataryangwenfang <vicky.yangwenfang@huawei.com>
      Cc: Mark Fasheh <mfasheh@suse.com>
      Cc: Joel Becker <jlbec@evilplan.org>
      Signed-off-by: default avatarAndrew Morton <akpm@linux-foundation.org>
      Signed-off-by: default avatarLinus Torvalds <torvalds@linux-foundation.org>
      b934beaf
    • Kevin Cernekee's avatar
      sh: eliminate unused irq_reg_{readl,writel} accessors · 102ca660
      Kevin Cernekee authored
      Defining these macros way down in arch/sh/.../irq.c doesn't cause
      kernel/irq/generic-chip.c to use them.  As far as I can tell this code has
      no effect.
      
      Fixes: 332fd7c4 ("genirq: Generic chip: Change irq_reg_{readl,writel} arguments")
      Signed-off-by: default avatarKevin Cernekee <cernekee@gmail.com>
      Signed-off-by: default avatarGeert Uytterhoeven <geert+renesas@glider.be>
      Tested-by: Geert Uytterhoeven <geert+renesas@glider.be> (cpp/asm comparison)
      Cc: Thomas Gleixner <tglx@linutronix.de>
      Cc: Jason Cooper <jason@lakedaemon.net>
      Signed-off-by: default avatarAndrew Morton <akpm@linux-foundation.org>
      Signed-off-by: default avatarLinus Torvalds <torvalds@linux-foundation.org>
      102ca660
    • Rob Landley's avatar
      sh: build superh without CONFIG_EXPERT · 560b8c0e
      Rob Landley authored
      What sh4 actually wants is HAVE_PATA_PLATFORM, so select that instead.
      Signed-off-by: default avatarRob Landley <rob@landley.net>
      Acked-by: default avatarRandy Dunlap <rdunlap@infradead.org>
      Acked-by: default avatarGeert Uytterhoeven <geert+renesas@glider.be>
      Signed-off-by: default avatarAndrew Morton <akpm@linux-foundation.org>
      Signed-off-by: default avatarLinus Torvalds <torvalds@linux-foundation.org>
      560b8c0e
    • Jan Kara's avatar
      fsnotify: fix handling of renames in audit · 6ee8e25f
      Jan Kara authored
      Commit e9fd702a ("audit: convert audit watches to use fsnotify
      instead of inotify") broke handling of renames in audit.  Audit code
      wants to update inode number of an inode corresponding to watched name
      in a directory.  When something gets renamed into a directory to a
      watched name, inotify previously passed moved inode to audit code
      however new fsnotify code passes directory inode where the change
      happened.  That confuses audit and it starts watching parent directory
      instead of a file in a directory.
      
      This can be observed for example by doing:
      
        cd /tmp
        touch foo bar
        auditctl -w /tmp/foo
        touch foo
        mv bar foo
        touch foo
      
      In audit log we see events like:
      
        type=CONFIG_CHANGE msg=audit(1423563584.155:90): auid=1000 ses=2 op="updated rules" path="/tmp/foo" key=(null) list=4 res=1
        ...
        type=PATH msg=audit(1423563584.155:91): item=2 name="bar" inode=1046884 dev=08:0 2 mode=0100644 ouid=0 ogid=0 rdev=00:00 nametype=DELETE
        type=PATH msg=audit(1423563584.155:91): item=3 name="foo" inode=1046842 dev=08:0 2 mode=0100644 ouid=0 ogid=0 rdev=00:00 nametype=DELETE
        type=PATH msg=audit(1423563584.155:91): item=4 name="foo" inode=1046884 dev=08:0 2 mode=0100644 ouid=0 ogid=0 rdev=00:00 nametype=CREATE
        ...
      
      and that's it - we see event for the first touch after creating the
      audit rule, we see events for rename but we don't see any event for the
      last touch.  However we start seeing events for unrelated stuff
      happening in /tmp.
      
      Fix the problem by passing moved inode as data in the FS_MOVED_FROM and
      FS_MOVED_TO events instead of the directory where the change happens.
      This doesn't introduce any new problems because noone besides
      audit_watch.c cares about the passed value:
      
        fs/notify/fanotify/fanotify.c cares only about FSNOTIFY_EVENT_PATH events.
        fs/notify/dnotify/dnotify.c doesn't care about passed 'data' value at all.
        fs/notify/inotify/inotify_fsnotify.c uses 'data' only for FSNOTIFY_EVENT_PATH.
        kernel/audit_tree.c doesn't care about passed 'data' at all.
        kernel/audit_watch.c expects moved inode as 'data'.
      
      Fixes: e9fd702a ("audit: convert audit watches to use fsnotify instead of inotify")
      Signed-off-by: default avatarJan Kara <jack@suse.cz>
      Cc: Paul Moore <paul@paul-moore.com>
      Cc: Eric Paris <eparis@redhat.com>
      Cc: <stable@vger.kernel.org>
      Signed-off-by: default avatarAndrew Morton <akpm@linux-foundation.org>
      Signed-off-by: default avatarLinus Torvalds <torvalds@linux-foundation.org>
      6ee8e25f
    • Zhang Zhen's avatar
      inotify: update documentation to reflect code changes · a5b2f95d
      Zhang Zhen authored
      The inotify interface has changed a lot.  The user interface was too
      old, and the kernel interface was removed by Eric Paris in commit:
      2dfc1cae inotify: remove inotify in kernel interface.
      Signed-off-by: default avatarZhang Zhen <zhenzhang.zhang@huawei.com>
      Cc: Wang Kai <morgan.wang@huawei.com>
      Cc: Eric Paris <eparis@parisplace.org>
      Cc: Robert Love <robert.w.love@intel.com>
      Cc: John McCutchan <john@johnmccutchan.com>
      Cc: Heinrich Schuchardt <xypron.glpk@gmx.de>
      Acked-by: default avatarJan Kara <jack@suse.cz>
      Signed-off-by: default avatarAndrew Morton <akpm@linux-foundation.org>
      Signed-off-by: default avatarLinus Torvalds <torvalds@linux-foundation.org>
      a5b2f95d
    • Lino Sanfilippo's avatar
      fanotify: don't set FAN_ONDIR implicitly on a marks ignored mask · 66ba93c0
      Lino Sanfilippo authored
      Currently FAN_ONDIR is always set on a mark's ignored mask when the
      event mask is extended without FAN_MARK_ONDIR being set.  This may
      result in events for directories being ignored unexpectedly for call
      sequences like
      
        fanotify_mark(fd, FAN_MARK_ADD, FAN_OPEN | FAN_ONDIR , AT_FDCWD, "dir");
        fanotify_mark(fd, FAN_MARK_ADD, FAN_CLOSE, AT_FDCWD, "dir");
      
      Also FAN_MARK_ONDIR is only honored when adding events to a mark's mask,
      but not for event removal.  Fix both issues by not setting FAN_ONDIR
      implicitly on the ignore mask any more.  Instead treat FAN_ONDIR as any
      other event flag and require FAN_MARK_ONDIR to be set by the user for
      both event mask and ignore mask.  Furthermore take FAN_MARK_ONDIR into
      account when set for event removal.
      
      [akpm@linux-foundation.org: coding-style fixes]
      Signed-off-by: default avatarLino Sanfilippo <LinoSanfilippo@gmx.de>
      Reviewed-by: default avatarJan Kara <jack@suse.cz>
      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>
      66ba93c0
    • Lino Sanfilippo's avatar
      fanotify: don't recalculate a marks mask if only the ignored mask changed · d2c1874c
      Lino Sanfilippo authored
      If removing bits from a mark's ignored mask, the concerning
      inodes/vfsmounts mask is not affected.  So don't recalculate it.
      
      [akpm@linux-foundation.org: coding-style fixes]
      Signed-off-by: default avatarLino Sanfilippo <LinoSanfilippo@gmx.de>
      Reviewed-by: default avatarJan Kara <jack@suse.cz>
      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>
      d2c1874c
    • Lino Sanfilippo's avatar
      fanotify: only destroy mark when both mask and ignored_mask are cleared · a118449a
      Lino Sanfilippo authored
      In fanotify_mark_remove_from_mask() a mark is destroyed if only one of
      both bitmasks (mask or ignored_mask) of a mark is cleared.  However the
      other mask may still be set and contain information that should not be
      lost.  So only destroy a mark if both masks are cleared.
      Signed-off-by: default avatarLino Sanfilippo <LinoSanfilippo@gmx.de>
      Reviewed-by: default avatarJan Kara <jack@suse.cz>
      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>
      a118449a
    • Kirill A. Shutemov's avatar
      hugetlb, x86: register 1G page size if we can allocate them at runtime · ece84b39
      Kirill A. Shutemov authored
      After commit 944d9fec ("hugetlb: add support for gigantic page
      allocation at runtime") we can allocate 1G pages at runtime if CMA is
      enabled.
      
      Let's register 1G pages into hugetlb even if the user hasn't requested
      them explicitly at boot time with hugepagesz=1G.
      Signed-off-by: default avatarKirill A. Shutemov <kirill.shutemov@linux.intel.com>
      Reviewed-by: default avatarLuiz Capitulino <lcapitulino@redhat.com>
      Cc: Naoya Horiguchi <n-horiguchi@ah.jp.nec.com>
      Cc: Andi Kleen <ak@linux.intel.com>
      Cc: Thomas Gleixner <tglx@linutronix.de>
      Cc: Ingo Molnar <mingo@redhat.com>
      Cc: "H. Peter Anvin" <hpa@zytor.com>
      Signed-off-by: default avatarAndrew Morton <akpm@linux-foundation.org>
      Signed-off-by: default avatarLinus Torvalds <torvalds@linux-foundation.org>
      ece84b39
    • Linus Torvalds's avatar
      Merge branch 'for-3.20' of git://git.kernel.org/pub/scm/linux/kernel/git/tj/libata · 3e8c04eb
      Linus Torvalds authored
      Pull libata changes from Tejun Heo:
       "Mostly driver-specific changes.  Nothing too noteworthy.
      
        This pull request contains three merges from for-3.19-fixes.  The
        first two are to pull ahci_xgene and sata_dwc_460ex fix commits which
        are depended upon by later changes.  The last one is to pull in a fix
        patch which missed the v3.19-rc window"
      
      * 'for-3.20' of git://git.kernel.org/pub/scm/linux/kernel/git/tj/libata: (24 commits)
        ahci_xgene: Fix the dma state machine lockup for the ATA_CMD_SMART PIO mode command.
        ata: libahci: Use of_platform_device_create only if supported
        sata_mv: Delete unnecessary checks before the function call "phy_power_off"
        ata: Delete unnecessary checks before the function call "pci_dev_put"
        ata: pata_platform: fix owner module reference mismatch for scsi host
        ata: ahci_platform: fix owner module reference mismatch for scsi host
        pata_pdc2027x: Use 64-bit timekeeping
        ata: libahci: Fix devres cleanup on failure
        ata: libahci: Allow using multiple regulators
        Documentation: bindings: Add the regulator property to the sub-nodes AHCI bindings
        ata: libahci: Clean-up the ahci_platform_en/disable_phys functions
        sata_rcar: extend PM methods
        sata_dwc_460ex: disable compilation on ARM and ARM64
        ata: libata-core: Remove unused function
        sata_dwc_460ex: convert to devm_kzalloc in ->probe()
        sata_dwc_460ex: remove extra message
        sata_dwc_460ex: use np local variable in ->probe()
        sata_dwc_460ex: fix most of the sparse warnings
        sata_dwc_460ex: enable COMPILE_TEST for the driver
        sata_dwc_460ex: remove redundant dev_set_drvdata
        ...
      3e8c04eb
    • Linus Torvalds's avatar
      Merge branch 'for-3.20' of git://git.kernel.org/pub/scm/linux/kernel/git/tj/wq · 44dbf058
      Linus Torvalds authored
      Pull workqueue changes from Tejun Heo:
       "One cosmetic cleanup patch"
      
      * 'for-3.20' of git://git.kernel.org/pub/scm/linux/kernel/git/tj/wq:
        workqueue.h: remove loops of single statement macros
      44dbf058
    • Linus Torvalds's avatar
      Merge branch 'for-3.20' of git://git.kernel.org/pub/scm/linux/kernel/git/tj/cgroup · 15763db1
      Linus Torvalds authored
      Pull cgroup changes from Tejun Heo:
       "Three mostly trivial patches.  The biggest change is that blkio is now
        initialized before memcg which will be needed to make memcg and blkcg
        cooperate on writeback IOs"
      
      * 'for-3.20' of git://git.kernel.org/pub/scm/linux/kernel/git/tj/cgroup:
        cgroup: add dummy css_put() for !CONFIG_CGROUPS
        cgroup: reorder SUBSYS(blkio) in cgroup_subsys.h
        Update of Documentation/cgroups/00-INDEX
      15763db1
    • Linus Torvalds's avatar
      Merge branch 'for-3.20' of git://git.kernel.org/pub/scm/linux/kernel/git/tj/percpu · c2189e3a
      Linus Torvalds authored
      Pull percpu changes from Tejun Heo:
       "Nothing too interesting.  One cleanup patch and another to add a
        trivial state check function"
      
      * 'for-3.20' of git://git.kernel.org/pub/scm/linux/kernel/git/tj/percpu:
        percpu_ref: implement percpu_ref_is_dying()
        percpu_ref: remove unnecessary ACCESS_ONCE() in percpu_ref_tryget_live()
      c2189e3a
    • Linus Torvalds's avatar
      Merge tag 'edac_for_3.20' of git://git.kernel.org/pub/scm/linux/kernel/git/bp/bp · ed824a62
      Linus Torvalds authored
      Pull EDAC updates from Borislav Petkov:
      
       - a new synopsys_edac.c driver for the Synopsys DDR controller, from
         Punnaiah Choudary Kalluri.
      
       - minor fixes/cleanups all around
      
       - Mauro and I are adding the repo URLs to MAINTAINERS since people
         asked for trees to base upcoming work on.
      
      * tag 'edac_for_3.20' of git://git.kernel.org/pub/scm/linux/kernel/git/bp/bp:
        EDAC: Add repo URLs to MAINTAINERS
        EDAC, mv64x60_edac: Fix an error code in probe()
        EDAC: edac_mc_sysfs: Make stuff static
        EDAC: Fix the leak of mci->bus->name when bus_register fails
        edac: i5100_edac: Remove unused i5100_recmema_dm_buf_id
        EDAC, synps: Add EDAC support for zynq ddr ecc controller
        mpc85xx_edac: Fix a typo in comments
        EDAC, mce_amd_inj: Fix sparse non static symbol warning
      ed824a62
    • Linus Torvalds's avatar
      Merge branch 'x86-ras-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip · e07e0d4c
      Linus Torvalds authored
      Pull x86 RAS update from Ingo Molnar:
       "The changes in this cycle were:
      
         - allow mmcfg access to APEI error injection handlers
      
         - improve MCE error messages
      
         - smaller cleanups"
      
      * 'x86-ras-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
        x86, mce: Fix sparse errors
        x86, mce: Improve timeout error messages
        ACPI, EINJ: Enhance error injection tolerance level
      e07e0d4c
    • Linus Torvalds's avatar
      Merge branch 'x86-mm-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip · 57d36294
      Linus Torvalds authored
      Pull x86 mm cleanups from Ingo Molnar:
       "Two cleanups: simplify parse_setup_data() and sanitize_e820_map()
        usage"
      
      * 'x86-mm-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
        x86, e820: Clean up sanitize_e820_map() users
        x86, setup: Let early_memremap() handle page alignment
      57d36294
    • Linus Torvalds's avatar
      Merge branch 'x86-platform-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip · a8f76842
      Linus Torvalds authored
      Pull x86 SoC updates from Ingo Molnar:
       "Various Intel Atom SoC updates (mostly to enhance debuggability), plus
        an apb_timer cleanup"
      
      * 'x86-platform-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
        x86: pmc_atom: Expose contents of PSS
        x86: pmc_atom: Clean up init function
        x86: pmc-atom: Remove unused macro
        x86: pmc_atom: don%27t check for NULL twice
        x86: pmc-atom: Assign debugfs node as soon as possible
        x86/platform: Remove unused function from apb_timer.c
      a8f76842
    • Linus Torvalds's avatar
      Merge branch 'x86-fpu-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip · c93eceda
      Linus Torvalds authored
      Pull x86 fpu updates from Ingo Molnar:
       "Initial round of kernel_fpu_begin/end cleanups from Oleg Nesterov,
        plus a cleanup from Borislav Petkov"
      
      * 'x86-fpu-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
        x86, fpu: Fix math_state_restore() race with kernel_fpu_begin()
        x86, fpu: Don't abuse has_fpu in __kernel_fpu_begin/end()
        x86, fpu: Introduce per-cpu in_kernel_fpu state
        x86/fpu: Use a symbolic name for asm operand
      c93eceda
    • Linus Torvalds's avatar
      Merge branch 'x86-efi-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip · 072bc448
      Linus Torvalds authored
      Pull EFI updates from Ingo Molnar:
       "Main changes:
      
         - Move efivarfs from the misc filesystem section to pseudo filesystem
      
         - Expose firmware platform size in sysfs
      
         - Improve robustness of get_memory_map() by removing assumptions on
           the size of efi_memory_desc_t.
      
        - various cleanups and fixes
      
        The biggest risk is the get_memory_map() change, which changes the way
        that both the arm64 and x86 EFI boot stub build the early memory map.
        There are no known regressions with it at the moment, BYMMV"
      
      * 'x86-efi-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
        efi: Don't look for chosen@0 node on DT platforms
        firmware: efi: Remove unneeded guid unparse
        efi/libstub: Call get_memory_map() to obtain map and desc sizes
        efi: Small leak on error in runtime map code
        efi: rtc-efi: Mark UIE as unsupported
        arm64/efi: efistub: Apply __init annotation
        efi: Expose underlying UEFI firmware platform size to userland
        efi: Rename efi_guid_unparse to efi_guid_to_str
        efi: Update the URLs for efibootmgr
        fs: Make efivarfs a pseudo filesystem, built by default with EFI
      072bc448
    • Linus Torvalds's avatar
      Merge branch 'x86-cleanups-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip · 80f33a5f
      Linus Torvalds authored
      Pull x86 cleanups from Ingo Molnar:
       "Misc cleanups"
      
      * 'x86-cleanups-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
        x86/rtc: Remove duplicate const specifier
        x86, early_serial_console: Remove unnecessary check
        x86, early_serial_console: Remove unused macro XMTRDY
        x86, setup: Rename BOOT_ISDIGIT_H to BOOT_CTYPE_H
        x86, CPU: Fix trivial printk formatting issues with dmesg
      80f33a5f
    • Linus Torvalds's avatar
      Merge branch 'x86-asm-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip · 7453311d
      Linus Torvalds authored
      Pull x86 asm changes from Ingo Molnar:
       "The main changes in this cycle were the x86/entry and sysret
        enhancements from Andy Lutomirski, see merge commits 772a9aca and
        b57c0b51 for details"
      
      [ Exectutive summary: IST exceptions that interrupt user space will run
        on the regular kernel stack instead of the IST stack.  Which
        simplifies things particularly on return to user space.
      
        The sysret cleanup ends up simplifying the logic on when we can use
        sysret vs when we have to use iret.                - Linus ]
      
      * 'x86-asm-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
        x86_64, entry: Remove the syscall exit audit and schedule optimizations
        x86_64, entry: Use sysret to return to userspace when possible
        x86, traps: Fix ist_enter from userspace
        x86, vdso: teach 'make clean' remove vdso64 binaries
        x86_64 entry: Fix RCX for ptraced syscalls
        x86: entry_64.S: fold SAVE_ARGS_IRQ macro into its sole user
        x86: ia32entry.S: fix wrong symbolic constant usage: R11->ARGOFFSET
        x86: entry_64.S: delete unused code
        x86, mce: Get rid of TIF_MCE_NOTIFY and associated mce tricks
        x86, traps: Add ist_begin_non_atomic and ist_end_non_atomic
        x86: Clean up current_stack_pointer
        x86, traps: Track entry into and exit from IST context
        x86, entry: Switch stacks on a paranoid entry from userspace
      7453311d
    • Linus Torvalds's avatar
      Merge branch 'x86-apic-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip · 9d43bade
      Linus Torvalds authored
      Pull x86 APIC updates from Ingo Molnar:
       "Continued fallout of the conversion of the x86 IRQ code to the
        hierarchical irqdomain framework: more cleanups, simplifications,
        memory allocation behavior enhancements, mainly in the interrupt
        remapping and APIC code"
      
      * 'x86-apic-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip: (44 commits)
        x86, init: Fix UP boot regression on x86_64
        iommu/amd: Fix irq remapping detection logic
        x86/acpi: Make acpi_[un]register_gsi_ioapic() depend on CONFIG_X86_LOCAL_APIC
        x86: Consolidate boot cpu timer setup
        x86/apic: Reuse apic_bsp_setup() for UP APIC setup
        x86/smpboot: Sanitize uniprocessor init
        x86/smpboot: Move apic init code to apic.c
        init: Get rid of x86isms
        x86/apic: Move apic_init_uniprocessor code
        x86/smpboot: Cleanup ioapic handling
        x86/apic: Sanitize ioapic handling
        x86/ioapic: Add proper checks to setp/enable_IO_APIC()
        x86/ioapic: Provide stub functions for IOAPIC%3Dn
        x86/smpboot: Move smpboot inlines to code
        x86/x2apic: Use state information for disable
        x86/x2apic: Split enable and setup function
        x86/x2apic: Disable x2apic from nox2apic setup
        x86/x2apic: Add proper state tracking
        x86/x2apic: Clarify remapping mode for x2apic enablement
        x86/x2apic: Move code in conditional region
        ...
      9d43bade
    • Linus Torvalds's avatar
      Merge branch 'timers-core-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip · 0ba97bc4
      Linus Torvalds authored
      Pull timer updates from Ingo Molnar:
       "The main changes in this cycle were:
      
         - rework hrtimer expiry calculation in hrtimer_interrupt(): the
           previous code had a subtle bug where expiry caching would miss an
           expiry, resulting in occasional bogus (late) expiry of hrtimers.
      
         - continuing Y2038 fixes
      
         - ktime division optimization
      
         - misc smaller fixes and cleanups"
      
      * 'timers-core-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
        hrtimer: Make __hrtimer_get_next_event() static
        rtc: Convert rtc_set_ntp_time() to use timespec64
        rtc: Remove redundant rtc_valid_tm() from rtc_hctosys()
        rtc: Modify rtc_hctosys() to address y2038 issues
        rtc: Update rtc-dev to use y2038-safe time interfaces
        rtc: Update interface.c to use y2038-safe time interfaces
        time: Expose get_monotonic_boottime64 for in-kernel use
        time: Expose getboottime64 for in-kernel uses
        ktime: Optimize ktime_divns for constant divisors
        hrtimer: Prevent stale expiry time in hrtimer_interrupt()
        ktime.h: Introduce ktime_ms_delta
      0ba97bc4
    • Linus Torvalds's avatar
      Merge branch 'sched-core-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip · 5b9b28a6
      Linus Torvalds authored
      Pull scheduler updates from Ingo Molnar:
       "The main scheduler changes in this cycle were:
      
         - various sched/deadline fixes and enhancements
      
         - rescheduling latency fixes/cleanups
      
         - rework the rq->clock code to be more consistent and more robust.
      
         - minor micro-optimizations
      
         - ->avg.decay_count fixes
      
         - add a stack overflow check to might_sleep()
      
         - idle-poll handler fix, possibly resulting in power savings
      
         - misc smaller updates and fixes"
      
      * 'sched-core-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
        sched/Documentation: Remove unneeded word
        sched/wait: Introduce wait_on_bit_timeout()
        sched: Pull resched loop to __schedule() callers
        sched/deadline: Remove cpu_active_mask from cpudl_find()
        sched: Fix hrtick_start() on UP
        sched/deadline: Avoid pointless __setscheduler()
        sched/deadline: Fix stale yield state
        sched/deadline: Fix hrtick for a non-leftmost task
        sched/deadline: Modify cpudl::free_cpus to reflect rd->online
        sched/idle: Add missing checks to the exit condition of cpu_idle_poll()
        sched: Fix missing preemption opportunity
        sched/rt: Reduce rq lock contention by eliminating locking of non-feasible target
        sched/debug: Print rq->clock_task
        sched/core: Rework rq->clock update skips
        sched/core: Validate rq_clock*() serialization
        sched/core: Remove check of p->sched_class
        sched/fair: Fix sched_entity::avg::decay_count initialization
        sched/debug: Fix potential call to __ffs(0) in sched_show_task()
        sched/debug: Check for stack overflow in ___might_sleep()
        sched/fair: Fix the dealing with decay_count in __synchronize_entity_decay()
      5b9b28a6
  2. 09 Feb, 2015 15 commits
    • Linus Torvalds's avatar
      Merge branch 'perf-core-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip · a4cbbf54
      Linus Torvalds authored
      Pull perf updates from Ingo Molnar:
       "Kernel side changes:
      
         - AMD range breakpoints support:
      
           Extend breakpoint tools and core to support address range through
           perf event with initial backend support for AMD extended
           breakpoints.
      
           The syntax is:
      
               perf record -e mem:addr/len:type
      
           For example set write breakpoint from 0x1000 to 0x1200 (0x1000 + 512)
      
               perf record -e mem:0x1000/512:w
      
         - event throttling/rotating fixes
      
         - various event group handling fixes, cleanups and general paranoia
           code to be more robust against bugs in the future.
      
          - kernel stack overhead fixes
      
        User-visible tooling side changes:
      
         - Show precise number of samples in at the end of a 'record' session,
           if processing build ids, since we will then traverse the whole
           perf.data file and see all the PERF_RECORD_SAMPLE records,
           otherwise stop showing the previous off-base heuristicly counted
           number of "samples" (Namhyung Kim).
      
         - Support to read compressed module from build-id cache (Namhyung
           Kim)
      
         - Enable sampling loads and stores simultaneously in 'perf mem'
           (Stephane Eranian)
      
         - 'perf diff' output improvements (Namhyung Kim)
      
         - Fix error reporting for evsel pgfault constructor (Arnaldo Carvalho
           de Melo)
      
        Tooling side infrastructure changes:
      
         - Cache eh/debug frame offset for dwarf unwind (Namhyung Kim)
      
         - Support parsing parameterized events (Cody P Schafer)
      
         - Add support for IP address formats in libtraceevent (David Ahern)
      
        Plus other misc fixes"
      
      * 'perf-core-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip: (48 commits)
        perf: Decouple unthrottling and rotating
        perf: Drop module reference on event init failure
        perf: Use POLLIN instead of POLL_IN for perf poll data in flag
        perf: Fix put_event() ctx lock
        perf: Fix move_group() order
        perf: Fix event->ctx locking
        perf: Add a bit of paranoia
        perf symbols: Convert lseek + read to pread
        perf tools: Use perf_data_file__fd() consistently
        perf symbols: Support to read compressed module from build-id cache
        perf evsel: Set attr.task bit for a tracking event
        perf header: Set header version correctly
        perf record: Show precise number of samples
        perf tools: Do not use __perf_session__process_events() directly
        perf callchain: Cache eh/debug frame offset for dwarf unwind
        perf tools: Provide stub for missing pthread_attr_setaffinity_np
        perf evsel: Don't rely on malloc working for sz 0
        tools lib traceevent: Add support for IP address formats
        perf ui/tui: Show fatal error message only if exists
        perf tests: Fix typo in sample-parsing.c
        ...
      a4cbbf54
    • Linus Torvalds's avatar
      Merge branch 'locking-core-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip · 8308756f
      Linus Torvalds authored
      Pull core locking updates from Ingo Molnar:
       "The main changes are:
      
         - mutex, completions and rtmutex micro-optimizations
         - lock debugging fix
         - various cleanups in the MCS and the futex code"
      
      * 'locking-core-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
        locking/rtmutex: Optimize setting task running after being blocked
        locking/rwsem: Use task->state helpers
        sched/completion: Add lock-free checking of the blocking case
        sched/completion: Remove unnecessary ->wait.lock serialization when reading completion state
        locking/mutex: Explicitly mark task as running after wakeup
        futex: Fix argument handling in futex_lock_pi() calls
        doc: Fix misnamed FUTEX_CMP_REQUEUE_PI op constants
        locking/Documentation: Update code path
        softirq/preempt: Add missing current->preempt_disable_ip update
        locking/osq: No need for load/acquire when acquire-polling
        locking/mcs: Better differentiate between MCS variants
        locking/mutex: Introduce ww_mutex_set_context_slowpath()
        locking/mutex: Move MCS related comments to proper location
        locking/mutex: Checking the stamp is WW only
      8308756f
    • Linus Torvalds's avatar
      Merge branch 'core-rcu-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip · 23e8fe2e
      Linus Torvalds authored
      Pull RCU updates from Ingo Molnar:
       "The main RCU changes in this cycle are:
      
         - Documentation updates.
      
         - Miscellaneous fixes.
      
         - Preemptible-RCU fixes, including fixing an old bug in the
           interaction of RCU priority boosting and CPU hotplug.
      
         - SRCU updates.
      
         - RCU CPU stall-warning updates.
      
         - RCU torture-test updates"
      
      * 'core-rcu-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip: (54 commits)
        rcu: Initialize tiny RCU stall-warning timeouts at boot
        rcu: Fix RCU CPU stall detection in tiny implementation
        rcu: Add GP-kthread-starvation checks to CPU stall warnings
        rcu: Make cond_resched_rcu_qs() apply to normal RCU flavors
        rcu: Optionally run grace-period kthreads at real-time priority
        ksoftirqd: Use new cond_resched_rcu_qs() function
        ksoftirqd: Enable IRQs and call cond_resched() before poking RCU
        rcutorture: Add more diagnostics in rcu_barrier() test failure case
        torture: Flag console.log file to prevent holdovers from earlier runs
        torture: Add "-enable-kvm -soundhw pcspk" to qemu command line
        rcutorture: Handle different mpstat versions
        rcutorture: Check from beginning to end of grace period
        rcu: Remove redundant rcu_batches_completed() declaration
        rcutorture: Drop rcu_torture_completed() and friends
        rcu: Provide rcu_batches_completed_sched() for TINY_RCU
        rcutorture: Use unsigned for Reader Batch computations
        rcutorture: Make build-output parsing correctly flag RCU's warnings
        rcu: Make _batches_completed() functions return unsigned long
        rcutorture: Issue warnings on close calls due to Reader Batch blows
        documentation: Fix smp typo in memory-barriers.txt
        ...
      23e8fe2e
    • Linus Torvalds's avatar
      Merge tag 'regulator-v3.20' of git://git.kernel.org/pub/scm/linux/kernel/git/broonie/regulator · 30d46827
      Linus Torvalds authored
      Pull regulator updates from Mark Brown:
       "This has not been a busy release for the regulator framework, though
        we do have the first parts of some ongoing work from Bjorn Andersson
        to allow us to support more complex modern systems with dynamic
        configuration of regulators in suspend and idle states.
      
         - Support for device-specific properties on regulator nodes when
           using simplified DT parsing in the core from Krzysztof Kozlowski.
      
         - Restructuring of the load tracking code, intended to support future
           improvements in this area for more complex system designs.
      
         - New drivers for Maxim MAX77843 and Mediatek MT6397.
      
         - Lots of smaller fixes and improvements"
      
      * tag 'regulator-v3.20' of git://git.kernel.org/pub/scm/linux/kernel/git/broonie/regulator: (29 commits)
        regulator: max77843: Add max77843 regulator driver
        regulator: Fix build breakage on !REGULATOR
        regulator: Build sysfs entries with static attribute groups
        regulator: qcom-rpm: Make it possible to specify supply
        regulator: core: Consolidate drms update handling
        regulator: qcom-rpm: signedness bug in probe()
        regulator: da9211: Add gpio control for enable/disable of buck
        regulator: qcom_rpm: Don't update vreg->uV/mV if rpm_reg_write fails
        regulator: lp872x: Remove **regulators from struct lp872x
        regulator: da9211: fix unmatched of_node
        regulator: Update documentation after renaming function argument
        regulator: axp20x: Migrate to regulator core's simplified DT parsing code
        regulator: axp20x: Fill regulators_node and of_match descriptor fields
        regulator: pfuze100-regulator: add pfuze3000 support
        regulator: max77686: Document gpio properties
        regulator: Allow parsing custom properties when using simplified DT parsing
        regulator: max77686: Add GPIO control
        regulator: Copy config passed during registration
        regulator: tps65023: Constify struct regmap_config and regulator_ops
        regulator: max8649: Constify struct regmap_config and regulator_ops
        ...
      30d46827
    • Linus Torvalds's avatar
      Merge tag 'spi-v3.20' of git://git.kernel.org/pub/scm/linux/kernel/git/broonie/spi · b0c1936c
      Linus Torvalds authored
      Pull spi updates from Mark Brown:
       "The major highlight this release is a refactoring of the core to allow
        us to run synchronous transfers in the context of the caller when
        there is no contention for the bus.  This improves performance in the
        very common case by eliminating context switches and reducing the
        number of hardware setup and teardown operations we need to perform.
      
        Other changes:
      
         - New drivers for DLN-2 USB-SPI adapter and ST SPI controllers.
      
         - A big round of cleanups, performance and feature improvements for
           the xilinx driver from Ricardo Ribalda Delgado.
      
         - A wide range of smaller cleanups, fixes and feature improvements
           throughout the subsystem"
      
      * tag 'spi-v3.20' of git://git.kernel.org/pub/scm/linux/kernel/git/broonie/spi: (68 commits)
        spi: mxs: cleanup wait_for_completion return handling
        spi: ti-qspi: cleanup wait_for_completion return handling
        spi: spi-imx: cleanup wait_for_completion handling
        spi: sh-msiof: cleanup wait_for_completion return handling
        spi: match var type to return type of wait_for_completion
        spi: spi-pxa2xx: only include mach/dma.h for legacy DMA
        spi: atmel: cleanup wait_for_completion return handling
        spi: fsl-dspi: Remove possible memory leak of 'chip'
        spi: sh-msiof: Update calculation of frequency dividing
        spi: spidev: Convert buf pointers for 32-bit compat SPI_IOC_MESSAGE(n)
        spi/xilinx: Fix access invalid memory on xilinx_spi_tx
        spi: Revert "spi/xilinx: Remove iowrite/ioread wrappers"
        spi/xilinx: Check number of slaves range
        spi/xilinx: Use polling mode on small transfers
        spi/xilinx: Remove remaining_words driver data variable
        spi/xilinx: Remove iowrite/ioread wrappers
        spi/xilinx: Convert bits_per_word in bytes_per_word
        spi/xilinx: Convert remainding_bytes in remaining words
        spi/xilinx: Make spi_tx and spi_rx simmetric
        spi/xilinx: Remove rx_fn and tx_fn pointer
        ...
      b0c1936c
    • Linus Torvalds's avatar
      Merge tag 'regmap-v3.20' of git://git.kernel.org/pub/scm/linux/kernel/git/broonie/regmap · f381f906
      Linus Torvalds authored
      Pull regmap updates from Mark Brown:
       "A very quiet release for regmap this time around:
      
         - Fix an endianness issue for I2C devices connected via SMBus where
           we were getting two layers both trying to do endianness handling.
         - Use a union to reduce the size of the regmap struct.
         - A couple of smaller fixes"
      
      * tag 'regmap-v3.20' of git://git.kernel.org/pub/scm/linux/kernel/git/broonie/regmap:
        regmap: Fix i2c word access when using SMBus access functions
        regmap: Export regmap_get_val_endian
        regmap: ac97: Clean up indentation
        regmap: correct the description of structure element in reg_field
        regmap: Move spinlock_flags into the union
      f381f906
    • Linus Torvalds's avatar
      Merge tag 'hwmon-for-linus-v3.20' of... · 5c30c3cc
      Linus Torvalds authored
      Merge tag 'hwmon-for-linus-v3.20' of git://git.kernel.org/pub/scm/linux/kernel/git/groeck/linux-staging
      
      Pull hwmon updates from Guenter Roeck:
       "Explicit support for ina231 added to ina2xx driver.
      
        Minor improvements, cleanup and fixes in various drivers"
      
      * tag 'hwmon-for-linus-v3.20' of git://git.kernel.org/pub/scm/linux/kernel/git/groeck/linux-staging:
        hwmon: (tmp102) add hibernation callbacks
        hwmon: (ads2828) Only keep data in device data structure if needed
        hwmon: (ads2828) Convert to use regmap
        hwmon: (jc42) Allow negative hysteresis temperatures
        hwmon: (adc128d818) Do proper sign extension
        hwmon: (ad7314) Do proper sign extension
        hwmon: (abx500) Fix format string warnings
        hwmon: (jc42) Fix integer overflow when writing hysteresis value
        hwmon: (jc42) Fix integer overflow
        hwmon: (jc42) Use sign_extend32 for sign extension
        hwmon: (ina2xx) Add ina231 compatible string
        hwmon: (ina2xx) use DIV_ROUND_CLOSEST() to avoid rounding errors
        hwmon: (ina2xx) remove an unnecessary dev_get_drvdata() result check
        hwmon: (ina2xx) implement update_interval attribute for ina226
        hwmon: (ina2xx) make shunt resistance configurable at run-time
        hwmon: (ina2xx) don't accept shunt values greater than the calibration factor
        hwmon: (ina2xx) remove a stray new line
        hwmon: (ina2xx) reinitialize the chip in case it's been reset
        hwmon: (nct7802) Constify struct regmap_config
      5c30c3cc
    • George Spelvin's avatar
      random: Fix fast_mix() function · 19acc77a
      George Spelvin authored
      There was a bad typo in commit 43759d4f ("random: use an improved
      fast_mix() function") and I didn't notice because it "looked right", so
      I saw what I expected to see when I reviewed it.
      
      Only months later did I look and notice it's not the Threefish-inspired
      mix function that I had designed and optimized.
      
      Mea Culpa.  Each input bit still has a chance to affect each output bit,
      and the fast pool is spilled *long* before it fills, so it's not a total
      disaster, but it's definitely not the intended great improvement.
      
      I'm still working on finding better rotation constants.  These are good
      enough, but since it's unrolled twice, it's possible to get better
      mixing for free by using eight different constants rather than repeating
      the same four.
      Signed-off-by: default avatarGeorge Spelvin <linux@horizon.com>
      Cc: Theodore Ts'o <tytso@mit.edu>
      Cc: stable@vger.kernel.org  # v3.16+
      Signed-off-by: default avatarLinus Torvalds <torvalds@linux-foundation.org>
      19acc77a
    • Tejun Heo's avatar
      Merge branch 'for-3.19-fixes' of... · b12aa1f2
      Tejun Heo authored
      Merge branch 'for-3.19-fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/tj/libata into for-3.20
      
      09c32aaa ("ahci_xgene: Fix the dma state machine lockup for the
      ATA_CMD_SMART PIO mode command.") missed 3.19 release.  Fold it into
      for-3.20.
      Signed-off-by: default avatarTejun Heo <tj@kernel.org>
      b12aa1f2
    • Borislav Petkov's avatar
      EDAC: Add repo URLs to MAINTAINERS · 7a859516
      Borislav Petkov authored
      ... so that people can base new work ontop.
      Signed-off-by: default avatarMauro Carvalho Chehab <mchehab@osg.samsung.com>
      Signed-off-by: default avatarBorislav Petkov <bp@suse.de>
      7a859516
    • Linus Torvalds's avatar
      Linux 3.19 · bfa76d49
      Linus Torvalds authored
      bfa76d49
    • Linus Torvalds's avatar
      Merge tag 'nios2-fixes-v3.19-final' of git://git.rocketboards.org/linux-socfpga-next · da2d96d3
      Linus Torvalds authored
      Pull nios2 fix from Ley Foon Tan:
       "This fixes incorrect behavior of some user programs"
      
      * tag 'nios2-fixes-v3.19-final' of git://git.rocketboards.org/linux-socfpga-next:
        nios2: fix unhandled signals
      da2d96d3
    • Linus Torvalds's avatar
      Merge git://git.kvack.org/~bcrl/aio-fixes · cdecbb33
      Linus Torvalds authored
      Pull aio nested sleep annotation from Ben LaHaise,
      
      * git://git.kvack.org/~bcrl/aio-fixes:
        aio: annotate aio_read_event_ring for sleep patterns
      cdecbb33
    • Linus Torvalds's avatar
      Merge tag 'trace-fixes-v3.19-rc7' of... · 4e02370f
      Linus Torvalds authored
      Merge tag 'trace-fixes-v3.19-rc7' of git://git.kernel.org/pub/scm/linux/kernel/git/rostedt/linux-trace
      
      Pull ftrace fixes from Steven Rostedt:
       "During testing Sedat Dilek hit a "suspicious RCU usage" splat that
        pointed out a real bug.  During suspend and resume the tlb_flush
        tracepoint is called when the CPU is going offline.  As the CPU has
        been noted as offline, RCU is ignoring that CPU, which means that it
        can not use RCU protected locks.  When tracepoints are activated, they
        require RCU locking, and if RCU is ignoring a CPU that runs a
        tracepoint, there is a chance that the tracepoint could cause
        corruption.
      
        The solution was to change the tracepoint into a
        TRACE_EVENT_CONDITION() which allows us to check a condition to
        determine if the tracepoint should be called or not.  If the condition
        is not met, the rcu protected code will not be executed.  By adding
        the condition "cpu_online(smp_processor_id())", this will prevent the
        RCU protected code from being executed if the CPU is marked offline.
      
        After adding this, another bug was discovered.  As RCU checks rcu
        callers, if a rcu call is not done, there is no check (obviously).  We
        found that tracepoints could be added in RCU ignored locations and not
        have lockdep complain until the tracepoint is activated.  This missed
        places where tracepoints were added in places they should not have
        been.  To fix this, code was added in 3.18 that if lockdep is enabled,
        any tracepoint will still call the rcu checks even if the tracepoint
        is not enabled.  The bug here, is that the check does not take the
        CONDITION into account.  As the condition may prevent tracepoints from
        being activated in RCU ignored areas (as the one patch does), we get
        false positives when we enable lockdep and hit a tracepoint that the
        condition prevents it from being called in a RCU ignored location.
      
        The fix for this is to add the CONDITION to the rcu checks, even if
        the tracepoint is not enabled"
      
      * tag 'trace-fixes-v3.19-rc7' of git://git.kernel.org/pub/scm/linux/kernel/git/rostedt/linux-trace:
        x86/tlb/trace: Do not trace on CPU that is offline
        tracing: Add condition check to RCU lockdep checks
      4e02370f
    • Chung-Ling Tang's avatar
      nios2: fix unhandled signals · a3248d60
      Chung-Ling Tang authored
      Follow other architectures for user fault handling.
      Signed-off-by: default avatarChung-Ling Tang <cltang@codesourcery.com>
      Acked-by: default avatarLey Foon Tan <lftan@altera.com>
      a3248d60
  3. 08 Feb, 2015 1 commit