1. 14 10月, 2010 17 次提交
  2. 26 9月, 2010 1 次提交
  3. 25 9月, 2010 2 次提交
  4. 22 9月, 2010 1 次提交
  5. 10 9月, 2010 13 次提交
  6. 23 8月, 2010 6 次提交
    • M
      loop: add some basic read-only sysfs attributes · ee862730
      Milan Broz 提交于
      Create /sys/block/loopX/loop directory and provide these attributes:
       - backing_file
       - autoclear
       - offset
       - sizelimit
      
      This loop directory is present only if loop device is configured.
      
      To be used in util-linux-ng (and possibly elsewhere like udev rules)
      where code need to get loop attributes from kernel (and not store
      duplicate info in userspace).
      
      Moreover loop ioctls are not even able to provide full backing
      file info because of buffer limits.
      Signed-off-by: NMilan Broz <mbroz@redhat.com>
      Signed-off-by: NJens Axboe <jaxboe@fusionio.com>
      ee862730
    • L
      Merge branch 'radix-tree' of git://git.kernel.org/pub/scm/linux/kernel/git/dgc/xfsdev · 9ee47476
      Linus Torvalds 提交于
      * 'radix-tree' of git://git.kernel.org/pub/scm/linux/kernel/git/dgc/xfsdev:
        radix-tree: radix_tree_range_tag_if_tagged() can set incorrect tags
        radix-tree: clear all tags in radix_tree_node_rcu_free
      9ee47476
    • L
      Linux 2.6.36-rc2 · 76be97c1
      Linus Torvalds 提交于
      76be97c1
    • D
      radix-tree: radix_tree_range_tag_if_tagged() can set incorrect tags · 144dcfc0
      Dave Chinner 提交于
      Commit ebf8aa44 ("radix-tree:
      omplement function radix_tree_range_tag_if_tagged") does not safely
      set tags on on intermediate tree nodes. The code walks down the tree
      setting tags before it has fully resolved the path to the leaf under
      the assumption there will be a leaf slot with the tag set in the
      range it is searching.
      
      Unfortunately, this is not a valid assumption - we can abort after
      setting a tag on an intermediate node if we overrun the number of
      tags we are allowed to set in a batch, or stop scanning because we
      we have passed the last scan index before we reach a leaf slot with
      the tag we are searching for set.
      
      As a result, we can leave the function with tags set on intemediate
      nodes which can be tripped over later by tag-based lookups. The
      result of these stale tags is that lookup may end prematurely or
      livelock because the lookup cannot make progress.
      
      The fix for the problem involves reocrding the traversal path we
      take to the leaf nodes, and only propagating the tags back up the
      tree once the tag is set in the leaf node slot. We are already
      recording the path for efficient traversal, so there is no
      additional overhead to do the intermediately node tag setting in
      this manner.
      
      This fixes a radix tree lookup livelock triggered by the new
      writeback sync livelock avoidance code introduced in commit
      f446daae ("mm: implement writeback
      livelock avoidance using page tagging").
      Signed-off-by: NDave Chinner <dchinner@redhat.com>
      Acked-by: NJan Kara <jack@suse.cz>
      144dcfc0
    • D
      radix-tree: clear all tags in radix_tree_node_rcu_free · b6dd0865
      Dave Chinner 提交于
      Commit f446daae ("mm: implement
      writeback livelock avoidance using page tagging") introduced a new
      radix tree tag, increasing the number of tags in each node from 2 to
      3. It did not, however, fix up the code in
      radix_tree_node_rcu_free() that cleans up after radix_tree_shrink()
      and hence could leave stray tags set in the new tag array.
      
      The result is that the livelock avoidance code added in the the
      above commit would hit stale tags when doing tag based lookups,
      resulting in livelocks when trying to traverse the tree.
      
      Fix this problem in radix_tree_node_rcu_free() so it doesn't happen
      again in the future by using a loop to walk all the tags up to
      RADIX_TREE_MAX_TAGS to clear the stray tags radix_tree_shrink()
      leaves behind.
      Signed-off-by: NDave Chinner <dchinner@redhat.com>
      Acked-by: NNick Piggin <npiggin@kernel.dk>
      Acked-by: NJan Kara <jack@suse.cz>
      b6dd0865
    • L
      Merge branch 'kvm-updates/2.6.36' of git://git.kernel.org/pub/scm/virt/kvm/kvm · 3dc8d7f0
      Linus Torvalds 提交于
      * 'kvm-updates/2.6.36' of git://git.kernel.org/pub/scm/virt/kvm/kvm:
        KVM: PIT: free irq source id in handling error path
        KVM: destroy workqueue on kvm_create_pit() failures
        KVM: fix poison overwritten caused by using wrong xstate size
      3dc8d7f0