Skip to content
  1. Jan 31, 2014
    • Linus Torvalds's avatar
      Merge branch 'x86-build-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip · 10ffe3db
      Linus Torvalds authored
      Pull x86 build bits from Peter Anvin:
       "Various build-related minor bits.
      
        Most of this is work by David Woodhouse to be able to compile the
        early boot code with clang/llvm; we have also managed to push an
        actual -m16 option into gcc 4.9 so this makes us use that option if
        available instead of hacking it.
      
        The balance is a patch from Michael Davidson to the relocs program to
        help manual debugging.
      
        None of these should change the actual compiled binary with currently
        released compilers"
      
      * 'x86-build-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
        x86, build: Build 16-bit code with -m16 where possible
        x86, boot: Fix word-size assumptions in has_eflag() inline asm
        x86, boot: Use __attribute__((used)) to ensure videocard structs are emitted
        x86: Remove duplication of 16-bit CFLAGS
        x86, relocs: Add manual debug mode
      10ffe3db
    • Linus Torvalds's avatar
      Merge tag 'late-dt-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/arm/arm-soc · f8a504c4
      Linus Torvalds authored
      Pull ARM SoC late changes from Kevin Hilman:
       "These are changes that arrived a little late but were considered
        self-contained enough to still go in for v3.14.
      
        They are all device tree updtes this time around, and mainly for
        Broadcom SoCs"
      
      * tag 'late-dt-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/arm/arm-soc:
        ARM: moxart: move fixed rate clock child node to board level dts
        clk: bcm281xx: define kona clock binding
        ARM: dts: add usb udc support to bcm281xx
        ARM: dts: Specify clocks for timer on bcm11351
        Documentation: dt: kona-timer: Add clocks property
        ARM: dts: Specify clocks for SDHCIs on bcm11351
        Documentation: dt: kona-sdhci: Add clocks property
        ARM: dts: Specify clocks for UARTs on bcm11351
        ARM: dts: bcm281xx: Add i2c busses
        ARM: dts: Declare clocks as fixed on bcm11351
        ARM: dts: bcm28155-ap: Enable all the i2c busses
      f8a504c4
    • Linus Torvalds's avatar
      Merge branch 'upstream' of git://git.linux-mips.org/pub/scm/ralf/upstream-linus · cdfc8307
      Linus Torvalds authored
      Pull MIPS updates from Ralf Baechle:
       "The most notable new addition inside this pull request is the support
        for MIPS's latest and greatest core called "inter/proAptiv".  The
        patch series describes this core as follows.
      
          "The interAptiv is a power-efficient multi-core microprocessor
           for use in system-on-chip (SoC) applications. The interAptiv combines
           a multi-threading pipeline with a coherence manager to deliver improved
           computational throughput and power efficiency. The interAptiv can
           contain one to four MIPS32R3 interAptiv cores, system level
           coherence manager with L2 cache, optional coherent I/O port,
           and optional floating point unit."
      
        The platform specific patches touch all 3 Broadcom families.  It adds
        support for the new Broadcom/Netlogix XLP9xx Soc, building a common
        BCM63XX SMP kernel for all BCM63XX SoCs regardless of core type/count
        and full gpio button/led descriptions for BCM47xx.
      
        The rest of the series are cleanups and bug fixes that are MIPS
        generic and consist largely of changes that Imgtec/MIPS had published
        in their linux-mti-3.10.git stable tree.  Random other cleanups and
        patches preparing code to be merged in 3.15"
      
      * 'upstream' of git://git.linux-mips.org/pub/scm/ralf/upstream-linus: (139 commits)
        mips: select ARCH_MIGHT_HAVE_PC_SERIO
        mips: delete non-required instances of include <linux/init.h>
        MIPS: KVM: remove shadow_tlb code
        MIPS: KVM: use common EHINV aware UNIQUE_ENTRYHI
        mips/ide: flush dcache also if icache does not snoop dcache
        MIPS: BCM47XX: fix position of cpu_wait disabling
        MIPS: BCM63XX: select correct MIPS_L1_CACHE_SHIFT value
        MIPS: update MIPS_L1_CACHE_SHIFT based on MIPS_L1_CACHE_SHIFT_<N>
        MIPS: introduce MIPS_L1_CACHE_SHIFT_<N>
        MIPS: ZBOOT: gather string functions into string.c
        arch/mips/pci: don't check resource with devm_ioremap_resource
        arch/mips/lantiq/xway: don't check resource with devm_ioremap_resource
        bcma: gpio: don't cast u32 to unsigned long
        ssb: gpio: add own IRQ domain
        MIPS: BCM47XX: fix sparse warnings in board.c
        MIPS: BCM47XX: add board detection for Linksys WRT54GS V1
        MIPS: BCM47XX: fix detection for some boards
        MIPS: BCM47XX: Enable buttons support on SSB
        MIPS: BCM47XX: Convert WNDR4500 to new syntax
        MIPS: BCM47XX: Use "timer" trigger for status LEDs
        ...
      cdfc8307
    • Linus Torvalds's avatar
      Merge tag 'for-3.14' of git://openrisc.net/~jonas/linux · 04a24ae4
      Linus Torvalds authored
      Pull OpenRISC updates from Jonas Bonn:
       "The interesting change here is a rework of the OpenRISC signal
        handling to make it more like other architectures in the hopes that
        this makes it easier for others to comment on and understand.  This
        rework fixes some real bugs, like the fact that syscall restart did
        not work reliably"
      
      * tag 'for-3.14' of git://openrisc.net/~jonas/linux:
        openrisc: Use get_signal() signal_setup_done()
        openrisc: Rework signal handling
      04a24ae4
    • Linus Torvalds's avatar
      Merge branch 'next' of git://git.kernel.org/pub/scm/linux/kernel/git/benh/powerpc · 4bcec913
      Linus Torvalds authored
      Pull more powerpc bits from Ben Herrenschmidt:
       "Here are a few more powerpc bits for this merge window.  The bulk is
        made of two pull requests from Scott and Anatolij that I had missed
        previously (they arrived while I was away).  Since both their branches
        are in -next independently, and the content has been around for a
        little while, they can still go in.
      
        The rest is mostly bug and regression fixes, a small series of
        cleanups to our pseries cpuidle code (including moving it to the right
        place), and one new cpuidle bakend for the powernv platform.  I also
        wired up the new sched_attr syscalls"
      
      * 'next' of git://git.kernel.org/pub/scm/linux/kernel/git/benh/powerpc: (37 commits)
        powerpc: Wire up sched_setattr and sched_getattr syscalls
        powerpc/hugetlb: Replace __get_cpu_var with get_cpu_var
        powerpc: Make sure "cache" directory is removed when offlining cpu
        powerpc/mm: Fix mmap errno when MAP_FIXED is set and mapping exceeds the allowed address space
        powerpc/powernv/cpuidle: Back-end cpuidle driver for powernv platform.
        powerpc/pseries/cpuidle: smt-snooze-delay cleanup.
        powerpc/pseries/cpuidle: Remove MAX_IDLE_STATE macro.
        powerpc/pseries/cpuidle: Make cpuidle-pseries backend driver a non-module.
        powerpc/pseries/cpuidle: Use cpuidle_register() for initialisation.
        powerpc/pseries/cpuidle: Move processor_idle.c to drivers/cpuidle.
        powerpc: Fix 32-bit frames for signals delivered when transactional
        powerpc/iommu: Fix initialisation of DART iommu table
        powerpc/numa: Fix decimal permissions
        powerpc/mm: Fix compile error of pgtable-ppc64.h
        powerpc: Fix hw breakpoints on !HAVE_HW_BREAKPOINT configurations
        clk: corenet: Adds the clock binding
        powerpc/booke64: Guard e6500 tlb handler with CONFIG_PPC_FSL_BOOK3E
        powerpc/512x: dts: add MPC5125 clock specs
        powerpc/512x: clk: support MPC5121/5123/5125 SoC variants
        powerpc/512x: clk: enforce even SDHC divider values
        ...
      4bcec913
    • Linus Torvalds's avatar
      Merge branch 'drop-time' of git://git.kernel.org/pub/scm/linux/kernel/git/mmarek/kbuild · 03c7287d
      Linus Torvalds authored
      Pull __TIME__/__DATE__ removal from Michal Marek:
       "This series by Josh finishes the removal of __DATE__ and __TIME__ from
        the kernel.  The last patch adds -Werror=date-time to KBUILD_CFLAGS to
        stop these from reappearing.
      
        Part of the series went through Greg's trees during this merge window,
        which is why this pull request is not based on v3.13-rc1"
      
      * 'drop-time' of git://git.kernel.org/pub/scm/linux/kernel/git/mmarek/kbuild:
        Makefile: Build with -Werror=date-time if the compiler supports it
        x86: math-emu: Drop already-disabled print of build date
        net: wireless: brcm80211: Drop debug version with build date/time
        mtd: denali: Drop print of build date/time
      03c7287d
    • Linus Torvalds's avatar
      Merge branch 'kbuild' of git://git.kernel.org/pub/scm/linux/kernel/git/mmarek/kbuild · 597690cd
      Linus Torvalds authored
      Pull kbuild changes from Michal Marek:
       - fix make -s detection with make-4.0
       - fix for scripts/setlocalversion when the kernel repository is a
         submodule
       - do not hardcode ';' in macros that expand to assembler code, as some
         architectures' assemblers use a different character for newline
       - Fix passing --gdwarf-2 to the assembler
      
      * 'kbuild' of git://git.kernel.org/pub/scm/linux/kernel/git/mmarek/kbuild:
        frv: Remove redundant debugging info flag
        mn10300: Remove redundant debugging info flag
        kbuild: Fix debugging info generation for .S files
        arch: use ASM_NL instead of ';' for assembler new line character in the macro
        kbuild: Fix silent builds with make-4
        Fix detectition of kernel git repository in setlocalversion script [take #2]
      597690cd
    • Linus Torvalds's avatar
      Merge branch 'for-3.14/drivers' of git://git.kernel.dk/linux-block · 53d8ab29
      Linus Torvalds authored
      Pull block IO driver changes from Jens Axboe:
      
       - bcache update from Kent Overstreet.
      
       - two bcache fixes from Nicholas Swenson.
      
       - cciss pci init error fix from Andrew.
      
       - underflow fix in the parallel IDE pg_write code from Dan Carpenter.
         I'm sure the 1 (or 0) users of that are now happy.
      
       - two PCI related fixes for sx8 from Jingoo Han.
      
       - floppy init fix for first block read from Jiri Kosina.
      
       - pktcdvd error return miss fix from Julia Lawall.
      
       - removal of IRQF_SHARED from the SEGA Dreamcast CD-ROM code from
         Michael Opdenacker.
      
       - comment typo fix for the loop driver from Olaf Hering.
      
       - potential oops fix for null_blk from Raghavendra K T.
      
       - two fixes from Sam Bradshaw (Micron) for the mtip32xx driver, fixing
         an OOM problem and a problem with handling security locked conditions
      
      * 'for-3.14/drivers' of git://git.kernel.dk/linux-block: (47 commits)
        mg_disk: Spelling s/finised/finished/
        null_blk: Null pointer deference problem in alloc_page_buffers
        mtip32xx: Correctly handle security locked condition
        mtip32xx: Make SGL container per-command to eliminate high order dma allocation
        drivers/block/loop.c: fix comment typo in loop_config_discard
        drivers/block/cciss.c:cciss_init_one(): use proper errnos
        drivers/block/paride/pg.c: underflow bug in pg_write()
        drivers/block/sx8.c: remove unnecessary pci_set_drvdata()
        drivers/block/sx8.c: use module_pci_driver()
        floppy: bail out in open() if drive is not responding to block0 read
        bcache: Fix auxiliary search trees for key size > cacheline size
        bcache: Don't return -EINTR when insert finished
        bcache: Improve bucket_prio() calculation
        bcache: Add bch_bkey_equal_header()
        bcache: update bch_bkey_try_merge
        bcache: Move insert_fixup() to btree_keys_ops
        bcache: Convert sorting to btree_keys
        bcache: Convert debug code to btree_keys
        bcache: Convert btree_iter to struct btree_keys
        bcache: Refactor bset_tree sysfs stats
        ...
      53d8ab29
    • Linus Torvalds's avatar
      Merge branch 'for-3.14/core' of git://git.kernel.dk/linux-block · f568849e
      Linus Torvalds authored
      Pull core block IO changes from Jens Axboe:
       "The major piece in here is the immutable bio_ve series from Kent, the
        rest is fairly minor.  It was supposed to go in last round, but
        various issues pushed it to this release instead.  The pull request
        contains:
      
         - Various smaller blk-mq fixes from different folks.  Nothing major
           here, just minor fixes and cleanups.
      
         - Fix for a memory leak in the error path in the block ioctl code
           from Christian Engelmayer.
      
         - Header export fix from CaiZhiyong.
      
         - Finally the immutable biovec changes from Kent Overstreet.  This
           enables some nice future work on making arbitrarily sized bios
           possible, and splitting more efficient.  Related fixes to immutable
           bio_vecs:
      
              - dm-cache immutable fixup from Mike Snitzer.
              - btrfs immutable fixup from Muthu Kumar.
      
        - bio-integrity fix from Nic Bellinger, which is also going to stable"
      
      * 'for-3.14/core' of git://git.kernel.dk/linux-block: (44 commits)
        xtensa: fixup simdisk driver to work with immutable bio_vecs
        block/blk-mq-cpu.c: use hotcpu_notifier()
        blk-mq: for_each_* macro correctness
        block: Fix memory leak in rw_copy_check_uvector() handling
        bio-integrity: Fix bio_integrity_verify segment start bug
        block: remove unrelated header files and export symbol
        blk-mq: uses page->list incorrectly
        blk-mq: use __smp_call_function_single directly
        btrfs: fix missing increment of bi_remaining
        Revert "block: Warn and free bio if bi_end_io is not set"
        block: Warn and free bio if bi_end_io is not set
        blk-mq: fix initializing request's start time
        block: blk-mq: don't export blk_mq_free_queue()
        block: blk-mq: make blk_sync_queue support mq
        block: blk-mq: support draining mq queue
        dm cache: increment bi_remaining when bi_end_io is restored
        block: fixup for generic bio chaining
        block: Really silence spurious compiler warnings
        block: Silence spurious compiler warnings
        block: Kill bio_pair_split()
        ...
      f568849e
    • Linus Torvalds's avatar
      Merge branch 'for-3.14' of git://linux-nfs.org/~bfields/linux · d9894c22
      Linus Torvalds authored
      Pull nfsd updates from Bruce Fields:
       - Handle some loose ends from the vfs read delegation support.
         (For example nfsd can stop breaking leases on its own in a
          fewer places where it can now depend on the vfs to.)
       - Make life a little easier for NFSv4-only configurations
         (thanks to Kinglong Mee).
       - Fix some gss-proxy problems (thanks Jeff Layton).
       - miscellaneous bug fixes and cleanup
      
      * 'for-3.14' of git://linux-nfs.org/~bfields/linux: (38 commits)
        nfsd: consider CLAIM_FH when handing out delegation
        nfsd4: fix delegation-unlink/rename race
        nfsd4: delay setting current_fh in open
        nfsd4: minor nfs4_setlease cleanup
        gss_krb5: use lcm from kernel lib
        nfsd4: decrease nfsd4_encode_fattr stack usage
        nfsd: fix encode_entryplus_baggage stack usage
        nfsd4: simplify xdr encoding of nfsv4 names
        nfsd4: encode_rdattr_error cleanup
        nfsd4: nfsd4_encode_fattr cleanup
        minor svcauth_gss.c cleanup
        nfsd4: better VERIFY comment
        nfsd4: break only delegations when appropriate
        NFSD: Fix a memory leak in nfsd4_create_session
        sunrpc: get rid of use_gssp_lock
        sunrpc: fix potential race between setting use_gss_proxy and the upcall rpc_clnt
        sunrpc: don't wait for write before allowing reads from use-gss-proxy file
        nfsd: get rid of unused function definition
        Define op_iattr for nfsd4_open instead using macro
        NFSD: fix compile warning without CONFIG_NFSD_V3
        ...
      d9894c22
    • Geert Uytterhoeven's avatar
      ipmi: Add missing rv in ipmi_parisc_probe() · dfa19426
      Geert Uytterhoeven authored
      Fix
      
        drivers/char/ipmi/ipmi_si_intf.c: In function 'ipmi_parisc_probe':
        drivers/char/ipmi/ipmi_si_intf.c:2752:2: error: 'rv' undeclared (first use in this function)
        drivers/char/ipmi/ipmi_si_intf.c:2752:2: note: each undeclared identifier is reported only once for each function it appears in
      
      Introduced by commit d02b3709
      
       ("ipmi: Cleanup error return")
      
      Signed-off-by: default avatarGeert Uytterhoeven <geert@linux-m68k.org>
      Acked-by: default avatarCorey Minyard <cminyard@mvista.com>
      Signed-off-by: default avatarLinus Torvalds <torvalds@linux-foundation.org>
      dfa19426
    • Christoph Hellwig's avatar
      nfs: fix xattr inode op pointers when disabled · 5f13ee9c
      Christoph Hellwig authored
      
      
      Chris Mason reported a NULL pointer derefernence in generic_getxattr()
      that was due to sb->s_xattr being NULL.
      
      The reason is that the nfs #ifdef's for ACL support were misplaced, and
      the nfs3 inode operations had the xattr operation pointers set up, even
      though xattrs were not actually supported.  As a result, the xattr code
      was being called without the infrastructure having been set up.
      
      Move the #ifdef's appropriately.
      
      Reported-and-tested-by: default avatarChris Mason <clm@fb.com>
      Acked-by: default avatarAl Viro <viro@zeniv.linux.org.uk>
      Signed-off-by: default avatarLinus Torvalds <torvalds@linux-foundation.org>
      5f13ee9c
    • David Woodhouse's avatar
      x86, build: Build 16-bit code with -m16 where possible · de3accda
      David Woodhouse authored
      
      
      Both clang 3.5 and GCC 4.9 will support this (as of r199754 and r207196
      respectively). Both have been tested to produce booting kernels when the
      16-bit code is built with -m16. (Modulo LLVM PR3997, at least.)
      
      [ hpa: folded test for -m16 into M16_CFLAGS ]
      
      Signed-off-by: default avatarDavid Woodhouse <David.Woodhouse@intel.com>
      Link: http://lkml.kernel.org/r/1390997807.20153.133.camel@i7.infradead.org
      
      
      Signed-off-by: default avatarH. Peter Anvin <hpa@linux.intel.com>
      de3accda
    • David Woodhouse's avatar
      x86, boot: Fix word-size assumptions in has_eflag() inline asm · 5fbbc25a
      David Woodhouse authored
      Commit dd78b973
      
       ("x86, boot: Move CPU
      flags out of cpucheck") introduced ambiguous inline asm in the
      has_eflag() function. In 16-bit mode want the instruction to be
      'pushfl', but we just say 'pushf' and hope the compiler does what we
      wanted.
      
      When building with 'clang -m16', it won't, because clang doesn't use
      the horrid '.code16gcc' hack that even 'gcc -m16' uses internally.
      
      Say what we mean and don't make the compiler make assumptions.
      
      [ hpa: ideally we would be able to use the gcc %zN construct here, but
        that is broken for 64-bit integers in gcc < 4.5.
      
        The code with plain "pushf/popf" is fine for 32- or 64-bit mode, but
        not for 16-bit mode; in 16-bit mode those are 16-bit instructions in
        .code16 mode, and 32-bit instructions in .code16gcc mode. ]
      
      Signed-off-by: default avatarDavid Woodhouse <David.Woodhouse@intel.com>
      Link: http://lkml.kernel.org/r/1391079628.26079.82.camel@shinybook.infradead.org
      
      
      Signed-off-by: default avatarH. Peter Anvin <hpa@linux.intel.com>
      5fbbc25a
  2. Jan 30, 2014
    • Linus Torvalds's avatar
      Merge branch 'drm-next' of git://people.freedesktop.org/~airlied/linux · 9b0cd304
      Linus Torvalds authored
      Pull drm updates from Dave Airlie:
       "Been a bit busy, first week of kids school, and waiting on other trees
        to go in before I could send this, so its a bit later than I'd
        normally like.
      
        Highlights:
         - core:
            timestamp fixes, lots of misc cleanups
         - new drivers:
            bochs virtual vga
         - vmwgfx:
            major overhaul for their nextgen virt gpu.
         - i915:
            runtime D3 on HSW, watermark fixes, power well work, fbc fixes,
            bdw is no longer prelim.
         - nouveau:
            gk110/208 acceleration, more pm groundwork, old overlay support
         - radeon:
            dpm rework and clockgating for CIK, pci config reset, big endian
            fixes
         - tegra:
            panel support and DSI support, build as module, prime.
         - armada, omap, gma500, rcar, exynos, mgag200, cirrus, ast:
            fixes
         - msm:
            hdmi support for mdp5"
      
      * 'drm-next' of git://people.freedesktop.org/~airlied/linux: (595 commits)
        drm/nouveau: resume display if any later suspend bits fail
        drm/nouveau: fix lock unbalance in nouveau_crtc_page_flip
        drm/nouveau: implement hooks for needed for drm vblank timestamping support
        drm/nouveau/disp: add a method to fetch info needed by drm vblank timestamping
        drm/nv50: fill in crtc mode struct members from crtc_mode_fixup
        drm/radeon/dce8: workaround for atom BlankCrtc table
        drm/radeon/DCE4+: clear bios scratch dpms bit (v2)
        drm/radeon: set si_notify_smc_display_change properly
        drm/radeon: fix DAC interrupt handling on DCE5+
        drm/radeon: clean up active vram sizing
        drm/radeon: skip async dma init on r6xx
        drm/radeon/runpm: don't runtime suspend non-PX cards
        drm/radeon: add ring to fence trace functions
        drm/radeon: add missing trace point
        drm/radeon: fix VMID use tracking
        drm: ast,cirrus,mgag200: use drm_can_sleep
        drm/gma500: Lock struct_mutex around cursor updates
        drm/i915: Fix the offset issue for the stolen GEM objects
        DRM: armada: fix missing DRM_KMS_FB_HELPER select
        drm/i915: Decouple GPU error reporting from ring initialisation
        ...
      9b0cd304
    • Linus Torvalds's avatar
      Merge branch 'for-linus' of git://git.infradead.org/users/vkoul/slave-dma · ca2a650f
      Linus Torvalds authored
      Pull slave-dma updates from Vinod Koul:
       - new driver for BCM2835 used in R-pi
       - new driver for MOXA ART
       - dma_get_any_slave_channel API for DT based systems
       - minor fixes and updates spread acrooss driver
      
      [ The fsl-ssi dual fifo mode support addition clashed badly with the
        other changes to fsl-ssi that came in through the sound merge.  I did
        a very rough cut at fixing up the conflict, but Nicolin Chen (author
        of both sides) will need to verify and check things ]
      
      * 'for-linus' of git://git.infradead.org/users/vkoul/slave-dma: (36 commits)
        dmaengine: mmp_pdma: fix mismerge
        dma: pl08x: Export pl08x_filter_id
        acpi-dma: align documentation with kernel-doc format
        dma: fix vchan_cookie_complete() debug print
        DMA: dmatest: extend the "device" module parameter to 32 characters
        drivers/dma: fix error return code
        dma: omap: Set debug level to debugging messages
        dmaengine: fix kernel-doc style typos for few comments
        dma: tegra: add support for Tegra148/124
        dma: dw: use %pad instead of casting dma_addr_t
        dma: dw: join split up messages
        dma: dw: fix style of multiline comment
        dmaengine: k3dma: fix sparse warnings
        dma: pl330: Use dma_get_slave_channel() in the of xlate callback
        dma: pl330: Differentiate between submitted and issued descriptors
        dmaengine: sirf: Add device_slave_caps interface
        DMA: Freescale: change BWC from 256 bytes to 1024 bytes
        dmaengine: Add MOXA ART DMA engine driver
        dmaengine: Add DMA_PRIVATE to BCM2835 driver
        dma: imx-sdma: Assign a default script number for ROM firmware cases
        ...
      ca2a650f
    • Linus Torvalds's avatar
      Merge tag 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/olof/chrome-platform · e9e352e9
      Linus Torvalds authored
      Pull chrome platform cleanups and improvements from Olof Johansson:
       - Use deferred probing on Chrome OS platforms for the i2c device
         registration.  This fixes a long-standing race of initialization of
         touchpad/screen on Chromebooks.
       - Added in platform device registration for pstore console on supported
         hardware
       - Misc smaller fixes (__initdata, module exit cleanup, etc)
      
      * tag 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/olof/chrome-platform:
        platform/chrome: unregister platform driver/device when module exit
        platform/chrome: Make i2c_adapter_names static
        platform/chrome: chromeos_laptop - fix incorrect placement of __initdata tag
        platform/chrome: chromeos_laptop - Use deferred probing
        platform/chrome: chromeos_laptop - Restructure device associations
        platform/chrome: Add pstore platform_device
      e9e352e9
    • Linus Torvalds's avatar
      Merge tag 'iommu-updates-v3.14' of git://git.kernel.org/pub/scm/linux/kernel/git/joro/iommu · b3a4bcaa
      Linus Torvalds authored
      Pull IOMMU Updates from Joerg Roedel:
       "A few patches have been queued up for this merge window:
      
         - improvements for the ARM-SMMU driver (IOMMU_EXEC support, IOMMU
           group support)
         - updates and fixes for the shmobile IOMMU driver
         - various fixes to generic IOMMU code and the Intel IOMMU driver
         - some cleanups in IOMMU drivers (dev_is_pci() usage)"
      
      * tag 'iommu-updates-v3.14' of git://git.kernel.org/pub/scm/linux/kernel/git/joro/iommu: (36 commits)
        iommu/vt-d: Fix signedness bug in alloc_irte()
        iommu/vt-d: free all resources if failed to initialize DMARs
        iommu/vt-d, trivial: clean sparse warnings
        iommu/vt-d: fix wrong return value of dmar_table_init()
        iommu/vt-d: release invalidation queue when destroying IOMMU unit
        iommu/vt-d: fix access after free issue in function free_dmar_iommu()
        iommu/vt-d: keep shared resources when failed to initialize iommu devices
        iommu/vt-d: fix invalid memory access when freeing DMAR irq
        iommu/vt-d, trivial: simplify code with existing macros
        iommu/vt-d, trivial: use defined macro instead of hardcoding
        iommu/vt-d: mark internal functions as static
        iommu/vt-d, trivial: clean up unused code
        iommu/vt-d, trivial: check suitable flag in function detect_intel_iommu()
        iommu/vt-d, trivial: print correct domain id of static identity domain
        iommu/vt-d, trivial: refine support of 64bit guest address
        iommu/vt-d: fix resource leakage on error recovery path in iommu_init_domains()
        iommu/vt-d: fix a race window in allocating domain ID for virtual machines
        iommu/vt-d: fix PCI device reference leakage on error recovery path
        drm/msm: Fix link error with !MSM_IOMMU
        iommu/vt-d: use dedicated bitmap to track remapping entry allocation status
        ...
      b3a4bcaa
    • Linus Torvalds's avatar
      Merge git://www.linux-watchdog.org/linux-watchdog · 17c7f854
      Linus Torvalds authored
      Pull watchdog updates from Wim Van Sebroeck:
       - new driver for bcm281xx watchdog device
       - new driver for gpio based watchdog devices
       - remove DEFINE_PCI_DEVICE_TABLE macro for watchdog device drivers
       - conversion of davinci_wdt and mpc8xxx_wdt to watchdog core
       - improvements on davinci_wdt, at91/dt, at91sam9_wdt and s3c2410_wdt
       - Auto-detect IO address and expand supported chips on w836* super-I/O
         chipsets
       - core: Make dt "timeout-sec" property work on drivers w/out min/max
       - fix Kconfig dependencies
       - sirf: Remove redundant of_match_ptr helper
       - mach-moxart: add restart handler
       - hpwdt patch to display better panic information
       - imx2_wdt: disable watchdog timer during low power mode
      
      * git://www.linux-watchdog.org/linux-watchdog: (31 commits)
        watchdog: w83627hf_wdt: Reset watchdog trigger during initialization
        watchdog: w83627hf: Add support for W83697HF and W83697UG
        watchdog: w83627hf: Auto-detect IO address and supported chips
        watchdog: at91sam9_wdt: increase security margin on watchdog counter reset
        watchdog: at91sam9_wdt: avoid spurious watchdog reset during init
        watchdog: at91sam9_wdt: fix secs_to_ticks
        ARM: at91/dt: add watchdog properties to kizbox board
        ARM: at91/dt: add sam9 watchdog default options to SoCs
        watchdog: at91sam9_wdt: update device tree doc
        watchdog: at91sam9_wdt: better watchdog support
        watchdog: sp805_wdt depends also on ARM64
        watchdog: mach-moxart: add restart handler
        watchdog: mpc8xxx_wdt convert to watchdog core
        watchdog: sirf: Remove redundant of_match_ptr helper
        watchdog: hpwdt patch to display informative string
        watchdog: dw_wdt: remove build dependencies
        watchdog: imx2_wdt: disable watchdog timer during low power mode
        watchdog: s3c2410_wdt: Report when the watchdog reset the system
        watchdog: s3c2410_wdt: use syscon regmap interface to configure pmu register
        watchdog: s3c2410_wdt: Handle rounding a little better for timeout
        ...
      17c7f854
    • Linus Torvalds's avatar
      Merge branch 'i2c/for-current' of git://git.kernel.org/pub/scm/linux/kernel/git/wsa/linux · f7a6ad9f
      Linus Torvalds authored
      Pull more i2c updates from Wolfram Sang:
       "Mostly bugfixes, small but wanted cleanups, and Paul's init.h removal
        applied"
      
      * 'i2c/for-current' of git://git.kernel.org/pub/scm/linux/kernel/git/wsa/linux:
        i2c: rcar: fix NACK error code
        i2c: update i2c_algorithm documentation
        i2c: rcar: use devm_clk_get to ensure clock is properly ref-counted
        i2c: rcar: do not print error if device nacks transfer
        i2c: rely on driver core when sanitizing devices
        i2c: delete non-required instances of include <linux/init.h>
        i2c: acorn: is tristate and should use module.h
        i2c: piix4: Standardize log messages
        i2c: piix4: Use different message for AMD Auxiliary SMBus Controller
        i2c: piix4: Add support for AMD ML and CZ SMBus changes
      f7a6ad9f
    • Linus Torvalds's avatar
      Merge branch 'hwmon-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jdelvare/staging · 9076e0ca
      Linus Torvalds authored
      Pull hwmon updates from Jean Delvare:
       "This include it87 driver improvements, and a tree-wide change of my
        e-mail address"
      
      * 'hwmon-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jdelvare/staging:
        Update Jean Delvare's e-mail address
        hwmon: (it87) Print proper names for the IT8771E and IT8772E
        hwmon: (it87) Add support for the ITE IT8603E
      9076e0ca
    • Linus Torvalds's avatar
      Merge branch 'for_linus' of git://cavan.codon.org.uk/platform-drivers-x86 · b7a8399e
      Linus Torvalds authored
      Pull x86 platform drivers update from Matthew Garrett:
       "Nothing amazingly special here.  Some cleanups, a new driver to
        support a single button on some new HPs, a tiny amount of hardware
        enablement"
      
      * 'for_linus' of git://cavan.codon.org.uk/platform-drivers-x86:
        ipc: add intel-mid's pci id macros
        hp-wireless: new driver for hp wireless button for Windows 8
        toshiba_acpi: Support RFKILL hotkey scancode
        hp_accel: Add a new PnP ID HPQ6007 for new HP laptops
        sony-laptop: remove unnecessary assigment of len
        fujitsu-laptop: fix error return code
        dell-laptop: Only install the i8042 filter when rfkill is active
        X86 platform: New BayTrail IOSF-SB MBI driver
        drivers: platform: Include appropriate header file in mxm-wmi.c
        drivers: platform: Mark functions as static in hp_accel.c
        dell-laptop: rkill whitelist Precision models
        ipc: simplify platform data approach
        asus-wmi: Convert to use devm_hwmon_device_register_with_groups
        compal-laptop: Use devm_hwmon_device_register_with_groups
        compal-laptop: Replace SENSOR_DEVICE_ATTR with DEVICE_ATTR
        eeepc-laptop: Convert to use devm_hwmon_device_register_with_groups
        compal-laptop: Use devm_kzalloc to allocate local data structure
        dell-laptop: fix to return error code in dell_send_intensity()
      b7a8399e
    • Linus Torvalds's avatar
      Merge tag 'blackfin-for-linus' of... · 30c867ee
      Linus Torvalds authored
      Merge tag 'blackfin-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/realmz6/blackfin-linux
      
      Pull blackfin updates from Steven Miao:
       "Some minor changes and bug fixes"
      
      * tag 'blackfin-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/realmz6/blackfin-linux:
        From: Eunbong Song <eunb.song@samsung.com>
        Add platfrom device resource for bfin-sport on bf533 stamp
        fix build error for bf527-ezkit_defconfig for old silicon
        blackfin: Support L1 SRAM parity checking feature on bf60x
        blackfin: bf609: update the anomaly list to Nov 2013
        blackfin: delete non-required instances of <linux/init.h>
        From: Paul Walmsley <pwalmsley@nvidia.com>
        06/18] smp, blackfin: kill SMP single function call interrupt
        arch: blackfin: uapi: be sure of "_UAPI" prefix for all guard macros
      30c867ee
    • Linus Torvalds's avatar
      Merge branch 'x86-intel-mid-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip · cac9283c
      Linus Torvalds authored
      Pull intel MID cleanups from Peter Anvin:
       "Miscellaneous cleanups to the intel-mid code merged earlier in this
        merge window"
      
      * 'x86-intel-mid-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
        x86, intel-mid: Cleanup some platform code's header files
        x86, intel-mid: Add missing 'void' to functions without arguments
        x86: Don't add new __cpuinit users to Merrifield platform code
        x86: Don't introduce more __cpuinit users in intel_mid_weak_decls.h
      cac9283c
    • Linus Torvalds's avatar
      Merge branch 'x86-x32-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip · cca21640
      Linus Torvalds authored
      Pull more x32 uabi type fixes from Peter Anvin:
       "Despite the branch name, **most of these changes are to generic
        code**.  They change types so that they make an increasing amount of
        the exported uapi kernel headers usable for libc.
      
        The ARM64 people are also interested in these changes for their ILP32
        ABI"
      
      * 'x86-x32-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
        uapi: Use __kernel_long_t in struct mq_attr
        uapi: Use __kernel_ulong_t in shmid64_ds/shminfo64/shm_info
        x86, uapi, x32: Use __kernel_ulong_t in x86 struct semid64_ds
        uapi: Use __kernel_ulong_t in struct msqid64_ds
        uapi: Use __kernel_long_t in struct msgbuf
        uapi, asm-generic: Use __kernel_ulong_t in uapi struct ipc64_perm
        uapi: Use __kernel_long_t/__kernel_ulong_t in <linux/resource.h>
        uapi: Use __kernel_long_t in struct timex
      cca21640
    • Linus Torvalds's avatar
      Merge branch 'for-linus' of git://ftp.arm.linux.org.uk/~rmk/linux-arm · e914e3f4
      Linus Torvalds authored
      Pull more ARM updates from Russell King:
       "Some further changes for this merge window:
         - fix bug building with gcc 4.6.4 and EABI.
         - fix pgtbl macro with some LPAE configurations
         - fix initrd override - FDT was overriding the command line, and it
           should be the other way around.
         - fix byteswap of instructions in undefined instruction handler
         - add basic support for SolidRun Hummingboard and Cubox-i boards"
      
      * 'for-linus' of git://ftp.arm.linux.org.uk/~rmk/linux-arm:
        ARM: fix building with gcc 4.6.4
        ARM: 7941/2: Fix incorrect FDT initrd parameter override
        ARM: 7947/1: Make pgtbl macro more robust
        ARM: 7946/1: asm: __und_usr_thumb need byteswap instructions in BE case
        ARM: 7930/1: Introduce atomic MMIO modify
        ARM: imx: initial SolidRun Cubox-i support
        ARM: imx: initial SolidRun HummingBoard support
      e914e3f4
    • Linus Torvalds's avatar
      Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net · 1d494f36
      Linus Torvalds authored
      Pull networking fixes from David Miller:
       "Several fixups, of note:
      
        1) Fix unlock of not held spinlock in RXRPC code, from Alexey
           Khoroshilov.
      
        2) Call pci_disable_device() from the correct shutdown path in bnx2x
           driver, from Yuval Mintz.
      
        3) Fix qeth build on s390 for some configurations, from Eugene
           Crosser.
      
        4) Cure locking bugs in bond_loadbalance_arp_mon(), from Ding
           Tianhong.
      
        5) Must do netif_napi_add() before registering netdevice in sky2
           driver, from Stanislaw Gruszka.
      
        6) Fix lost bug fix during merge due to code movement in ieee802154,
           noticed and fixed by the eagle eyed Stephen Rothwell.
      
        7) Get rid of resource leak in xen-netfront driver, from Annie Li.
      
        8) Bounds checks in qlcnic driver are off by one, from Manish Chopra.
      
        9) TPROXY can leak sockets when TCP early demux is enabled, fix from
           Holger Eitzenberger"
      
      * git://git.kernel.org/pub/scm/linux/kernel/git/davem/net: (32 commits)
        qeth: fix build of s390 allmodconfig
        bonding: fix locking in bond_loadbalance_arp_mon()
        tun: add device name(iff) field to proc fdinfo entry
        DT: net: davinci_emac: "ti, davinci-no-bd-ram" property is actually optional
        DT: net: davinci_emac: "ti, davinci-rmii-en" property is actually optional
        bnx2x: Fix generic option settings
        net: Fix warning on make htmldocs caused by skbuff.c
        llc: remove noisy WARN from llc_mac_hdr_init
        qlcnic: Fix loopback test failure
        qlcnic: Fix tx timeout.
        qlcnic: Fix initialization of vlan list.
        qlcnic: Correct off-by-one errors in bounds checks
        net: Document promote_secondaries
        net: gre: use icmp_hdr() to get inner ip header
        i40e: Add missing braces to i40e_dcb_need_reconfig()
        xen-netfront: fix resource leak in netfront
        net: 6lowpan: fixup for code movement
        hyperv: Add support for physically discontinuous receive buffer
        sky2: initialize napi before registering device
        net: Fix memory leak if TPROXY used with TCP early demux
        ...
      1d494f36
    • Linus Torvalds's avatar
      Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/sparc · 19ba20f4
      Linus Torvalds authored
      Pull sparc update from David Miller:
       "Two cleanups from Paul Gortmaker and hook up the new scheduler system
        calls"
      
      * git://git.kernel.org/pub/scm/linux/kernel/git/davem/sparc:
        sparc: Hook up sched_setattr and sched_getattr syscalls.
        sparc: don't use module_init in non-modular pci.c code
        sparc: delete non-required instances of include <linux/init.h>
      19ba20f4
    • Linus Torvalds's avatar
      Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/ide · 3308ee8f
      Linus Torvalds authored
      Pull IDE fixes from David Miller:
       "Two header file inclusion fixes from Rashika Kheria"
      
      * git://git.kernel.org/pub/scm/linux/kernel/git/davem/ide:
        drivers: ide: Include appropriate header file in ide-pio-blacklist.c
        drivers: ide: Include appropriate header file in ide-cd_verbose.c
      3308ee8f
    • Dave Airlie's avatar
      Merge branch 'drm-nouveau-next' of... · ef64cf9d
      Dave Airlie authored
      Merge branch 'drm-nouveau-next' of git://anongit.freedesktop.org/git/nouveau/linux-2.6 into drm-next
      
      more fixes for nouveau.
      
      * 'drm-nouveau-next' of git://anongit.freedesktop.org/git/nouveau/linux-2.6:
        drm/nouveau: resume display if any later suspend bits fail
        drm/nouveau: fix lock unbalance in nouveau_crtc_page_flip
        drm/nouveau: implement hooks for needed for drm vblank timestamping support
        drm/nouveau/disp: add a method to fetch info needed by drm vblank timestamping
        drm/nv50: fill in crtc mode struct members from crtc_mode_fixup
      ef64cf9d
    • Dave Airlie's avatar
      Merge branch 'drm-next-3.14' of git://people.freedesktop.org/~agd5f/linux into drm-next · 279b9e0c
      Dave Airlie authored
      more radeon fixes
      
      * 'drm-next-3.14' of git://people.freedesktop.org/~agd5f/linux:
        drm/radeon/dce8: workaround for atom BlankCrtc table
        drm/radeon/DCE4+: clear bios scratch dpms bit (v2)
        drm/radeon: set si_notify_smc_display_change properly
        drm/radeon: fix DAC interrupt handling on DCE5+
        drm/radeon: clean up active vram sizing
        drm/radeon: skip async dma init on r6xx
        drm/radeon/runpm: don't runtime suspend non-PX cards
        drm/radeon: add ring to fence trace functions
        drm/radeon: add missing trace point
        drm/radeon: fix VMID use tracking
      279b9e0c
    • Linus Torvalds's avatar
      Merge branch 'akpm' (patches from Andrew Morton) · 13293115
      Linus Torvalds authored
      Merge random fixes from Andrew Morton:
       "Random fixes.
      
        I have one batch remaining for -rc1, mainly zram changes which await a
        merge of Jens's trees"
      
      * emailed patches fron Andrew Morton akpm@linux-foundation.org>:
        MAINTAINERS: ADI Linux development mailing lists: change to the new server
        Documentation: fix multiple typo occurences s/KenelVersion/KernelVersion/
        dma-debug: fix overlap detection
        memblock: add limit checking to memblock_virt_alloc
        mm/readahead.c: fix do_readahead() for no readpage(s)
        mm/slub.c: do not VM_BUG_ON_PAGE() for temporary on-stack pages
        slab: fix wrong retval on kmem_cache_create_memcg error path
        s390/compat: change parameter types from unsigned long to compat_ulong_t
        fs/compat: fix lookup_dcookie() parameter handling
        fs/compat: fix parameter handling for compat readv/writev syscalls
        mm/mempolicy.c: convert to pr_foo()
        mm: numa: initialise numa balancing after jump label initialisation
        mm/page-writeback.c: do not count anon pages as dirtyable memory
        mm/page-writeback.c: fix dirty_balance_reserve subtraction from dirtyable memory
        mm: document improved handling of swappiness==0
        lib/genalloc.c: add check gen_pool_dma_alloc() if dma pointer is not NULL
      13293115
    • Sonic Zhang's avatar
      MAINTAINERS: ADI Linux development mailing lists: change to the new server · a4edbc10
      Sonic Zhang authored
      
      
      Update Blackfin arch maintainer's email as well.
      
      Signed-off-by: default avatarSonic Zhang <sonic.zhang@analog.com>
      Cc: Michael Hennerich <michael.hennerich@analog.com>
      Cc: Lars-Peter Clausen <lars@metafoo.de>
      Cc: Mike Frysinger <vapier@gentoo.org>
      Cc: Steven Miao <realmz6@gmail.com>
      Signed-off-by: default avatarAndrew Morton <akpm@linux-foundation.org>
      Signed-off-by: default avatarLinus Torvalds <torvalds@linux-foundation.org>
      a4edbc10
    • Ard Biesheuvel's avatar
    • Dan Williams's avatar
      dma-debug: fix overlap detection · 59f2e7df
      Dan Williams authored
      Commit 0abdd7a8 ("dma-debug: introduce debug_dma_assert_idle()") was
      reworked to expand the overlap counter to the full range expressable by
      3 tag bits, but it has a thinko in treating the overlap counter as a
      pure reference count for the entry.
      
      Instead of deleting when the reference-count drops to zero, we need to
      delete when the overlap-count drops below zero.  Also, when detecting
      overflow we can just test the overlap-count > MAX rather than applying
      special meaning to 0.
      
      Regression report available here:
      http://marc.info/?l=linux-netdev&m=139073373932386&w=2
      
      
      
      This patch, now tested on the original net_dma case, sees the expected
      handful of reports before the eventual data corruption occurs.
      
      Signed-off-by: default avatarDan Williams <dan.j.williams@intel.com>
      Reported-by: default avatarSander Eikelenboom <linux@eikelenboom.it>
      Cc: Francois Romieu <romieu@fr.zoreil.com>
      Signed-off-by: default avatarAndrew Morton <akpm@linux-foundation.org>
      Signed-off-by: default avatarLinus Torvalds <torvalds@linux-foundation.org>
      59f2e7df
    • Yinghai Lu's avatar
      memblock: add limit checking to memblock_virt_alloc · f544e14f
      Yinghai Lu authored
      
      
      In original bootmem wrapper for memblock, we have limit checking.
      
      Add it to memblock_virt_alloc, to address arm and x86 booting crash.
      
      Signed-off-by: default avatarYinghai Lu <yinghai@kernel.org>
      Cc: Ingo Molnar <mingo@elte.hu>
      Cc: "H. Peter Anvin" <hpa@zytor.com>
      Reported-by: default avatarKevin Hilman <khilman@linaro.org>
      Tested-by: default avatarKevin Hilman <khilman@linaro.org>
      Reported-by: default avatarOlof Johansson <olof@lixom.net>
      Tested-by: default avatarOlof Johansson <olof@lixom.net>
      Reported-by: default avatarKonrad Rzeszutek Wilk <konrad.wilk@oracle.com>
      Tested-by: default avatarKonrad Rzeszutek Wilk <konrad.wilk@oracle.com>
      Cc: Dave Hansen <dave.hansen@intel.com>
      Cc: Santosh Shilimkar <santosh.shilimkar@ti.com>
      Cc: "Strashko, Grygorii" <grygorii.strashko@ti.com>
      Signed-off-by: default avatarAndrew Morton <akpm@linux-foundation.org>
      Signed-off-by: default avatarLinus Torvalds <torvalds@linux-foundation.org>
      f544e14f
    • Mark Rutland's avatar
      mm/readahead.c: fix do_readahead() for no readpage(s) · 58d5640e
      Mark Rutland authored
      Commit 63d0f0a3
      
       ("mm/readahead.c:do_readhead(): don't check for
      ->readpage") unintentionally made do_readahead return 0 for all valid
      files regardless of whether readahead was supported, rather than the
      expected -EINVAL.  This gets forwarded on to userspace, and results in
      sys_readahead appearing to succeed in cases that don't make sense (e.g.
      when called on pipes or sockets).  This issue is detected by the LTP
      readahead01 testcase.
      
      As the exact return value of force_page_cache_readahead is currently
      never used, we can simplify it to return only 0 or -EINVAL (when
      readpage or readpages is missing).  With that in place we can simply
      forward on the return value of force_page_cache_readahead in
      do_readahead.
      
      This patch performs said change, restoring the expected semantics.
      
      Signed-off-by: default avatarMark Rutland <mark.rutland@arm.com>
      Acked-by: default avatarKirill A. Shutemov <kirill.shutemov@linux.intel.com>
      Signed-off-by: default avatarAndrew Morton <akpm@linux-foundation.org>
      Signed-off-by: default avatarLinus Torvalds <torvalds@linux-foundation.org>
      58d5640e
    • Dave Hansen's avatar
      mm/slub.c: do not VM_BUG_ON_PAGE() for temporary on-stack pages · a0132ac0
      Dave Hansen authored
      Commit 309381fe
      
       ("mm: dump page when hitting a VM_BUG_ON using
      VM_BUG_ON_PAGE") added a bunch of VM_BUG_ON_PAGE() calls.
      
      But, most of the ones in the slub code are for _temporary_ 'struct
      page's which are declared on the stack and likely have lots of gunk in
      them.  Dumping their contents out will just confuse folks looking at
      bad_page() output.  Plus, if we try to page_to_pfn() on them or
      soemthing, we'll probably oops anyway.
      
      Turn them back in to VM_BUG_ON()s.
      
      Signed-off-by: default avatarDave Hansen <dave.hansen@linux.intel.com>
      Cc: Sasha Levin <sasha.levin@oracle.com>
      Cc: "Kirill A. Shutemov" <kirill@shutemov.name>
      Cc: Pekka Enberg <penberg@kernel.org>
      Signed-off-by: default avatarAndrew Morton <akpm@linux-foundation.org>
      Signed-off-by: default avatarLinus Torvalds <torvalds@linux-foundation.org>
      a0132ac0
    • Dave Jones's avatar
      slab: fix wrong retval on kmem_cache_create_memcg error path · ba3253c7
      Dave Jones authored
      On kmem_cache_create_memcg() error path we set 'err', but leave 's' (the
      new cache ptr) undefined.  The latter can be NULL if we could not
      allocate the cache, or pointing to a freed area if we failed somewhere
      later while trying to initialize it.  Initially we checked 'err'
      immediately before exiting the function and returned NULL if it was set
      ignoring the value of 's':
      
          out_unlock:
              ...
              if (err) {
                  /* report error */
                  return NULL;
              }
              return s;
      
      Recently this check was, in fact, broken by commit f717eb3a ("slab:
      do not panic if we fail to create memcg cache"), which turned it to:
      
          out_unlock:
              ...
              if (err && !memcg) {
                  /* report error */
                  return NULL;
              }
              return s;
      
      As a result, if we are failing creating a cache for a memcg, we will
      skip the check and return 's' that can contain crap.  Obviously, commit
      f717eb3a
      
       intended not to return crap on error allocating a cache for
      a memcg, but only to remove the error reporting in this case, so the
      check should look like this:
      
          out_unlock:
              ...
              if (err) {
                  if (!memcg)
                      return NULL;
                  /* report error */
                  return NULL;
              }
              return s;
      
      [rientjes@google.com: despaghettification]
      [vdavydov@parallels.com: patch monkeying]
      Signed-off-by: default avatarDavid Rientjes <rientjes@google.com>
      Signed-off-by: default avatarVladimir Davydov <vdavydov@parallels.com>
      Signed-off-by: default avatarDave Jones <davej@redhat.com>
      Reported-by: default avatarDave Jones <davej@redhat.com>
      Acked-by: default avatarPekka Enberg <penberg@kernel.org>
      Cc: Christoph Lameter <cl@linux.com>
      Signed-off-by: default avatarAndrew Morton <akpm@linux-foundation.org>
      Signed-off-by: default avatarLinus Torvalds <torvalds@linux-foundation.org>
      ba3253c7
    • Heiko Carstens's avatar
      s390/compat: change parameter types from unsigned long to compat_ulong_t · 49382d93
      Heiko Carstens authored
      Change parameter types of s390's compat ipc syscall from unsigned long
      to compat_ulong_t to enforce zero extension of these parameters.
      
      This is not really a bug, since s390_ipc compat syscall is only a
      wrapper to the generic compat_sys_ipc() syscall, which performs correct
      zero and sign extension.
      
      This was introduced with commit 56e41d3c
      
       ("merge compat sys_ipc
      instances").
      
      Signed-off-by: default avatarHeiko Carstens <heiko.carstens@de.ibm.com>
      Cc: Al Viro <viro@zeniv.linux.org.uk>
      Cc: Ingo Molnar <mingo@kernel.org>
      Cc: "H. Peter Anvin" <hpa@zytor.com>
      Cc: Hendrik Brueckner <brueckner@linux.vnet.ibm.com>
      Cc: Martin Schwidefsky <schwidefsky@de.ibm.com>
      Signed-off-by: default avatarAndrew Morton <akpm@linux-foundation.org>
      Signed-off-by: default avatarLinus Torvalds <torvalds@linux-foundation.org>
      49382d93