1. 15 Sep, 2013 6 commits
    • Linus Torvalds's avatar
      Merge branch 'for_linus' of git://cavan.codon.org.uk/platform-drivers-x86 · cd619e21
      Linus Torvalds authored
      Pull x86 platform updates from Matthew Garrett:
       "Nothing amazing here, almost entirely cleanups and minor bugfixes and
        one bit of hardware enablement in the amilo-rfkill driver"
      
      * 'for_linus' of git://cavan.codon.org.uk/platform-drivers-x86:
        platform/x86: panasonic-laptop: reuse module_acpi_driver
        samsung-laptop: fix config build error
        platform: x86: remove unnecessary platform_set_drvdata()
        amilo-rfkill: Enable using amilo-rfkill with the FSC Amilo L1310.
        wmi: parse_wdg() should return kernel error codes
        hp_wmi: Fix unregister order in hp_wmi_rfkill_setup()
        platform: replace strict_strto*() with kstrto*()
        x86: irst: use module_acpi_driver to simplify the code
        x86: smartconnect: use module_acpi_driver to simplify the code
        platform samsung-q10: use ACPI instead of direct EC calls
        thinkpad_acpi: add the ability setting TPACPI_LED_NONE by quirk
        thinkpad_acpi: return -NODEV while operating uninitialized LEDs
      cd619e21
    • Linus Torvalds's avatar
      Merge tag 'scsi-misc' of git://git.kernel.org/pub/scm/linux/kernel/git/jejb/scsi · 0375ec58
      Linus Torvalds authored
      Pull misc SCSI driver updates from James Bottomley:
       "This patch set is a set of driver updates (megaraid_sas, fnic, lpfc,
        ufs, hpsa) we also have a couple of bug fixes (sd out of bounds and
        ibmvfc error handling) and the first round of esas2r checker fixes and
        finally the much anticipated big endian additions for megaraid_sas"
      
      * tag 'scsi-misc' of git://git.kernel.org/pub/scm/linux/kernel/git/jejb/scsi: (47 commits)
        [SCSI] fnic: fnic Driver Tuneables Exposed through CLI
        [SCSI] fnic: Kernel panic while running sh/nosh with max lun cfg
        [SCSI] fnic: Hitting BUG_ON(io_req->abts_done) in fnic_rport_exch_reset
        [SCSI] fnic: Remove QUEUE_FULL handling code
        [SCSI] fnic: On system with >1.1TB RAM, VIC fails multipath after boot up
        [SCSI] fnic: FC stat param seconds_since_last_reset not getting updated
        [SCSI] sd: Fix potential out-of-bounds access
        [SCSI] lpfc 8.3.42: Update lpfc version to driver version 8.3.42
        [SCSI] lpfc 8.3.42: Fixed issue of task management commands having a fixed timeout
        [SCSI] lpfc 8.3.42: Fixed inconsistent spin lock usage.
        [SCSI] lpfc 8.3.42: Fix driver's abort loop functionality to skip IOs already getting aborted
        [SCSI] lpfc 8.3.42: Fixed failure to allocate SCSI buffer on PPC64 platform for SLI4 devices
        [SCSI] lpfc 8.3.42: Fix WARN_ON when driver unloads
        [SCSI] lpfc 8.3.42: Avoided making pci bar ioremap call during dual-chute WQ/RQ pci bar selection
        [SCSI] lpfc 8.3.42: Fixed driver iocbq structure's iocb_flag field running out of space
        [SCSI] lpfc 8.3.42: Fix crash on driver load due to cpu affinity logic
        [SCSI] lpfc 8.3.42: Fixed logging format of setting driver sysfs attributes hard to interpret
        [SCSI] lpfc 8.3.42: Fixed back to back RSCNs discovery failure.
        [SCSI] lpfc 8.3.42: Fixed race condition between BSG I/O dispatch and timeout handling
        [SCSI] lpfc 8.3.42: Fixed function mode field defined too small for not recognizing dual-chute mode
        ...
      0375ec58
    • Linus Torvalds's avatar
      Merge branch 'slab/next' of git://git.kernel.org/pub/scm/linux/kernel/git/penberg/linux · bff157b3
      Linus Torvalds authored
      Pull SLAB update from Pekka Enberg:
       "Nothing terribly exciting here apart from Christoph's kmalloc
        unification patches that brings sl[aou]b implementations closer to
        each other"
      
      * 'slab/next' of git://git.kernel.org/pub/scm/linux/kernel/git/penberg/linux:
        slab: Use correct GFP_DMA constant
        slub: remove verify_mem_not_deleted()
        mm/sl[aou]b: Move kmallocXXX functions to common code
        mm, slab_common: add 'unlikely' to size check of kmalloc_slab()
        mm/slub.c: beautify code for removing redundancy 'break' statement.
        slub: Remove unnecessary page NULL check
        slub: don't use cpu partial pages on UP
        mm/slub: beautify code for 80 column limitation and tab alignment
        mm/slub: remove 'per_cpu' which is useless variable
      bff157b3
    • Linus Torvalds's avatar
      Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/dtor/input · 8bf5e36d
      Linus Torvalds authored
      Pull input update from Dmitry Torokhov:
       "The only change is David Hermann's new EVIOCREVOKE evdev ioctl that
        allows safely passing file descriptors to input devices to session
        processes and later being able to stop delivery of events through
        these fds so that inactive sessions will no longer receive user input
        that does not belong to them"
      
      * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/dtor/input:
        Input: evdev - add EVIOCREVOKE ioctl
      8bf5e36d
    • Linus Torvalds's avatar
      vfs: fix typo in comment in recent dentry work · 05a8252b
      Linus Torvalds authored
      
      
      Sedat points out that I transposed some letters in "LRU" and wrote "RLU"
      instead in one of the new comments explaining the flow.  Let's just fix
      it.
      Reported-by: default avatarSedat Dilek <sedat.dilek@jpberlin.de>
      Signed-off-by: default avatarLinus Torvalds <torvalds@linux-foundation.org>
      05a8252b
    • Davidlohr Bueso's avatar
      partitions/efi: loosen check fot pmbr size in lba · 6b02fa59
      Davidlohr Bueso authored
      Matt found that commit 27a7c642 ("partitions/efi: account for pmbr
      size in lba") caused his GPT formatted eMMC device not to boot.  The
      reason is that this commit enforced Linux to always check the lesser of
      the whole disk or 2Tib for the pMBR size in LBA.  While most disk
      partitioning tools out there create a pMBR with these characteristics,
      Microsoft does not, as it always sets the entry to the maximum 32-bit
      limitation - even though a drive may be smaller than that[1].
      
      Loosen this check and only verify that the size is either the whole disk
      or 0xFFFFFFFF.  No tool in its right mind would set it to any value
      other than these.
      
      [1] http://thestarman.pcministry.com/asm/mbr/GPT.htm#GPTPT
      
      Reported-and-tested-by: default avatarMatt Porter <matt.porter@linaro.org>
      Signed-off-by: default avatarDavidlohr Bueso <davidlohr@hp.com>
      Signed-off-by: default avatarLinus Torvalds <torvalds@linux-foundation.org>
      6b02fa59
  2. 13 Sep, 2013 11 commits
  3. 12 Sep, 2013 23 commits
    • Mark Brown's avatar
      blackfin: Ignore generated uImages · 08b67faa
      Mark Brown authored
      
      
      We have the build infrastructure to generate uImages so we should ignore
      the resulting generated files.
      Signed-off-by: default avatarMark Brown <broonie@linaro.org>
      Acked-by: default avatarMike Frysinger <vapier@gentoo.org>
      08b67faa
    • Sonic Zhang's avatar
      blackfin: Add STMMAC platform data to enable dwmac1000 driver on BF60x. · 1d899fd6
      Sonic Zhang authored
      
      
      - Enable GMAC
      - Set propler DMA PBL
      - Disable DMA store and forward mode
      - Select PTP input clock from MII
      clock.
      Signed-off-by: default avatarSonic Zhang <sonic.zhang@analog.com>
      Signed-off-by: default avatarSteven Miao <realmz6@gmail.com>
      1d899fd6
    • Scott Jiang's avatar
    • Scott Jiang's avatar
      4940c53d
    • Steven Miao's avatar
      clock: add stmmac clock for ethernet driver · 3036dccf
      Steven Miao authored
      
      Signed-off-by: default avatarSteven Miao <realmz6@gmail.com>
      3036dccf
    • Sonic Zhang's avatar
    • Steven Miao's avatar
      blackfin: scb: Add system crossbar init code. · 24a70cf2
      Steven Miao authored
      
      
      If SCB exists in select blackfin cpu, developer can change the SCB
      priority in kernel configuration.
      Signed-off-by: default avatarSonic Zhang <sonic.zhang@analog.com>
      Signed-off-by: default avatarSteven Miao <realmz6@gmail.com>
      24a70cf2
    • Linus Torvalds's avatar
      Merge branch 'upstream' of git://git.linux-mips.org/pub/scm/ralf/upstream-linus · 5a7d8a28
      Linus Torvalds authored
      Pull MIPS updates from Ralf Baechle:
       "This has been sitting in -next for a while with no objections and all
        MIPS defconfigs except one are building fine; that one platform got
        broken by another patch in your tree and I'm going to submit a patch
        separately.
      
         - a handful of fixes that didn't make 3.11
         - a few bits of Octeon 3 support with more to come for a later
           release
         - platform enhancements for Octeon, ath79, Lantiq, Netlogic and
           Ralink SOCs
         - a GPIO driver for the Octeon
         - some dusting off of the DECstation code
         - the usual dose of cleanups"
      
      * 'upstream' of git://git.linux-mips.org/pub/scm/ralf/upstream-linus: (65 commits)
        MIPS: DMA: Fix BUG due to smp_processor_id() in preemptible code
        MIPS: kexec: Fix random crashes while loading crashkernel
        MIPS: kdump: Skip walking indirection page for crashkernels
        MIPS: DECstation HRT calibration bug fixes
        MIPS: Export copy_from_user_page() (needed by lustre)
        MIPS: Add driver for the built-in PCI controller of the RT3883 SoC
        MIPS: DMA: For BMIPS5000 cores flush region just like non-coherent R10000
        MIPS: ralink: Add support for reset-controller API
        MIPS: ralink: mt7620: Add cpu-feature-override header
        MIPS: ralink: mt7620: Add spi clock definition
        MIPS: ralink: mt7620: Add wdt clock definition
        MIPS: ralink: mt7620: Improve clock frequency detection
        MIPS: ralink: mt7620: This SoC has EHCI and OHCI hosts
        MIPS: ralink: mt7620: Add verbose ram info
        MIPS: ralink: Probe clocksources from OF
        MIPS: ralink: Add support for systick timer found on newer ralink SoC
        MIPS: ralink: Add support for periodic timer irq
        MIPS: Netlogic: Built-in DTB for XLP2xx SoC boards
        MIPS: Netlogic: Add support for USB on XLP2xx
        MIPS: Netlogic: XLP2xx update for I2C controller
        ...
      5a7d8a28
    • Linus Torvalds's avatar
      Merge tag 'xfs-for-linus-v3.12-rc1-2' of git://oss.sgi.com/xfs/xfs · e0ea4045
      Linus Torvalds authored
      Pull xfs update #2 from Ben Myers:
       "Here we have defrag support for v5 superblock, a number of bugfixes
        and a cleanup or two.
      
         - defrag support for CRC filesystems
         - fix endian worning in xlog_recover_get_buf_lsn
         - fixes for sparse warnings
         - fix for assert in xfs_dir3_leaf_hdr_from_disk
         - fix for log recovery of remote symlinks
         - fix for log recovery of btree root splits
         - fixes formemory allocation failures with ACLs
         - fix for assert in xfs_buf_item_relse
         - fix for assert in xfs_inode_buf_verify
         - fix an assignment in an assert that should be a test in
           xfs_bmbt_change_owner
         - remove dead code in xlog_recover_inode_pass2"
      
      * tag 'xfs-for-linus-v3.12-rc1-2' of git://oss.sgi.com/xfs/xfs:
        xfs: remove dead code from xlog_recover_inode_pass2
        xfs: = vs == typo in ASSERT()
        xfs: don't assert fail on bad inode numbers
        xfs: aborted buf items can be in the AIL.
        xfs: factor all the kmalloc-or-vmalloc fallback allocations
        xfs: fix memory allocation failures with ACLs
        xfs: ensure we copy buffer type in da btree root splits
        xfs: set remote symlink buffer type for recovery
        xfs: recovery of swap extents operations for CRC filesystems
        xfs: swap extents operations for CRC filesystems
        xfs: check magic numbers in dir3 leaf verifier first
        xfs: fix some minor sparse warnings
        xfs: fix endian warning in xlog_recover_get_buf_lsn()
      e0ea4045
    • Linus Torvalds's avatar
      Merge branch 'for-next' of git://git.kernel.org/pub/scm/linux/kernel/git/nab/target-pending · 48efe453
      Linus Torvalds authored
      Pull SCSI target updates from Nicholas Bellinger:
       "Lots of activity again this round for I/O performance optimizations
        (per-cpu IDA pre-allocation for vhost + iscsi/target), and the
        addition of new fabric independent features to target-core
        (COMPARE_AND_WRITE + EXTENDED_COPY).
      
        The main highlights include:
      
         - Support for iscsi-target login multiplexing across individual
           network portals
         - Generic Per-cpu IDA logic (kent + akpm + clameter)
         - Conversion of vhost to use per-cpu IDA pre-allocation for
           descriptors, SGLs and userspace page pointer list
         - Conversion of iscsi-target + iser-target to use per-cpu IDA
           pre-allocation for descriptors
         - Add support for generic COMPARE_AND_WRITE (AtomicTestandSet)
           emulation for virtual backend drivers
         - Add support for generic EXTENDED_COPY (CopyOffload) emulation for
           virtual backend drivers.
         - Add support for fast memory registration mode to iser-target (Vu)
      
        The patches to add COMPARE_AND_WRITE and EXTENDED_COPY support are of
        particular significance, which make us the first and only open source
        target to support the full set of VAAI primitives.
      
        Currently Linux clients are lacking upstream support to actually
        utilize these primitives.  However, with server side support now in
        place for folks like MKP + ZAB working on the client, this logic once
        reserved for the highest end of storage arrays, can now be run in VMs
        on their laptops"
      
      * 'for-next' of git://git.kernel.org/pub/scm/linux/kernel/git/nab/target-pending: (50 commits)
        target/iscsi: Bump versions to v4.1.0
        target: Update copyright ownership/year information to 2013
        iscsi-target: Bump default TCP listen backlog to 256
        target: Fix >= v3.9+ regression in PR APTPL + ALUA metadata write-out
        iscsi-target; Bump default CmdSN Depth to 64
        iscsi-target: Remove unnecessary wait_for_completion in iscsi_get_thread_set
        iscsi-target: Add thread_set->ts_activate_sem + use common deallocate
        iscsi-target: Fix race with thread_pre_handler flush_signals + ISCSI_THREAD_SET_DIE
        target: remove unused including <linux/version.h>
        iser-target: introduce fast memory registration mode (FRWR)
        iser-target: generalize rdma memory registration and cleanup
        iser-target: move rdma wr processing to a shared function
        target: Enable global EXTENDED_COPY setup/release
        target: Add Third Party Copy (3PC) bit in INQUIRY response
        target: Enable EXTENDED_COPY setup in spc_parse_cdb
        target: Add support for EXTENDED_COPY copy offload emulation
        target: Avoid non-existent tg_pt_gp_mem in target_alua_state_check
        target: Add global device list for EXTENDED_COPY
        target: Make helpers non static for EXTENDED_COPY command setup
        target: Make spc_parse_naa_6h_vendor_specific non static
        ...
      48efe453
    • Linus Torvalds's avatar
      Merge branch 'akpm' (patches from Andrew Morton) · ac4de954
      Linus Torvalds authored
      Merge more patches from Andrew Morton:
       "The rest of MM.  Plus one misc cleanup"
      
      * emailed patches from Andrew Morton <akpm@linux-foundation.org>: (35 commits)
        mm/Kconfig: add MMU dependency for MIGRATION.
        kernel: replace strict_strto*() with kstrto*()
        mm, thp: count thp_fault_fallback anytime thp fault fails
        thp: consolidate code between handle_mm_fault() and do_huge_pmd_anonymous_page()
        thp: do_huge_pmd_anonymous_page() cleanup
        thp: move maybe_pmd_mkwrite() out of mk_huge_pmd()
        mm: cleanup add_to_page_cache_locked()
        thp: account anon transparent huge pages into NR_ANON_PAGES
        truncate: drop 'oldsize' truncate_pagecache() parameter
        mm: make lru_add_drain_all() selective
        memcg: document cgroup dirty/writeback memory statistics
        memcg: add per cgroup writeback pages accounting
        memcg: check for proper lock held in mem_cgroup_update_page_stat
        memcg: remove MEMCG_NR_FILE_MAPPED
        memcg: reduce function dereference
        memcg: avoid overflow caused by PAGE_ALIGN
        memcg: rename RESOURCE_MAX to RES_COUNTER_MAX
        memcg: correct RESOURCE_MAX to ULLONG_MAX
        mm: memcg: do not trap chargers with full callstack on OOM
        mm: memcg: rework and document OOM waiting and wakeup
        ...
      ac4de954
    • Chen Gang's avatar
      mm/Kconfig: add MMU dependency for MIGRATION. · de32a817
      Chen Gang authored
      
      
      MIGRATION must depend on MMU, or allmodconfig for the nommu sh
      architecture fails to build:
      
          CC      mm/migrate.o
        mm/migrate.c: In function 'remove_migration_pte':
        mm/migrate.c:134:3: error: implicit declaration of function 'pmd_trans_huge' [-Werror=implicit-function-declaration]
           if (pmd_trans_huge(*pmd))
           ^
        mm/migrate.c:149:2: error: implicit declaration of function 'is_swap_pte' [-Werror=implicit-function-declaration]
          if (!is_swap_pte(pte))
          ^
        ...
      
      Also let CMA depend on MMU, or when NOMMU, if we select CMA, it will
      select MIGRATION by force.
      Signed-off-by: default avatarChen Gang <gang.chen@asianux.com>
      Reviewed-by: default avatarMichal Hocko <mhocko@suse.cz>
      Signed-off-by: default avatarAndrew Morton <akpm@linux-foundation.org>
      Signed-off-by: default avatarLinus Torvalds <torvalds@linux-foundation.org>
      de32a817
    • Jingoo Han's avatar
      kernel: replace strict_strto*() with kstrto*() · 6072ddc8
      Jingoo Han authored
      
      
      The usage of strict_strto*() is not preferred, because strict_strto*() is
      obsolete.  Thus, kstrto*() should be used.
      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>
      6072ddc8
    • David Rientjes's avatar
      mm, thp: count thp_fault_fallback anytime thp fault fails · 17766dde
      David Rientjes authored
      
      
      Currently, thp_fault_fallback in vmstat only gets incremented if a
      hugepage allocation fails.  If current's memcg hits its limit or the page
      fault handler returns an error, it is incorrectly accounted as a
      successful thp_fault_alloc.
      
      Count thp_fault_fallback anytime the page fault handler falls back to
      using regular pages and only count thp_fault_alloc when a hugepage has
      actually been faulted.
      Signed-off-by: default avatarDavid Rientjes <rientjes@google.com>
      Cc: Mel Gorman <mgorman@suse.de>
      Cc: Andrea Arcangeli <aarcange@redhat.com>
      Cc: "Kirill 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>
      17766dde
    • Kirill A. Shutemov's avatar
      thp: consolidate code between handle_mm_fault() and do_huge_pmd_anonymous_page() · c0292554
      Kirill A. Shutemov authored
      
      
      do_huge_pmd_anonymous_page() has copy-pasted piece of handle_mm_fault()
      to handle fallback path.
      
      Let's consolidate code back by introducing VM_FAULT_FALLBACK return
      code.
      Signed-off-by: default avatarKirill A. Shutemov <kirill.shutemov@linux.intel.com>
      Acked-by: default avatarHillf Danton <dhillf@gmail.com>
      Cc: Andrea Arcangeli <aarcange@redhat.com>
      Cc: Al Viro <viro@zeniv.linux.org.uk>
      Cc: Hugh Dickins <hughd@google.com>
      Cc: Wu Fengguang <fengguang.wu@intel.com>
      Cc: Jan Kara <jack@suse.cz>
      Cc: Mel Gorman <mgorman@suse.de>
      Cc: Andi Kleen <ak@linux.intel.com>
      Cc: Matthew Wilcox <willy@linux.intel.com>
      Cc: Dave Hansen <dave.hansen@linux.intel.com>
      Signed-off-by: default avatarAndrew Morton <akpm@linux-foundation.org>
      Signed-off-by: default avatarLinus Torvalds <torvalds@linux-foundation.org>
      c0292554
    • Kirill A. Shutemov's avatar
      thp: do_huge_pmd_anonymous_page() cleanup · 128ec037
      Kirill A. Shutemov authored
      
      
      Minor cleanup: unindent most code of the fucntion by inverting one
      condition.  It's preparation for the next patch.
      
      No functional changes.
      Signed-off-by: default avatarKirill A. Shutemov <kirill.shutemov@linux.intel.com>
      Acked-by: default avatarHillf Danton <dhillf@gmail.com>
      Cc: Andrea Arcangeli <aarcange@redhat.com>
      Cc: Al Viro <viro@zeniv.linux.org.uk>
      Cc: Hugh Dickins <hughd@google.com>
      Cc: Wu Fengguang <fengguang.wu@intel.com>
      Cc: Jan Kara <jack@suse.cz>
      Cc: Mel Gorman <mgorman@suse.de>
      Cc: Andi Kleen <ak@linux.intel.com>
      Cc: Matthew Wilcox <willy@linux.intel.com>
      Cc: Dave Hansen <dave.hansen@linux.intel.com>
      Signed-off-by: default avatarAndrew Morton <akpm@linux-foundation.org>
      Signed-off-by: default avatarLinus Torvalds <torvalds@linux-foundation.org>
      128ec037
    • Kirill A. Shutemov's avatar
      thp: move maybe_pmd_mkwrite() out of mk_huge_pmd() · 3122359a
      Kirill A. Shutemov authored
      
      
      It's confusing that mk_huge_pmd() has semantics different from mk_pte() or
      mk_pmd().  I spent some time on debugging issue cased by this
      inconsistency.
      
      Let's move maybe_pmd_mkwrite() out of mk_huge_pmd() and adjust prototype
      to match mk_pte().
      Signed-off-by: default avatarKirill A. Shutemov <kirill.shutemov@linux.intel.com>
      Acked-by: default avatarDave Hansen <dave.hansen@linux.intel.com>
      Cc: Andrea Arcangeli <aarcange@redhat.com>
      Cc: Al Viro <viro@zeniv.linux.org.uk>
      Cc: Hugh Dickins <hughd@google.com>
      Cc: Wu Fengguang <fengguang.wu@intel.com>
      Cc: Jan Kara <jack@suse.cz>
      Cc: Mel Gorman <mgorman@suse.de>
      Cc: Andi Kleen <ak@linux.intel.com>
      Cc: Matthew Wilcox <willy@linux.intel.com>
      Cc: Hillf Danton <dhillf@gmail.com>
      Signed-off-by: default avatarAndrew Morton <akpm@linux-foundation.org>
      Signed-off-by: default avatarLinus Torvalds <torvalds@linux-foundation.org>
      3122359a
    • Kirill A. Shutemov's avatar
      mm: cleanup add_to_page_cache_locked() · 66a0c8ee
      Kirill A. Shutemov authored
      
      
      Make add_to_page_cache_locked() cleaner:
      
       - unindent most code of the function by inverting one condition;
       - streamline code no-error path;
       - move insert error path outside normal code path;
       - call radix_tree_preload_end() earlier;
      
      No functional changes.
      Signed-off-by: default avatarKirill A. Shutemov <kirill.shutemov@linux.intel.com>
      Acked-by: default avatarDave Hansen <dave.hansen@linux.intel.com>
      Cc: Andrea Arcangeli <aarcange@redhat.com>
      Cc: Al Viro <viro@zeniv.linux.org.uk>
      Cc: Hugh Dickins <hughd@google.com>
      Cc: Wu Fengguang <fengguang.wu@intel.com>
      Cc: Jan Kara <jack@suse.cz>
      Cc: Mel Gorman <mgorman@suse.de>
      Cc: Andi Kleen <ak@linux.intel.com>
      Cc: Matthew Wilcox <willy@linux.intel.com>
      Cc: Hillf Danton <dhillf@gmail.com>
      Signed-off-by: default avatarAndrew Morton <akpm@linux-foundation.org>
      Signed-off-by: default avatarLinus Torvalds <torvalds@linux-foundation.org>
      66a0c8ee
    • Kirill A. Shutemov's avatar
      thp: account anon transparent huge pages into NR_ANON_PAGES · 3cd14fcd
      Kirill A. Shutemov authored
      
      
      We use NR_ANON_PAGES as base for reporting AnonPages to user.  There's
      not much sense in not accounting transparent huge pages there, but add
      them on printing to user.
      
      Let's account transparent huge pages in NR_ANON_PAGES in the first place.
      Signed-off-by: default avatarKirill A. Shutemov <kirill.shutemov@linux.intel.com>
      Acked-by: default avatarDave Hansen <dave.hansen@linux.intel.com>
      Cc: Andrea Arcangeli <aarcange@redhat.com>
      Cc: Al Viro <viro@zeniv.linux.org.uk>
      Cc: Hugh Dickins <hughd@google.com>
      Cc: Wu Fengguang <fengguang.wu@intel.com>
      Cc: Jan Kara <jack@suse.cz>
      Cc: Mel Gorman <mgorman@suse.de>
      Cc: Andi Kleen <ak@linux.intel.com>
      Cc: Matthew Wilcox <willy@linux.intel.com>
      Cc: Hillf Danton <dhillf@gmail.com>
      Cc: Ning Qu <quning@google.com>
      Signed-off-by: default avatarAndrew Morton <akpm@linux-foundation.org>
      Signed-off-by: default avatarLinus Torvalds <torvalds@linux-foundation.org>
      3cd14fcd
    • Kirill A. Shutemov's avatar
      truncate: drop 'oldsize' truncate_pagecache() parameter · 7caef267
      Kirill A. Shutemov authored
      truncate_pagecache() doesn't care about old size since commit
      cedabed4
      
       ("vfs: Fix vmtruncate() regression").  Let's drop it.
      Signed-off-by: default avatarKirill A. Shutemov <kirill.shutemov@linux.intel.com>
      Cc: OGAWA Hirofumi <hirofumi@mail.parknet.co.jp>
      Signed-off-by: default avatarAndrew Morton <akpm@linux-foundation.org>
      Signed-off-by: default avatarLinus Torvalds <torvalds@linux-foundation.org>
      7caef267
    • Chris Metcalf's avatar
      mm: make lru_add_drain_all() selective · 5fbc4616
      Chris Metcalf authored
      
      
      make lru_add_drain_all() only selectively interrupt the cpus that have
      per-cpu free pages that can be drained.
      
      This is important in nohz mode where calling mlockall(), for example,
      otherwise will interrupt every core unnecessarily.
      
      This is important on workloads where nohz cores are handling 10 Gb traffic
      in userspace.  Those CPUs do not enter the kernel and place pages into LRU
      pagevecs and they really, really don't want to be interrupted, or they
      drop packets on the floor.
      Signed-off-by: default avatarChris Metcalf <cmetcalf@tilera.com>
      Reviewed-by: default avatarTejun Heo <tj@kernel.org>
      Signed-off-by: default avatarAndrew Morton <akpm@linux-foundation.org>
      Signed-off-by: default avatarLinus Torvalds <torvalds@linux-foundation.org>
      5fbc4616
    • Sha Zhengju's avatar
      memcg: document cgroup dirty/writeback memory statistics · 9cb2dc1c
      Sha Zhengju authored
      
      Signed-off-by: default avatarSha Zhengju <handai.szj@taobao.com>
      Cc: Fengguang Wu <fengguang.wu@intel.com>
      Cc: Greg Thelen <gthelen@google.com>
      Cc: KAMEZAWA Hiroyuki <kamezawa.hiroyu@jp.fujitsu.com>
      Cc: Michal Hocko <mhocko@suse.cz>
      Cc: Johannes Weiner <hannes@cmpxchg.org>
      Signed-off-by: default avatarAndrew Morton <akpm@linux-foundation.org>
      Signed-off-by: default avatarLinus Torvalds <torvalds@linux-foundation.org>
      9cb2dc1c
    • Sha Zhengju's avatar
      memcg: add per cgroup writeback pages accounting · 3ea67d06
      Sha Zhengju authored
      Add memcg routines to count writeback pages, later dirty pages will also
      be accounted.
      
      After Kame's commit 89c06bd5
      
       ("memcg: use new logic for page stat
      accounting"), we can use 'struct page' flag to test page state instead
      of per page_cgroup flag.  But memcg has a feature to move a page from a
      cgroup to another one and may have race between "move" and "page stat
      accounting".  So in order to avoid the race we have designed a new lock:
      
               mem_cgroup_begin_update_page_stat()
               modify page information        -->(a)
               mem_cgroup_update_page_stat()  -->(b)
               mem_cgroup_end_update_page_stat()
      
      It requires both (a) and (b)(writeback pages accounting) to be pretected
      in mem_cgroup_{begin/end}_update_page_stat().  It's full no-op for
      !CONFIG_MEMCG, almost no-op if memcg is disabled (but compiled in), rcu
      read lock in the most cases (no task is moving), and spin_lock_irqsave
      on top in the slow path.
      
      There're two writeback interfaces to modify: test_{clear/set}_page_writeback().
      And the lock order is:
      	--> memcg->move_lock
      	  --> mapping->tree_lock
      Signed-off-by: default avatarSha Zhengju <handai.szj@taobao.com>
      Acked-by: default avatarMichal Hocko <mhocko@suse.cz>
      Reviewed-by: default avatarGreg Thelen <gthelen@google.com>
      Cc: Fengguang Wu <fengguang.wu@intel.com>
      Cc: KAMEZAWA Hiroyuki <kamezawa.hiroyu@jp.fujitsu.com>
      Cc: Johannes Weiner <hannes@cmpxchg.org>
      Signed-off-by: default avatarAndrew Morton <akpm@linux-foundation.org>
      Signed-off-by: default avatarLinus Torvalds <torvalds@linux-foundation.org>
      3ea67d06