1. 16 Nov, 2013 7 commits
  2. 15 Nov, 2013 33 commits
    • Linus Torvalds's avatar
      Merge branch 'drm-next' of git://people.freedesktop.org/~airlied/linux · 049ffa8a
      Linus Torvalds authored
      Pull drm updates from Dave Airlie:
       "This is a combo of -next and some -fixes that came in in the
        intervening time.
      
        Highlights:
      
        New drivers:
          ARM Armada driver for Marvell Armada 510 SOCs
      
        Intel:
          Broadwell initial support under a default off switch,
          Stereo/3D HDMI mode support
          Valleyview improvements
          Displayport improvements
          Haswell fixes
          initial mipi dsi panel support
          CRC support for debugging
          build with CONFIG_FB=n
      
        Radeon:
          enable DPM on a number of GPUs by default
          secondary GPU powerdown support
          enable HDMI audio by default
          Hawaii support
      
        Nouveau:
          dynamic pm code infrastructure reworked, does nothing major yet
          GK208 modesetting support
          MSI fixes, on by default again
          PMPEG improvements
          pageflipping fixes
      
        GMA500:
          minnowboard SDVO support
      
        VMware:
          misc fixes
      
        MSM:
          prime, plane and rendernodes support
      
        Tegra:
          rearchitected to put the drm driver into the drm subsystem.
          HDMI and gr2d support for tegra 114 SoC
      
        QXL:
          oops fix, and multi-head fixes
      
        DRM core:
          sysfs lifetime fixes
          client capability ioctl
          further cleanups to device midlayer
          more vblank timestamp fixes"
      
      * 'drm-next' of git://people.freedesktop.org/~airlied/linux: (789 commits)
        drm/nouveau: do not map evicted vram buffers in nouveau_bo_vma_add
        drm/nvc0-/gr: shift wrapping bug in nvc0_grctx_generate_r406800
        drm/nouveau/pwr: fix missing mutex unlock in a failure path
        drm/nv40/therm: fix slowing down fan when pstate undefined
        drm/nv11-: synchronise flips to vblank, unless async flip requested
        drm/nvc0-: remove nasty fifo swmthd hack for flip completion method
        drm/nv10-: we no longer need to create nvsw object on user channels
        drm/nouveau: always queue flips relative to kernel channel activity
        drm/nouveau: there is no need to reserve/fence the new fb when flipping
        drm/nouveau: when bailing out of a pushbuf ioctl, do not remove previous fence
        drm/nouveau: allow nouveau_fence_ref() to be a noop
        drm/nvc8/mc: msi rearm is via the nvc0 method
        drm/ttm: Fix vma page_prot bit manipulation
        drm/vmwgfx: Fix a couple of compile / sparse warnings and errors
        drm/vmwgfx: Resource evict fixes
        drm/edid: compare actual vrefresh for all modes for quirks
        drm: shmob_drm: Convert to clk_prepare/unprepare
        drm/nouveau: fix 32-bit build
        drm/i915/opregion: fix build error on CONFIG_ACPI=n
        Revert "drm/radeon/audio: don't set speaker allocation on DCE4+"
        ...
      049ffa8a
    • Linus Torvalds's avatar
      Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/ide · c681427e
      Linus Torvalds authored
      Pull IDE updates from David Miller:
       "Just some minor cleanups and simplifications"
      
      * git://git.kernel.org/pub/scm/linux/kernel/git/davem/ide:
        ide: pmac: remove unnecessary pci_set_drvdata()
        ide: cs5536: use module_pci_driver()
        ide: pmac: Remove casting the return value which is a void pointer
      c681427e
    • Linus Torvalds's avatar
      Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/sparc-next · 1b272275
      Linus Torvalds authored
      Pull sparc update from David Miller:
      
       1) Implement support for up to 47-bit physical addresses on sparc64.
      
       2) Support HAVE_CONTEXT_TRACKING on sparc64, from Kirill Tkhai.
      
       3) Fix Simba bridge window calculations, from Kjetil Oftedal.
      
      * git://git.kernel.org/pub/scm/linux/kernel/git/davem/sparc-next:
        sparc64: Implement HAVE_CONTEXT_TRACKING
        sparc64: Add self-IPI support for smp_send_reschedule()
        sparc: PCI: Fix incorrect address calculation of PCI Bridge windows on Simba-bridges
        sparc64: Encode huge PMDs using PTE encoding.
        sparc64: Move to 64-bit PGDs and PMDs.
        sparc64: Move from 4MB to 8MB huge pages.
        sparc64: Make PAGE_OFFSET variable.
        sparc64: Fix inconsistent max-physical-address defines.
        sparc64: Document the shift counts used to validate linear kernel addresses.
        sparc64: Define PAGE_OFFSET in terms of physical address bits.
        sparc64: Use PAGE_OFFSET instead of a magic constant.
        sparc64: Clean up 64-bit mmap exclusion defines.
      1b272275
    • Linus Torvalds's avatar
      Merge tag 'iommu-updates-v3.13' of git://git.kernel.org/pub/scm/linux/kernel/git/joro/iommu · 91838e2d
      Linus Torvalds authored
      Pull IOMMU updates from Joerg Roedel:
       "This time the updates contain:
      
         - Tracepoints for certain IOMMU-API functions to make their use
           easier to debug
         - A tracepoint for IOMMU page faults to make it easier to get them in
           user space
         - Updates and fixes for the new ARM SMMU driver after the first
           hardware showed up
         - Various other fixes and cleanups in other IOMMU drivers"
      
      * tag 'iommu-updates-v3.13' of git://git.kernel.org/pub/scm/linux/kernel/git/joro/iommu: (26 commits)
        iommu/shmobile: Enable the driver on all ARM platforms
        iommu/tegra-smmu: Staticize tegra_smmu_pm_ops
        iommu/tegra-gart: Staticize tegra_gart_pm_ops
        iommu/vt-d: Use list_for_each_entry_safe() for dmar_domain->devices traversal
        iommu/vt-d: Use for_each_drhd_unit() instead of list_for_each_entry()
        iommu/vt-d: Fixed interaction of VFIO_IOMMU_MAP_DMA with IOMMU address limits
        iommu/arm-smmu: Clear global and context bank fault status registers
        iommu/arm-smmu: Print context fault information
        iommu/arm-smmu: Check for num_context_irqs > 0 to avoid divide by zero exception
        iommu/arm-smmu: Refine check for proper size of mapped region
        iommu/arm-smmu: Switch to subsys_initcall for driver registration
        iommu/arm-smmu: use relaxed accessors where possible
        iommu/arm-smmu: replace devm_request_and_ioremap by devm_ioremap_resource
        iommu: Remove stack trace from broken irq remapping warning
        iommu: Change iommu driver to call io_page_fault trace event
        iommu: Add iommu_error class event to iommu trace
        iommu/tegra: gart: cleanup devm_* functions usage
        iommu/tegra: Print phys_addr_t using %pa
        iommu: No need to pass '0x' when '%pa' is used
        iommu: Change iommu driver to call unmap trace event
        ...
      91838e2d
    • Linus Torvalds's avatar
      Merge tag 'for-linus' of git://git.kernel.org/pub/scm/virt/kvm/kvm · f0804804
      Linus Torvalds authored
      Pull KVM changes from Paolo Bonzini:
       "Here are the 3.13 KVM changes.  There was a lot of work on the PPC
        side: the HV and emulation flavors can now coexist in a single kernel
        is probably the most interesting change from a user point of view.
      
        On the x86 side there are nested virtualization improvements and a few
        bugfixes.
      
        ARM got transparent huge page support, improved overcommit, and
        support for big endian guests.
      
        Finally, there is a new interface to connect KVM with VFIO.  This
        helps with devices that use NoSnoop PCI transactions, letting the
        driver in the guest execute WBINVD instructions.  This includes some
        nVidia cards on Windows, that fail to start without these patches and
        the corresponding userspace changes"
      
      * tag 'for-linus' of git://git.kernel.org/pub/scm/virt/kvm/kvm: (146 commits)
        kvm, vmx: Fix lazy FPU on nested guest
        arm/arm64: KVM: PSCI: propagate caller endianness to the incoming vcpu
        arm/arm64: KVM: MMIO support for BE guest
        kvm, cpuid: Fix sparse warning
        kvm: Delete prototype for non-existent function kvm_check_iopl
        kvm: Delete prototype for non-existent function complete_pio
        hung_task: add method to reset detector
        pvclock: detect watchdog reset at pvclock read
        kvm: optimize out smp_mb after srcu_read_unlock
        srcu: API for barrier after srcu read unlock
        KVM: remove vm mmap method
        KVM: IOMMU: hva align mapping page size
        KVM: x86: trace cpuid emulation when called from emulator
        KVM: emulator: cleanup decode_register_operand() a bit
        KVM: emulator: check rex prefix inside decode_register()
        KVM: x86: fix emulation of "movzbl %bpl, %eax"
        kvm_host: typo fix
        KVM: x86: emulate SAHF instruction
        MAINTAINERS: add tree for kvm.git
        Documentation/kvm: add a 00-INDEX file
        ...
      f0804804
    • Linus Torvalds's avatar
      Merge tag 'stable/for-linus-3.13-rc0-tag' of git://git.kernel.org/pub/scm/linux/kernel/git/xen/tip · eda670c6
      Linus Torvalds authored
      Pull Xen updates from Konrad Rzeszutek Wilk:
       "This has tons of fixes and two major features which are concentrated
        around the Xen SWIOTLB library.
      
        The short <blurb> is that the tracing facility (just one function) has
        been added to SWIOTLB to make it easier to track I/O progress.
        Additionally under Xen and ARM (32 & 64) the Xen-SWIOTLB driver
        "is used to translate physical to machine and machine to physical
        addresses of foreign[guest] pages for DMA operations" (Stefano) when
        booting under hardware without proper IOMMU.
      
        There are also bug-fixes, cleanups, compile warning fixes, etc.
      
        The commit times for some of the commits is a bit fresh - that is b/c
        we wanted to make sure we have the Ack's from the ARM folks - which
        with the string of back-to-back conferences took a bit of time.  Rest
        assured - the code has been stewing in #linux-next for some time.
      
        Features:
         - SWIOTLB has tracing added when doing bounce buffer.
         - Xen ARM/ARM64 can use Xen-SWIOTLB.  This work allows Linux to
           safely program real devices for DMA operations when running as a
           guest on Xen on ARM, without IOMMU support. [*1]
         - xen_raw_printk works with PVHVM guests if needed.
      
        Bug-fixes:
         - Make memory ballooning work under HVM with large MMIO region.
         - Inform hypervisor of MCFG regions found in ACPI DSDT.
         - Remove deprecated IRQF_DISABLED.
         - Remove deprecated __cpuinit.
      
        [*1]:
        "On arm and arm64 all Xen guests, including dom0, run with second
         stage translation enabled.  As a consequence when dom0 programs a
         device for a DMA operation is going to use (pseudo) physical
         addresses instead machine addresses.  This work introduces two trees
         to track physical to machine and machine to physical mappings of
         foreign pages.  Local pages are assumed mapped 1:1 (physical address
         == machine address).  It enables the SWIOTLB-Xen driver on ARM and
         ARM64, so that Linux can translate physical addresses to machine
         addresses for dma operations when necessary.  " (Stefano)"
      
      * tag 'stable/for-linus-3.13-rc0-tag' of git://git.kernel.org/pub/scm/linux/kernel/git/xen/tip: (32 commits)
        xen/arm: pfn_to_mfn and mfn_to_pfn return the argument if nothing is in the p2m
        arm,arm64/include/asm/io.h: define struct bio_vec
        swiotlb-xen: missing include dma-direction.h
        pci-swiotlb-xen: call pci_request_acs only ifdef CONFIG_PCI
        arm: make SWIOTLB available
        xen: delete new instances of added __cpuinit
        xen/balloon: Set balloon's initial state to number of existing RAM pages
        xen/mcfg: Call PHYSDEVOP_pci_mmcfg_reserved for MCFG areas.
        xen: remove deprecated IRQF_DISABLED
        x86/xen: remove deprecated IRQF_DISABLED
        swiotlb-xen: fix error code returned by xen_swiotlb_map_sg_attrs
        swiotlb-xen: static inline xen_phys_to_bus, xen_bus_to_phys, xen_virt_to_bus and range_straddles_page_boundary
        grant-table: call set_phys_to_machine after mapping grant refs
        arm,arm64: do not always merge biovec if we are running on Xen
        swiotlb: print a warning when the swiotlb is full
        swiotlb-xen: use xen_dma_map/unmap_page, xen_dma_sync_single_for_cpu/device
        xen: introduce xen_dma_map/unmap_page and xen_dma_sync_single_for_cpu/device
        tracing/events: Fix swiotlb tracepoint creation
        swiotlb-xen: use xen_alloc/free_coherent_pages
        xen: introduce xen_alloc/free_coherent_pages
        ...
      eda670c6
    • Linus Torvalds's avatar
      Merge tag 'virtio-next-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/rusty/linux · b746f9c7
      Linus Torvalds authored
      Pull virtio updates from Rusty Russell:
       "Nothing really exciting: some groundwork for changing virtio endian,
        and some robustness fixes for broken virtio devices, plus minor
        tweaks"
      
      * tag 'virtio-next-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/rusty/linux:
        virtio_scsi: verify if queue is broken after virtqueue_get_buf()
        x86, asmlinkage, lguest: Pass in globals into assembler statement
        virtio: mmio: fix signature checking for BE guests
        virtio_ring: adapt to notify() returning bool
        virtio_net: verify if queue is broken after virtqueue_get_buf()
        virtio_console: verify if queue is broken after virtqueue_get_buf()
        virtio_blk: verify if queue is broken after virtqueue_get_buf()
        virtio_ring: add new function virtqueue_is_broken()
        virtio_test: verify if virtqueue_kick() succeeded
        virtio_net: verify if virtqueue_kick() succeeded
        virtio_ring: let virtqueue_{kick()/notify()} return a bool
        virtio_ring: change host notification API
        virtio_config: remove virtio_config_val
        virtio: use size-based config accessors.
        virtio_config: introduce size-based accessors.
        virtio_ring: plug kmemleak false positive.
        virtio: pm: use CONFIG_PM_SLEEP instead of CONFIG_PM
      b746f9c7
    • Linus Torvalds's avatar
      Merge tag 'modules-next-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/rusty/linux · ce6513f7
      Linus Torvalds authored
      Pull module updates from Rusty Russell:
       "Mainly boring here, too.  rmmod --wait finally removed, though"
      
      * tag 'modules-next-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/rusty/linux:
        modpost: fix bogus 'exported twice' warnings.
        init: fix in-place parameter modification regression
        asmlinkage, module: Make ksymtab and kcrctab symbols and __this_module __visible
        kernel: add support for init_array constructors
        modpost: Optionally ignore secondary errors seen if a single module build fails
        module: remove rmmod --wait option.
      ce6513f7
    • Dave Airlie's avatar
      Merge branch 'drm-nouveau-next' of... · 0846c728
      Dave Airlie authored
      Merge branch 'drm-nouveau-next' of git://anongit.freedesktop.org/git/nouveau/linux-2.6 into drm-next
      
      - Page flipping fixes, with support for syncing them to vblank (finally...).
      - Misc other general fixes
      
      * 'drm-nouveau-next' of git://anongit.freedesktop.org/git/nouveau/linux-2.6:
        drm/nouveau: do not map evicted vram buffers in nouveau_bo_vma_add
        drm/nvc0-/gr: shift wrapping bug in nvc0_grctx_generate_r406800
        drm/nouveau/pwr: fix missing mutex unlock in a failure path
        drm/nv40/therm: fix slowing down fan when pstate undefined
        drm/nv11-: synchronise flips to vblank, unless async flip requested
        drm/nvc0-: remove nasty fifo swmthd hack for flip completion method
        drm/nv10-: we no longer need to create nvsw object on user channels
        drm/nouveau: always queue flips relative to kernel channel activity
        drm/nouveau: there is no need to reserve/fence the new fb when flipping
        drm/nouveau: when bailing out of a pushbuf ioctl, do not remove previous fence
        drm/nouveau: allow nouveau_fence_ref() to be a noop
        drm/nvc8/mc: msi rearm is via the nvc0 method
      0846c728
    • Linus Torvalds's avatar
      Merge branch 'akpm' (patch-bomb from Andrew Morton) · d8fe4acc
      Linus Torvalds authored
      Merge patches from Andrew Morton:
       - memstick fixes
      
       - the rest of MM
      
       - various misc bits that were awaiting merges from linux-next into
         mainline: seq_file, printk, rtc, completions, w1, softirqs, llist,
         kfifo, hfsplus
      
      * emailed patches from Andrew Morton <akpm@linux-foundation.org>: (72 commits)
        cmdline-parser: fix build
        hfsplus: Fix undefined __divdi3 in hfsplus_init_header_node()
        kfifo API type safety
        kfifo: kfifo_copy_{to,from}_user: fix copied bytes calculation
        sound/core/memalloc.c: use gen_pool_dma_alloc() to allocate iram buffer
        llists-move-llist_reverse_order-from-raid5-to-llistc-fix
        llists: move llist_reverse_order from raid5 to llist.c
        kernel: fix generic_exec_single indentation
        kernel-provide-a-__smp_call_function_single-stub-for-config_smp-fix
        kernel: provide a __smp_call_function_single stub for !CONFIG_SMP
        kernel: remove CONFIG_USE_GENERIC_SMP_HELPERS
        revert "softirq: Add support for triggering softirq work on softirqs"
        drivers/w1/masters/w1-gpio.c: use dev_get_platdata()
        sched: remove INIT_COMPLETION
        tree-wide: use reinit_completion instead of INIT_COMPLETION
        sched: replace INIT_COMPLETION with reinit_completion
        drivers/rtc/rtc-hid-sensor-time.c: enable HID input processing early
        drivers/rtc/rtc-hid-sensor-time.c: use dev_get_platdata()
        vsprintf: ignore %n again
        seq_file: remove "%n" usage from seq_file users
        ...
      d8fe4acc
    • Alexander Beregalov's avatar
      cmdline-parser: fix build · 8d3ef556
      Alexander Beregalov authored
      Fix following errors:
      
        include/linux/cmdline-parser.h:17:12: error: 'BDEVNAME_SIZE' undeclared here
        block/cmdline-parser.c:17:2: error: implicit declaration of function 'kzalloc'
      Signed-off-by: default avatarAlexander Beregalov <alexander.beregalov@intel.com>
      Cc: CaiZhiyong <caizhiyong@huawei.com>
      Signed-off-by: default avatarAndrew Morton <akpm@linux-foundation.org>
      Signed-off-by: default avatarLinus Torvalds <torvalds@linux-foundation.org>
      8d3ef556
    • Geert Uytterhoeven's avatar
      hfsplus: Fix undefined __divdi3 in hfsplus_init_header_node() · a99b7069
      Geert Uytterhoeven authored
      ERROR: "__divdi3" [fs/hfsplus/hfsplus.ko] undefined!
      
      Introduced by commit 099e9245 ("hfsplus: implement attributes file's
      header node initialization code").
      
      i_size_read() returns loff_t, which is long long, i.e.  64-bit.  node_size
      is size_t, which is either 32-bit or 64-bit.  Hence
      "i_size_read(attr_file) / node_size" is a 64-by-32 or 64-by-64 division,
      causing (some versions of) gcc to emit a call to __divdi3().
      
      Fortunately node_size is actually 16-bit, as the sole caller of
      hfsplus_init_header_node() passes a u16.  Hence change its type from
      size_t to u16, and use do_div() to perform a 64-by-32 division.
      
      Not seen in m68k/allmodconfig in -next, so it really depends on the
      verion of gcc.
      Signed-off-by: default avatarGeert Uytterhoeven <geert@linux-m68k.org>
      Cc: Vyacheslav Dubeyko <slava@dubeyko.com>
      Signed-off-by: default avatarAndrew Morton <akpm@linux-foundation.org>
      Signed-off-by: default avatarLinus Torvalds <torvalds@linux-foundation.org>
      a99b7069
    • Stefani Seibold's avatar
      kfifo API type safety · 498d319b
      Stefani Seibold authored
      This patch enhances the type safety for the kfifo API.  It is now safe
      to put const data into a non const FIFO and the API will now generate a
      compiler warning when reading from the fifo where the destination
      address is pointing to a const variable.
      
      As a side effect the kfifo_put() does now expect the value of an element
      instead a pointer to the element.  This was suggested Russell King.  It
      make the handling of the kfifo_put easier since there is no need to
      create a helper variable for getting the address of a pointer or to pass
      integers of different sizes.
      
      IMHO the API break is okay, since there are currently only six users of
      kfifo_put().
      
      The code is also cleaner by kicking out the "if (0)" expressions.
      
      [akpm@linux-foundation.org: coding-style fixes]
      Signed-off-by: default avatarStefani Seibold <stefani@seibold.net>
      Cc: Russell King <rmk@arm.linux.org.uk>
      Cc: Hauke Mehrtens <hauke@hauke-m.de>
      Signed-off-by: default avatarAndrew Morton <akpm@linux-foundation.org>
      Signed-off-by: default avatarLinus Torvalds <torvalds@linux-foundation.org>
      498d319b
    • Lars-Peter Clausen's avatar
      kfifo: kfifo_copy_{to,from}_user: fix copied bytes calculation · a019e48c
      Lars-Peter Clausen authored
      'copied' and 'len' are in bytes, while 'ret' is in elements, so we need to
      multiply 'ret' with the size of one element to get the correct result.
      Signed-off-by: default avatarLars-Peter Clausen <lars@metafoo.de>
      Cc: Stefani Seibold <stefani@seibold.net>
      Signed-off-by: default avatarAndrew Morton <akpm@linux-foundation.org>
      Signed-off-by: default avatarLinus Torvalds <torvalds@linux-foundation.org>
      a019e48c
    • Nicolin Chen's avatar
      sound/core/memalloc.c: use gen_pool_dma_alloc() to allocate iram buffer · 07968fe4
      Nicolin Chen authored
      Since gen_pool_dma_alloc() is introduced, we implement it to simplify code.
      Signed-off-by: default avatarNicolin Chen <b42378@freescale.com>
      Acked-by: default avatarTakashi Iwai <tiwai@suse.de>
      Signed-off-by: default avatarAndrew Morton <akpm@linux-foundation.org>
      Signed-off-by: default avatarLinus Torvalds <torvalds@linux-foundation.org>
      07968fe4
    • Andrew Morton's avatar
      llists-move-llist_reverse_order-from-raid5-to-llistc-fix · 0791a605
      Andrew Morton authored
      fix comment typo, per Jan
      
      Cc: Christoph Hellwig <hch@lst.de>
      Cc: Jan Kara <jack@suse.cz>
      Cc: Jens Axboe <axboe@kernel.dk>
      Signed-off-by: default avatarAndrew Morton <akpm@linux-foundation.org>
      Signed-off-by: default avatarLinus Torvalds <torvalds@linux-foundation.org>
      0791a605
    • Christoph Hellwig's avatar
      llists: move llist_reverse_order from raid5 to llist.c · b89241e8
      Christoph Hellwig authored
      Make this useful helper available for other users.
      Signed-off-by: default avatarChristoph Hellwig <hch@lst.de>
      Reviewed-by: default avatarJan Kara <jack@suse.cz>
      Cc: Jens Axboe <axboe@kernel.dk>
      Cc: Neil Brown <neilb@suse.de>
      Signed-off-by: default avatarAndrew Morton <akpm@linux-foundation.org>
      Signed-off-by: default avatarLinus Torvalds <torvalds@linux-foundation.org>
      b89241e8
    • Christoph Hellwig's avatar
      kernel: fix generic_exec_single indentation · ca5ecd64
      Christoph Hellwig authored
      Signed-off-by: default avatarChristoph Hellwig <hch@lst.de>
      Cc: Jan Kara <jack@suse.cz>
      Cc: Jens Axboe <axboe@kernel.dk>
      Signed-off-by: default avatarAndrew Morton <akpm@linux-foundation.org>
      Signed-off-by: default avatarLinus Torvalds <torvalds@linux-foundation.org>
      ca5ecd64
    • Andrew Morton's avatar
      kernel-provide-a-__smp_call_function_single-stub-for-config_smp-fix · 7cf64f86
      Andrew Morton authored
      x86_64 allnoconfig:
      
        kernel/up.c:25: error: redefinition of '__smp_call_function_single'
        include/linux/smp.h:154: note: previous definition of '__smp_call_function_single' was here
      
      Cc: Christoph Hellwig <hch@infradead.org>
      Cc: Christoph Hellwig <hch@lst.de>
      Cc: Jan Kara <jack@suse.cz>
      Cc: Jens Axboe <axboe@kernel.dk>
      Signed-off-by: default avatarAndrew Morton <akpm@linux-foundation.org>
      Signed-off-by: default avatarLinus Torvalds <torvalds@linux-foundation.org>
      7cf64f86
    • Christoph Hellwig's avatar
      kernel: provide a __smp_call_function_single stub for !CONFIG_SMP · 40c01e8b
      Christoph Hellwig authored
      Signed-off-by: default avatarChristoph Hellwig <hch@lst.de>
      Cc: Jan Kara <jack@suse.cz>
      Cc: Jens Axboe <axboe@kernel.dk>
      Signed-off-by: default avatarAndrew Morton <akpm@linux-foundation.org>
      Signed-off-by: default avatarLinus Torvalds <torvalds@linux-foundation.org>
      40c01e8b
    • Christoph Hellwig's avatar
      kernel: remove CONFIG_USE_GENERIC_SMP_HELPERS · 0a06ff06
      Christoph Hellwig authored
      We've switched over every architecture that supports SMP to it, so
      remove the new useless config variable.
      Signed-off-by: default avatarChristoph Hellwig <hch@lst.de>
      Cc: Jan Kara <jack@suse.cz>
      Cc: Jens Axboe <axboe@kernel.dk>
      Signed-off-by: default avatarAndrew Morton <akpm@linux-foundation.org>
      Signed-off-by: default avatarLinus Torvalds <torvalds@linux-foundation.org>
      0a06ff06
    • Christoph Hellwig's avatar
      revert "softirq: Add support for triggering softirq work on softirqs" · fc21c0cf
      Christoph Hellwig authored
      This commit was incomplete in that code to remove items from the per-cpu
      lists was missing and never acquired a user in the 5 years it has been in
      the tree.  We're going to implement what it seems to try to archive in a
      simpler way, and this code is in the way of doing so.
      Signed-off-by: default avatarChristoph Hellwig <hch@lst.de>
      Cc: Jan Kara <jack@suse.cz>
      Cc: Jens Axboe <axboe@kernel.dk>
      Signed-off-by: default avatarAndrew Morton <akpm@linux-foundation.org>
      Signed-off-by: default avatarLinus Torvalds <torvalds@linux-foundation.org>
      fc21c0cf
    • Jingoo Han's avatar
      drivers/w1/masters/w1-gpio.c: use dev_get_platdata() · c853b167
      Jingoo Han authored
      Use the wrapper function for retrieving the platform data instead of
      accessing dev->platform_data directly.  This is a cosmetic change to make
      the code simpler and enhance the readability.
      Signed-off-by: default avatarJingoo Han <jg1.han@samsung.com>
      Acked-by: default avatarEvgeniy Polyakov <zbr@ioremap.net>
      Cc: Greg KH <greg@kroah.com>
      Signed-off-by: default avatarAndrew Morton <akpm@linux-foundation.org>
      Signed-off-by: default avatarLinus Torvalds <torvalds@linux-foundation.org>
      c853b167
    • Wolfram Sang's avatar
      sched: remove INIT_COMPLETION · 62026aed
      Wolfram Sang authored
      All users are converted over to reinit_completion(). Remove the old
      macro now.
      Signed-off-by: default avatarWolfram Sang <wsa@the-dreams.de>
      Cc: Linus Walleij <linus.walleij@linaro.org>
      Cc: Ingo Molnar <mingo@kernel.org>
      Signed-off-by: default avatarAndrew Morton <akpm@linux-foundation.org>
      Signed-off-by: default avatarLinus Torvalds <torvalds@linux-foundation.org>
      62026aed
    • Wolfram Sang's avatar
      tree-wide: use reinit_completion instead of INIT_COMPLETION · 16735d02
      Wolfram Sang authored
      Use this new function to make code more comprehensible, since we are
      reinitialzing the completion, not initializing.
      
      [akpm@linux-foundation.org: linux-next resyncs]
      Signed-off-by: default avatarWolfram Sang <wsa@the-dreams.de>
      Acked-by: Linus Walleij <linus.walleij@linaro.org> (personally at LCE13)
      Cc: Ingo Molnar <mingo@kernel.org>
      Signed-off-by: default avatarAndrew Morton <akpm@linux-foundation.org>
      Signed-off-by: default avatarLinus Torvalds <torvalds@linux-foundation.org>
      16735d02
    • Wolfram Sang's avatar
      sched: replace INIT_COMPLETION with reinit_completion · c32f74ab
      Wolfram Sang authored
      For the casual device driver writer, it is hard to remember when to use
      init_completion (to init a completion structure) or INIT_COMPLETION (to
      *reinit* a completion structure).  Furthermore, while all other
      completion functions exepct a pointer as a parameter, INIT_COMPLETION
      does not.  To make it easier to remember which function to use and to
      make code more readable, introduce a new inline function with the proper
      name and consistent argument type.  Update the kernel-doc for
      init_completion while we are here.
      Signed-off-by: default avatarWolfram Sang <wsa@the-dreams.de>
      Acked-by: Linus Walleij <linus.walleij@linaro.org> (personally at LCE13)
      Cc: Ingo Molnar <mingo@kernel.org>
      Signed-off-by: default avatarAndrew Morton <akpm@linux-foundation.org>
      Signed-off-by: default avatarLinus Torvalds <torvalds@linux-foundation.org>
      c32f74ab
    • Alexander Holler's avatar
      drivers/rtc/rtc-hid-sensor-time.c: enable HID input processing early · 406bf318
      Alexander Holler authored
      Enable the processing of HID input records before the RTC will be
      registered, in order to allow the RTC register function to read clock.
      Without doing that the clock can only be read after the probe function
      has finished.
      Signed-off-by: default avatarAlexander Holler <holler@ahsoftware.de>
      Signed-off-by: default avatarAndrew Morton <akpm@linux-foundation.org>
      Signed-off-by: default avatarLinus Torvalds <torvalds@linux-foundation.org>
      406bf318
    • Jingoo Han's avatar
      drivers/rtc/rtc-hid-sensor-time.c: use dev_get_platdata() · d5ceede8
      Jingoo Han authored
      Use the wrapper function for retrieving the platform data instead of
      accessing dev->platform_data directly.  This is a cosmetic change to
      make the code simpler and enhance the readability.
      Signed-off-by: default avatarJingoo Han <jg1.han@samsung.com>
      Signed-off-by: default avatarAndrew Morton <akpm@linux-foundation.org>
      Signed-off-by: default avatarLinus Torvalds <torvalds@linux-foundation.org>
      d5ceede8
    • Kees Cook's avatar
      vsprintf: ignore %n again · 9196436a
      Kees Cook authored
      This ignores %n in printf again, as was originally documented.
      Implementing %n poses a greater security risk than utility, so it should
      stay ignored.  To help anyone attempting to use %n, a warning will be
      emitted if it is encountered.
      
      Based on an earlier patch by Joe Perches.
      
      Because %n was designed to write to pointers on the stack, it has been
      frequently used as an attack vector when bugs are found that leak
      user-controlled strings into functions that ultimately process format
      strings.  While this class of bug can still be turned into an
      information leak, removing %n eliminates the common method of elevating
      such a bug into an arbitrary kernel memory writing primitive,
      significantly reducing the danger of this class of bug.
      
      For seq_file users that need to know the length of a written string for
      padding, please see seq_setwidth() and seq_pad() instead.
      Signed-off-by: default avatarKees Cook <keescook@chromium.org>
      Cc: Joe Perches <joe@perches.com>
      Cc: Tetsuo Handa <penguin-kernel@I-love.SAKURA.ne.jp>
      Cc: David Miller <davem@davemloft.net>
      Signed-off-by: default avatarAndrew Morton <akpm@linux-foundation.org>
      Signed-off-by: default avatarLinus Torvalds <torvalds@linux-foundation.org>
      9196436a
    • Tetsuo Handa's avatar
      seq_file: remove "%n" usage from seq_file users · 652586df
      Tetsuo Handa authored
      All seq_printf() users are using "%n" for calculating padding size,
      convert them to use seq_setwidth() / seq_pad() pair.
      Signed-off-by: default avatarTetsuo Handa <penguin-kernel@I-love.SAKURA.ne.jp>
      Signed-off-by: default avatarKees Cook <keescook@chromium.org>
      Cc: Joe Perches <joe@perches.com>
      Cc: David Miller <davem@davemloft.net>
      Signed-off-by: default avatarAndrew Morton <akpm@linux-foundation.org>
      Signed-off-by: default avatarLinus Torvalds <torvalds@linux-foundation.org>
      652586df
    • Tetsuo Handa's avatar
      seq_file: introduce seq_setwidth() and seq_pad() · 839cc2a9
      Tetsuo Handa authored
      There are several users who want to know bytes written by seq_*() for
      alignment purpose.  Currently they are using %n format for knowing it
      because seq_*() returns 0 on success.
      
      This patch introduces seq_setwidth() and seq_pad() for allowing them to
      align without using %n format.
      Signed-off-by: default avatarTetsuo Handa <penguin-kernel@I-love.SAKURA.ne.jp>
      Signed-off-by: default avatarKees Cook <keescook@chromium.org>
      Cc: Joe Perches <joe@perches.com>
      Cc: David Miller <davem@davemloft.net>
      Signed-off-by: default avatarAndrew Morton <akpm@linux-foundation.org>
      Signed-off-by: default avatarLinus Torvalds <torvalds@linux-foundation.org>
      839cc2a9
    • Peter Zijlstra's avatar
      lockref: use BLOATED_SPINLOCKS to avoid explicit config dependencies · 57f4257e
      Peter Zijlstra authored
      Avoid the fragile Kconfig construct guestimating spinlock_t sizes; use a
      friendly compile-time test to determine this.
      
      [kirill.shutemov@linux.intel.com: drop CONFIG_CMPXCHG_LOCKREF]
      Signed-off-by: default avatarPeter Zijlstra <peterz@infradead.org>
      Signed-off-by: default avatarKirill A. Shutemov <kirill.shutemov@linux.intel.com>
      Cc: Ingo Molnar <mingo@elte.hu>
      Signed-off-by: default avatarAndrew Morton <akpm@linux-foundation.org>
      Signed-off-by: default avatarLinus Torvalds <torvalds@linux-foundation.org>
      57f4257e
    • Kirill A. Shutemov's avatar
      mm: create a separate slab for page->ptl allocation · ea1e7ed3
      Kirill A. Shutemov authored
      If DEBUG_SPINLOCK and DEBUG_LOCK_ALLOC are enabled spinlock_t on x86_64
      is 72 bytes.  For page->ptl they will be allocated from kmalloc-96 slab,
      so we loose 24 on each.  An average system can easily allocate few tens
      thousands of page->ptl and overhead is significant.
      
      Let's create a separate slab for page->ptl allocation to solve this.
      Signed-off-by: default avatarKirill A. Shutemov <kirill.shutemov@linux.intel.com>
      Cc: Peter Zijlstra <peterz@infradead.org>
      Cc: Ingo Molnar <mingo@elte.hu>
      Signed-off-by: default avatarAndrew Morton <akpm@linux-foundation.org>
      Signed-off-by: default avatarLinus Torvalds <torvalds@linux-foundation.org>
      ea1e7ed3