1. 04 7月, 2013 28 次提交
  2. 03 7月, 2013 12 次提交
    • A
      Document ->tmpfile() · 48bde8d3
      Al Viro 提交于
      Signed-off-by: NAl Viro <viro@zeniv.linux.org.uk>
      48bde8d3
    • A
      ext4: ->tmpfile() support · af51a2ac
      Al Viro 提交于
      very similar to ext3 counterpart...
      Signed-off-by: NAl Viro <viro@zeniv.linux.org.uk>
      af51a2ac
    • J
      vfs: export lseek_execute() to modules · 46a1c2c7
      Jie Liu 提交于
      For those file systems(btrfs/ext4/ocfs2/tmpfs) that support
      SEEK_DATA/SEEK_HOLE functions, we end up handling the similar
      matter in lseek_execute() to update the current file offset
      to the desired offset if it is valid, ceph also does the
      simliar things at ceph_llseek().
      
      To reduce the duplications, this patch make lseek_execute()
      public accessible so that we can call it directly from the
      underlying file systems.
      
      Thanks Dave Chinner for this suggestion.
      
      [AV: call it vfs_setpos(), don't bring the removed 'inode' argument back]
      
      v2->v1:
      - Add kernel-doc comments for lseek_execute()
      - Call lseek_execute() in ceph->llseek()
      Signed-off-by: NJie Liu <jeff.liu@oracle.com>
      Cc: Dave Chinner <dchinner@redhat.com>
      Cc: Al Viro <viro@zeniv.linux.org.uk>
      Cc: Andi Kleen <andi@firstfloor.org>
      Cc: Andrew Morton <akpm@linux-foundation.org>
      Cc: Christoph Hellwig <hch@lst.de>
      Cc: Chris Mason <chris.mason@fusionio.com>
      Cc: Josef Bacik <jbacik@fusionio.com>
      Cc: Ben Myers <bpm@sgi.com>
      Cc: Ted Tso <tytso@mit.edu>
      Cc: Hugh Dickins <hughd@google.com>
      Cc: Mark Fasheh <mfasheh@suse.com>
      Cc: Joel Becker <jlbec@evilplan.org>
      Cc: Sage Weil <sage@inktank.com>
      Signed-off-by: NAl Viro <viro@zeniv.linux.org.uk>
      46a1c2c7
    • L
      Merge branch 'for-3.11-cpuset' of git://git.kernel.org/pub/scm/linux/kernel/git/tj/cgroup · 0b0585c3
      Linus Torvalds 提交于
      Pull cpuset changes from Tejun Heo:
       "cpuset has always been rather odd about its configurations - a cgroup
        right after creation didn't allow any task executions before
        configuration, changing configuration in the parent modifies the
        descendants irreversibly and so on.  These behaviors are inherently
        nasty and almost hostile against sharing the hierarchy with other
        controllers making it very difficult to use in unified hierarchy.
      
        Li is currently in the process of updating the behaviors for
        __DEVEL__sane_behavior which is the bulk of changes in this pull
        request.  It isn't complete yet and the behaviors will change further
        but all changes are gated behind sane_behavior.  In the process, the
        rather hairy work-item punting which was used to work around the
        limitations of cgroup descendant iterator was simplified."
      
      * 'for-3.11-cpuset' of git://git.kernel.org/pub/scm/linux/kernel/git/tj/cgroup:
        cpuset: rename @cont to @cgrp
        cpuset: fix to migrate mm correctly in a corner case
        cpuset: allow to move tasks to empty cpusets
        cpuset: allow to keep tasks in empty cpusets
        cpuset: introduce effective_{cpumask|nodemask}_cpuset()
        cpuset: record old_mems_allowed in struct cpuset
        cpuset: remove async hotplug propagation work
        cpuset: let hotplug propagation work wait for task attaching
        cpuset: re-structure update_cpumask() a bit
        cpuset: remove cpuset_test_cpumask()
        cpuset: remove unnecessary variable in cpuset_attach()
        cpuset: cleanup guarantee_online_{cpus|mems}()
        cpuset: remove redundant check in cpuset_cpus_allowed_fallback()
      0b0585c3
    • L
      Merge branch 'for-3.11' of git://git.kernel.org/pub/scm/linux/kernel/git/tj/cgroup · b028161f
      Linus Torvalds 提交于
      Pull cgroup changes from Tejun Heo:
       "This pull request contains the following changes.
      
         - cgroup_subsys_state (css) reference counting has been converted to
           percpu-ref.  css is what each resource controller embeds into its
           own control structure and perform reference count against.  It may
           be used in hot paths of various subsystems and is similar to module
           refcnt in that aspect.  For example, block-cgroup's css refcnting
           was showing up a lot in Mikulaus's device-mapper scalability work
           and this should alleviate it.
      
         - cgroup subtree iterator has been updated so that RCU read lock can
           be released after grabbing reference.  This allows simplifying its
           users which requires blocking which used to build iteration list
           under RCU read lock and then traverse it outside.  This pull
           request contains simplification of cgroup core and device-cgroup.
           A separate pull request will update cpuset.
      
         - Fixes for various bugs including corner race conditions and RCU
           usage bugs.
      
         - A lot of cleanups and some prepartory work for the planned unified
           hierarchy support."
      
      * 'for-3.11' of git://git.kernel.org/pub/scm/linux/kernel/git/tj/cgroup: (48 commits)
        cgroup: CGRP_ROOT_SUBSYS_BOUND should also be ignored when mounting an existing hierarchy
        cgroup: CGRP_ROOT_SUBSYS_BOUND should be ignored when comparing mount options
        cgroup: fix deadlock on cgroup_mutex via drop_parsed_module_refcounts()
        cgroup: always use RCU accessors for protected accesses
        cgroup: fix RCU accesses around task->cgroups
        cgroup: fix RCU accesses to task->cgroups
        cgroup: grab cgroup_mutex in drop_parsed_module_refcounts()
        cgroup: fix cgroupfs_root early destruction path
        cgroup: reserve ID 0 for dummy_root and 1 for unified hierarchy
        cgroup: implement for_each_[builtin_]subsys()
        cgroup: move init_css_set initialization inside cgroup_mutex
        cgroup: s/for_each_subsys()/for_each_root_subsys()/
        cgroup: clean up find_css_set() and friends
        cgroup: remove cgroup->actual_subsys_mask
        cgroup: prefix global variables with "cgroup_"
        cgroup: convert CFTYPE_* flags to enums
        cgroup: rename cont to cgrp
        cgroup: clean up cgroup_serial_nr_cursor
        cgroup: convert cgroup_cft_commit() to use cgroup_for_each_descendant_pre()
        cgroup: make serial_nr_cursor available throughout cgroup.c
        ...
      b028161f
    • L
      Merge branch 'for-3.11' of git://git.kernel.org/pub/scm/linux/kernel/git/tj/wq · f317ff9e
      Linus Torvalds 提交于
      Pull workqueue changes from Tejun Heo:
       "Surprisingly, Lai and I didn't break too many things implementing
        custom pools and stuff last time around and there aren't any follow-up
        changes necessary at this point.
      
        The only change in this pull request is Viresh's patches to make some
        per-cpu workqueues to behave as unbound workqueues dependent on a boot
        param whose default can be configured via a config option.  This leads
        to higher processing overhead / lower bandwidth as more work items are
        bounced across CPUs; however, it can lead to noticeable powersave in
        certain configurations - ~10% w/ idlish constant workload on a
        big.LITTLE configuration according to Viresh.
      
        This is because per-cpu workqueues interfere with how the scheduler
        perceives whether or not each CPU is idle by forcing pinned tasks on
        them, which makes the scheduler's power-aware scheduling decisions
        less effective.
      
        Its effectiveness is likely less pronounced on homogenous
        configurations and this type of optimization can probably be made
        automatic; however, the changes are pretty minimal and the affected
        workqueues are clearly marked, so it's an easy gain for some
        configurations for the time being with pretty unintrusive changes."
      
      * 'for-3.11' of git://git.kernel.org/pub/scm/linux/kernel/git/tj/wq:
        fbcon: queue work on power efficient wq
        block: queue work on power efficient wq
        PHYLIB: queue work on system_power_efficient_wq
        workqueue: Add system wide power_efficient workqueues
        workqueues: Introduce new flag WQ_POWER_EFFICIENT for power oriented workqueues
      f317ff9e
    • L
      Merge branch 'for-3.11' of git://git.kernel.org/pub/scm/linux/kernel/git/tj/percpu · 13cc5601
      Linus Torvalds 提交于
      Pull per-cpu changes from Tejun Heo:
       "This pull request contains Kent's per-cpu reference counter.  It has
        gone through several iterations since the last time and the dynamic
        allocation is gone.
      
        The usual usage is relatively straight-forward although async kill
        confirm interface, which is not used int most cases, is somewhat icky.
        There also are some interface concerns - e.g.  I'm not sure about
        passing in @relesae callback during init as that becomes funny when we
        later implement synchronous kill_and_drain - but nothing too serious
        and it's quite useable now.
      
        cgroup_subsys_state refcnting has already been converted and we should
        convert module refcnt (Kent?)"
      
      * 'for-3.11' of git://git.kernel.org/pub/scm/linux/kernel/git/tj/percpu:
        percpu-refcount: use RCU-sched insted of normal RCU
        percpu-refcount: implement percpu_tryget() along with percpu_ref_kill_and_confirm()
        percpu-refcount: implement percpu_ref_cancel_init()
        percpu-refcount: add __must_check to percpu_ref_init() and don't use ACCESS_ONCE() in percpu_ref_kill_rcu()
        percpu-refcount: cosmetic updates
        percpu-refcount: consistently use plain (non-sched) RCU
        percpu-refcount: Don't use silly cmpxchg()
        percpu: implement generic percpu refcounting
      13cc5601
    • L
      Merge branch 'x86-uv-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip · 7c6809ff
      Linus Torvalds 提交于
      Pull x86 UV update from Ingo Molnar:
       "There's a single commit in this tree, which adds support for a new SGI
        UV GRU (Global Reference Unit - fast NUMA messaging ASIC) hardware
        feature to scale up and beyond: an optional distributed mode that will
        allow per-node address mapping of local GRU space, as opposed to
        mapping all GRU hardware to the same contiguous high space"
      
      * 'x86-uv-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
        x86/UV: Add GRU distributed mode mappings
      7c6809ff
    • L
      Merge branch 'x86-tracing-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip · 96a3d998
      Linus Torvalds 提交于
      Pull x86 tracing updates from Ingo Molnar:
       "This tree adds IRQ vector tracepoints that are named after the handler
        and which output the vector #, based on a zero-overhead approach that
        relies on changing the IDT entries, by Seiji Aguchi.
      
        The new tracepoints look like this:
      
         # perf list | grep -i irq_vector
          irq_vectors:local_timer_entry                      [Tracepoint event]
          irq_vectors:local_timer_exit                       [Tracepoint event]
          irq_vectors:reschedule_entry                       [Tracepoint event]
          irq_vectors:reschedule_exit                        [Tracepoint event]
          irq_vectors:spurious_apic_entry                    [Tracepoint event]
          irq_vectors:spurious_apic_exit                     [Tracepoint event]
          irq_vectors:error_apic_entry                       [Tracepoint event]
          irq_vectors:error_apic_exit                        [Tracepoint event]
         [...]"
      
      * 'x86-tracing-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
        x86/tracing: Add config option checking to the definitions of mce handlers
        trace,x86: Do not call local_irq_save() in load_current_idt()
        trace,x86: Move creation of irq tracepoints from apic.c to irq.c
        x86, trace: Add irq vector tracepoints
        x86: Rename variables for debugging
        x86, trace: Introduce entering/exiting_irq()
        tracing: Add DEFINE_EVENT_FN() macro
      96a3d998
    • L
      Merge branch 'x86-ras-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip · 3045f94a
      Linus Torvalds 提交于
      Pull x86 RAS update from Ingo Molnar:
       "The changes in this tree are:
      
         - ACPI APEI (ACPI Platform Error Interface) improvements, by Chen
           Gong
         - misc MCE fixes/cleanups"
      
      * 'x86-ras-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
        x86/mce: Update MCE severity condition check
        mce: acpi/apei: Add comments to clarify usage of the various bitfields in the MCA subsystem
        ACPI/APEI: Update einj documentation for param1/param2
        ACPI/APEI: Add parameter check before error injection
        ACPI, APEI, EINJ: Fix error return code in einj_init()
        x86, mce: Fix "braodcast" typo
      3045f94a
    • L
      Merge branch 'x86-platform-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip · 52e8ad90
      Linus Torvalds 提交于
      Pull x86 platform updates from Ingo Molnar:
       "Two changes:
      
         - A Kconfig dependency fix/cleanup
      
         - Introduce the 'make kvmconfig' KVM configuration helper utility
           that turns the current .config into a KVM-bootable config.  Useful
           for debugging specific native kernel configs that have no KVM
           config options enabled on VM setups."
      
      * 'x86-platform-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
        x86/platform: Make X86_GOLDFISH depend on X86_EXTENDED_PLATFORM
        x86/platform: Add kvmconfig to the phony targets
        x86, platform, kvm, kconfig: Turn existing .config's into KVM-capable configs
      52e8ad90
    • L
      Merge branch 'x86-mm-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip · 1982269a
      Linus Torvalds 提交于
      Pull x86 mm changes from Ingo Molnar:
       "Misc improvements:
      
         - Fix /proc/mtrr reporting
         - Fix ioremap printout
         - Remove the unused pvclock fixmap entry on 32-bit
         - misc cleanups"
      
      * 'x86-mm-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
        x86/ioremap: Correct function name output
        x86: Fix /proc/mtrr with base/size more than 44bits
        ix86: Don't waste fixmap entries
        x86/mm: Drop unneeded include <asm/*pgtable, page*_types.h>
        x86_64: Correct phys_addr in cleanup_highmap comment
      1982269a