1. 09 Nov, 2014 21 commits
  2. 05 Nov, 2014 6 commits
  3. 04 Nov, 2014 4 commits
  4. 03 Nov, 2014 6 commits
    • Linus Torvalds's avatar
      Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/sage/ceph-client · ce1928da
      Linus Torvalds authored
      Pull ceph fixes from Sage Weil:
       "There is a GFP flag fix from Mike Christie, an error code fix from
        Jan, and fixes for two unnecessary allocations (kmalloc and workqueue)
        from Ilya.  All are well tested.
      
        Ilya has one other fix on the way but it didn't get tested in time"
      
      * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/sage/ceph-client:
        libceph: eliminate unnecessary allocation in process_one_ticket()
        rbd: Fix error recovery in rbd_obj_read_sync()
        libceph: use memalloc flags for net IO
        rbd: use a single workqueue for all devices
      ce1928da
    • Linus Torvalds's avatar
      Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/geert/linux-m68k · f4ca536f
      Linus Torvalds authored
      Pull m68k update from Geert Uytterhoeven.
      
      Just wiring up the bpf system call.
      
      * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/geert/linux-m68k:
        m68k: Wire up bpf
      f4ca536f
    • Linus Torvalds's avatar
      Merge tag 'armsoc-for-rc3' of git://git.kernel.org/pub/scm/linux/kernel/git/arm/arm-soc · 2084becb
      Linus Torvalds authored
      Pull ARM SoC fixes from Olof Johansson:
       "A surprisingly small batch of fixes for -rc3.  Suspiciously small, I'd
        say.
      
        Anyway, most of this are a few defconfig updates.  Some for omap to
        deal with kernel binary size (moving ipv6 to module, etc).  A larger
        one for socfpga that refreshes with some churn, but also turns on a
        few options that makes the newly-added board in my bootfarm usable for
        testing.
      
        OMAP3 will also now warn when booted with legacy (non-DT) boot
        protocols, hopefully encouraging those who still care about some of
        those platforms to submit DT support and report bugs where needed.
        Nothing stops working though, this is just to warn for future
        deprecation.
      
        Beyond this, very few actual bugfixes.  A PXA fix for DEBUG_LL boot
        hangs, a missing terminting entry in a dt_match array on RealView a
        MTD fix on OMAP with NAND"
      
      [ Obviously missed rc3, will make rc4 instead ;) ]
      
      * tag 'armsoc-for-rc3' of git://git.kernel.org/pub/scm/linux/kernel/git/arm/arm-soc:
        MAINTAINERS: drop list entry for davinci
        ARM: OMAP2+: Warn about deprecated legacy booting mode
        ARM: omap2plus_defconfig: Fix errors with NAND BCH
        ARM: multi_v7_defconfig: fix support for APQ8084
        soc: versatile: Add terminating entry for realview_soc_of_match
        ARM: ixp4xx: remove compilation warnings in io.h
        MAINTAINERS: Add Soren as reviewer for Zynq
        ARM: omap2plus_defconfig: Fix bloat caused by having ipv6 built-in
        ARM: socfpga_defconfig: Update defconfig for SoCFPGA
        ARM: pxa: fix hang on startup with DEBUG_LL
      2084becb
    • Steven Rostedt (Red Hat)'s avatar
      ftracetest: Take the first debugfs mount found · e7dbb489
      Steven Rostedt (Red Hat) authored
      Running ftracetests on a box that mounted debugfs in two locations
      made the ftracetests fail. This is because the tests uses a grep
      of debugfs from the /proc/mounts file to find the debugfs mount
      point, and then appends "/tracing" to that string to get the tracing
      directory.
      
      If the debugfs directory is mounted twice, then that grep will return
      two answers and appending "/tracing" to a string with two lines will
      not work.
      
      Use "head -1" to only take the first mount point found.
      Acked-by: default avatarMasami Hiramatsu <masami.hiramatsu.pt@hitachi.com>
      Signed-off-by: default avatarSteven Rostedt <rostedt@goodmis.org>
      e7dbb489
    • Alexander Graf's avatar
      powerpc: Convert power off logic to pm_power_off · 9178ba29
      Alexander Graf authored
      The generic Linux framework to power off the machine is a function pointer
      called pm_power_off. The trick about this pointer is that device drivers can
      potentially implement it rather than board files.
      
      Today on powerpc we set pm_power_off to invoke our generic full machine power
      off logic which then calls ppc_md.power_off to invoke machine specific power
      off.
      
      However, when we want to add a power off GPIO via the "gpio-poweroff" driver,
      this card house falls apart. That driver only registers itself if pm_power_off
      is NULL to ensure it doesn't override board specific logic. However, since we
      always set pm_power_off to the generic power off logic (which will just not
      power off the machine if no ppc_md.power_off call is implemented), we can't
      implement power off via the generic GPIO power off driver.
      
      To fix this up, let's get rid of the ppc_md.power_off logic and just always use
      pm_power_off as was intended. Then individual drivers such as the GPIO power off
      driver can implement power off logic via that function pointer.
      
      With this patch set applied and a few patches on top of QEMU that implement a
      power off GPIO on the virt e500 machine, I can successfully turn off my virtual
      machine after halt.
      Signed-off-by: default avatarAlexander Graf <agraf@suse.de>
      [mpe: Squash into one patch and update changelog based on cover letter]
      Signed-off-by: default avatarMichael Ellerman <mpe@ellerman.id.au>
      9178ba29
    • Christoph Lameter's avatar
      powerpc: Replace __get_cpu_var uses · 69111bac
      Christoph Lameter authored
      This still has not been merged and now powerpc is the only arch that does
      not have this change. Sorry about missing linuxppc-dev before.
      
      V2->V2
        - Fix up to work against 3.18-rc1
      
      __get_cpu_var() is used for multiple purposes in the kernel source. One of
      them is address calculation via the form &__get_cpu_var(x).  This calculates
      the address for the instance of the percpu variable of the current processor
      based on an offset.
      
      Other use cases are for storing and retrieving data from the current
      processors percpu area.  __get_cpu_var() can be used as an lvalue when
      writing data or on the right side of an assignment.
      
      __get_cpu_var() is defined as :
      
      __get_cpu_var() always only does an address determination. However, store
      and retrieve operations could use a segment prefix (or global register on
      other platforms) to avoid the address calculation.
      
      this_cpu_write() and this_cpu_read() can directly take an offset into a
      percpu area and use optimized assembly code to read and write per cpu
      variables.
      
      This patch converts __get_cpu_var into either an explicit address
      calculation using this_cpu_ptr() or into a use of this_cpu operations that
      use the offset.  Thereby address calculations are avoided and less registers
      are used when code is generated.
      
      At the end of the patch set all uses of __get_cpu_var have been removed so
      the macro is removed too.
      
      The patch set includes passes over all arches as well. Once these operations
      are used throughout then specialized macros can be defined in non -x86
      arches as well in order to optimize per cpu access by f.e.  using a global
      register that may be set to the per cpu base.
      
      Transformations done to __get_cpu_var()
      
      1. Determine the address of the percpu instance of the current processor.
      
      	DEFINE_PER_CPU(int, y);
      	int *x = &__get_cpu_var(y);
      
          Converts to
      
      	int *x = this_cpu_ptr(&y);
      
      2. Same as #1 but this time an array structure is involved.
      
      	DEFINE_PER_CPU(int, y[20]);
      	int *x = __get_cpu_var(y);
      
          Converts to
      
      	int *x = this_cpu_ptr(y);
      
      3. Retrieve the content of the current processors instance of a per cpu
      variable.
      
      	DEFINE_PER_CPU(int, y);
      	int x = __get_cpu_var(y)
      
         Converts to
      
      	int x = __this_cpu_read(y);
      
      4. Retrieve the content of a percpu struct
      
      	DEFINE_PER_CPU(struct mystruct, y);
      	struct mystruct x = __get_cpu_var(y);
      
         Converts to
      
      	memcpy(&x, this_cpu_ptr(&y), sizeof(x));
      
      5. Assignment to a per cpu variable
      
      	DEFINE_PER_CPU(int, y)
      	__get_cpu_var(y) = x;
      
         Converts to
      
      	__this_cpu_write(y, x);
      
      6. Increment/Decrement etc of a per cpu variable
      
      	DEFINE_PER_CPU(int, y);
      	__get_cpu_var(y)++
      
         Converts to
      
      	__this_cpu_inc(y)
      
      Cc: Benjamin Herrenschmidt <benh@kernel.crashing.org>
      CC: Paul Mackerras <paulus@samba.org>
      Signed-off-by: default avatarChristoph Lameter <cl@linux.com>
      [mpe: Fix build errors caused by set/or_softirq_pending(), and rework
            assignment in __set_breakpoint() to use memcpy().]
      Signed-off-by: default avatarMichael Ellerman <mpe@ellerman.id.au>
      69111bac
  5. 02 Nov, 2014 3 commits
    • Linus Torvalds's avatar
      Linux 3.18-rc3 · 0df1f248
      Linus Torvalds authored
      0df1f248
    • Linus Torvalds's avatar
      Merge tag 'for-linus-20141102' of git://git.infradead.org/linux-mtd · 81d92dc1
      Linus Torvalds authored
      Pull MTD fixes from Brian Norris:
       "Three main MTD fixes for 3.18:
      
         - A regression from 3.16 which was noticed in 3.17.  With the
           restructuring of the m25p80.c driver and the SPI NOR library
           framework, we omitted proper listing of the SPI device IDs.  This
           means m25p80.c wouldn't auto-load (modprobe) properly when built as
           a module.  For now, we duplicate the device IDs into both modules.
      
         - The OMAP / ELM modules were depending on an implicit link ordering.
           Use deferred probing so that the new link order (in 3.18-rc) can
           still allow for successful probing.
      
         - Fix suspend/resume support for LH28F640BF NOR flash"
      
      * tag 'for-linus-20141102' of git://git.infradead.org/linux-mtd:
        mtd: cfi_cmdset_0001.c: fix resume for LH28F640BF chips
        mtd: omap: fix mtd devices not showing up
        mtd: m25p80,spi-nor: Fix module aliases for m25p80
        mtd: spi-nor: make spi_nor_scan() take a chip type name, not spi_device_id
        mtd: m25p80: get rid of spi_get_device_id
      81d92dc1
    • Linus Torvalds's avatar
      Merge tag 'scsi-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jejb/scsi · ad2be379
      Linus Torvalds authored
      Pull SCSI fixes from James Bottomley:
       "This is a set of six patches consisting of:
         - two MAINTAINER updates
         - two scsi-mq fixs for the old parallel interface (not every request
           is tagged and we need to set the right flags to populate the SPI
           tag message)
         - a fix for a memory leak in scatterlist traversal caused by a
           preallocation update in 3.17
         - an ipv6 fix for cxgbi"
      
      [ The scatterlist fix also came in separately through the block layer tree ]
      
      * tag 'scsi-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jejb/scsi:
        MAINTAINERS: ufs - remove self
        MAINTAINERS: change hpsa and cciss maintainer
        libcxgbi : support ipv6 address host_param
        scsi: set REQ_QUEUE for the blk-mq case
        Revert "block: all blk-mq requests are tagged"
        lib/scatterlist: fix memory leak with scsi-mq
      ad2be379