1. 11 7月, 2013 2 次提交
    • M
      mm: remove free_area_cache · 98d1e64f
      Michel Lespinasse 提交于
      Since all architectures have been converted to use vm_unmapped_area(),
      there is no remaining use for the free_area_cache.
      Signed-off-by: NMichel Lespinasse <walken@google.com>
      Acked-by: NRik van Riel <riel@redhat.com>
      Cc: "James E.J. Bottomley" <jejb@parisc-linux.org>
      Cc: "Luck, Tony" <tony.luck@intel.com>
      Cc: Benjamin Herrenschmidt <benh@kernel.crashing.org>
      Cc: David Howells <dhowells@redhat.com>
      Cc: Helge Deller <deller@gmx.de>
      Cc: Ivan Kokshaysky <ink@jurassic.park.msu.ru>
      Cc: Matt Turner <mattst88@gmail.com>
      Cc: Paul Mackerras <paulus@samba.org>
      Cc: Richard Henderson <rth@twiddle.net>
      Signed-off-by: NAndrew Morton <akpm@linux-foundation.org>
      Signed-off-by: NLinus Torvalds <torvalds@linux-foundation.org>
      98d1e64f
    • S
      zbud: add to mm/ · 4e2e2770
      Seth Jennings 提交于
      zbud is an special purpose allocator for storing compressed pages.  It
      is designed to store up to two compressed pages per physical page.
      While this design limits storage density, it has simple and
      deterministic reclaim properties that make it preferable to a higher
      density approach when reclaim will be used.
      
      zbud works by storing compressed pages, or "zpages", together in pairs
      in a single memory page called a "zbud page".  The first buddy is "left
      justifed" at the beginning of the zbud page, and the last buddy is
      "right justified" at the end of the zbud page.  The benefit is that if
      either buddy is freed, the freed buddy space, coalesced with whatever
      slack space that existed between the buddies, results in the largest
      possible free region within the zbud page.
      
      zbud also provides an attractive lower bound on density.  The ratio of
      zpages to zbud pages can not be less than 1.  This ensures that zbud can
      never "do harm" by using more pages to store zpages than the
      uncompressed zpages would have used on their own.
      
      This implementation is a rewrite of the zbud allocator internally used
      by zcache in the driver/staging tree.  The rewrite was necessary to
      remove some of the zcache specific elements that were ingrained
      throughout and provide a generic allocation interface that can later be
      used by zsmalloc and others.
      
      This patch adds zbud to mm/ for later use by zswap.
      Signed-off-by: NSeth Jennings <sjenning@linux.vnet.ibm.com>
      Acked-by: NRik van Riel <riel@redhat.com>
      Cc: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
      Cc: Nitin Gupta <ngupta@vflare.org>
      Cc: Minchan Kim <minchan@kernel.org>
      Cc: Konrad Rzeszutek Wilk <konrad.wilk@oracle.com>
      Cc: Dan Magenheimer <dan.magenheimer@oracle.com>
      Cc: Robert Jennings <rcj@linux.vnet.ibm.com>
      Cc: Jenifer Hopper <jhopper@us.ibm.com>
      Cc: Mel Gorman <mgorman@suse.de>
      Cc: Johannes Weiner <jweiner@redhat.com>
      Cc: Larry Woodman <lwoodman@redhat.com>
      Cc: Benjamin Herrenschmidt <benh@kernel.crashing.org>
      Cc: Dave Hansen <dave@sr71.net>
      Cc: Joe Perches <joe@perches.com>
      Cc: Joonsoo Kim <iamjoonsoo.kim@lge.com>
      Cc: Cody P Schafer <cody@linux.vnet.ibm.com>
      Cc: Hugh Dickens <hughd@google.com>
      Cc: Paul Mackerras <paulus@samba.org>
      Cc: Bob Liu <bob.liu@oracle.com>
      Signed-off-by: NAndrew Morton <akpm@linux-foundation.org>
      Signed-off-by: NLinus Torvalds <torvalds@linux-foundation.org>
      4e2e2770
  2. 10 7月, 2013 25 次提交
  3. 09 7月, 2013 3 次提交
  4. 08 7月, 2013 4 次提交
  5. 06 7月, 2013 1 次提交
    • O
      mmc: esdhc: Fix bug when writing to SDHCI_HOST_CONTROL register · dcaff04d
      Oded Gabbay 提交于
      The P2020 has a non-standard implementation of the SDHCI_HOST_CONTROL
      register. This patch adds a QUIRK in the SDHCI header to signal that
      a host controller has a non-standard SDHCI_HOST_CONTROL register. The
      patch adds a check to the function esdhc_writeb in file
      sdhci-of-esdhc.c, where it checks if the write is done to the
      SDHCI_HOST_CONTROL register and th host has the above mentioned QUIRK,
      then the function simply returns instead of writing to the register.
      The patch also detects if the processor is P2020 (by looking in dev
      tree) and if so, adds the QUIRK to the host->quirk2
      Signed-off-by: NOded Gabbay <ogabbay@advaoptical.com>
      Reviewed-by: NAnton Vorontsov <anton@enomsg.org>
      Signed-off-by: NChris Ball <cjb@laptop.org>
      dcaff04d
  6. 05 7月, 2013 5 次提交
    • A
      helper for reading ->d_count · 84d08fa8
      Al Viro 提交于
      Signed-off-by: NAl Viro <viro@zeniv.linux.org.uk>
      84d08fa8
    • T
      clocksource: Reselect clocksource when watchdog validated high-res capability · 332962f2
      Thomas Gleixner 提交于
      Up to commit 5d33b883 (clocksource: Always verify highres capability)
      we had no sanity check when selecting a clocksource, which prevented
      that a non highres capable clocksource is used when the system already
      switched to highres/nohz mode.
      
      The new sanity check works as Alex and Tim found out. It prevents the
      TSC from being used. This happens because on x86 the boot process
      looks like this:
      
       tsc_start_freqency_validation(TSC);
       clocksource_register(HPET);
       clocksource_done_booting();
      	clocksource_select()
      		Selects HPET which is valid for high-res
      
       switch_to_highres();
      
       clocksource_register(TSC);
       	TSC is not selected, because it is not yet
      	flagged as VALID_HIGH_RES
      
       clocksource_watchdog()
      	Validates TSC for highres, but that does not make TSC
      	the current clocksource.
      
      Before the sanity check was added, we installed TSC unvalidated which
      worked most of the time. If the TSC was really detected as unstable,
      then the unstable logic removed it and installed HPET again.
      
      The sanity check is correct and needed. So the watchdog needs to kick
      a reselection of the clocksource, when it qualifies TSC as a valid
      high res clocksource.
      
      To solve this, we mark the clocksource which got the flag
      CLOCK_SOURCE_VALID_FOR_HRES set by the watchdog with an new flag
      CLOCK_SOURCE_RESELECT and trigger the watchdog thread. The watchdog
      thread evaluates the flag and invokes clocksource_select() when set.
      
      To avoid that the clocksource_done_booting() code, which is about to
      install the first real clocksource anyway, needs to go through
      clocksource_select and tick_oneshot_notify() pointlessly, split out
      the clocksource_watchdog_kthread() list walk code and invoke the
      select/notify only when called from clocksource_watchdog_kthread().
      
      So clocksource_done_booting() can utilize the same splitout code
      without the select/notify invocation and the clocksource_mutex
      unlock/relock dance.
      Reported-and-tested-by: NAlex Shi <alex.shi@intel.com>
      Cc: Hans Peter Anvin <hpa@linux.intel.com>
      Cc: Tim Chen <tim.c.chen@linux.intel.com>
      Cc: Andi Kleen <andi.kleen@intel.com>
      Tested-by: NPeter Zijlstra <a.p.zijlstra@chello.nl>
      Cc: Ingo Molnar <mingo@kernel.org>
      Cc: Davidlohr Bueso <davidlohr.bueso@hp.com>
      Cc: John Stultz <john.stultz@linaro.org>
      Link: http://lkml.kernel.org/r/alpine.DEB.2.02.1307042239150.11637@ionos.tec.linutronix.deSigned-off-by: NThomas Gleixner <tglx@linutronix.de>
      332962f2
    • G
      DMA: shdma: add DT support · 67eacc15
      Guennadi Liakhovetski 提交于
      This patch adds Device Tree support to the shdma driver. No special DT
      properties are used, only standard DMA DT bindings are implemented. Since
      shdma controllers reside on SoCs, their configuration is SoC-specific and
      shall be passed to the driver from the SoC platform data, using the
      auxdata procedure.
      Signed-off-by: NGuennadi Liakhovetski <g.liakhovetski+renesas@gmail.com>
      Acked-by: NArnd Bergmann <arnd@arndb.de>
      Signed-off-by: NVinod Koul <vinod.koul@intel.com>
      67eacc15
    • G
      DMA: shdma: shdma_chan_filter() has to be in shdma-base.h · d0951a23
      Guennadi Liakhovetski 提交于
      shdma_chan_filter() is a function, provided by the shdma-base.c module,
      move its declaration to the appropriate header.
      Signed-off-by: NGuennadi Liakhovetski <g.liakhovetski+renesas@gmail.com>
      Signed-off-by: NVinod Koul <vinod.koul@intel.com>
      d0951a23
    • L
      ARM: at91: dt: add header to define at_hdmac configuration · 764037c6
      Ludovic Desroches 提交于
      DMA-cell content is a concatenation of several values. In order to keep this
      stuff human readable, macros are introduced.
      
      The values for the FIFO configuration are not the same as the ones used in the
      configuration register in order to keep backward compatibility. Most devices
      use the half FIFO configuration but USART ones have to use the ASAP
      configuration. This parameter was not initially planed to be into the at91 dma
      dt binding. The third cell will be used to store this parameter, it will
      become a concatenation of the FIFO configuration and of the peripheral ID. In
      order to keep backward compatibility i.e. FIFO configuration is equal to 0, we
      have to perform a translation since the value to put in the register to set
      half FIFO is 1.
      Acked-by: NArnd Bergmann <arnd@arndb.de>
      Acked-by: NJean-Christophe PLAGNIOL-VILLARD <plagnioj@jcrosoft.com>
      Signed-off-by: NLudovic Desroches <ludovic.desroches@atmel.com>
      Signed-off-by: NNicolas Ferre <nicolas.ferre@atmel.com>
      764037c6