1. 04 10月, 2008 1 次提交
    • J
      generic block based fiemap implementation · 68c9d702
      Josef Bacik 提交于
      Any block based fs (this patch includes ext3) just has to declare its own
      fiemap() function and then call this generic function with its own
      get_block_t. This works well for block based filesystems that will map
      multiple contiguous blocks at one time, but will work for filesystems that
      only map one block at a time, you will just end up with an "extent" for each
      block. One gotcha is this will not play nicely where there is hole+data
      after the EOF. This function will assume its hit the end of the data as soon
      as it hits a hole after the EOF, so if there is any data past that it will
      not pick that up. AFAIK no block based fs does this anyway, but its in the
      comments of the function anyway just in case.
      Signed-off-by: NJosef Bacik <jbacik@redhat.com>
      Signed-off-by: NMark Fasheh <mfasheh@suse.com>
      Signed-off-by: N"Theodore Ts'o" <tytso@mit.edu>
      Cc: linux-fsdevel@vger.kernel.org
      68c9d702
  2. 10 7月, 2007 1 次提交
  3. 13 2月, 2007 1 次提交
  4. 09 12月, 2006 1 次提交
  5. 01 10月, 2006 3 次提交
  6. 27 9月, 2006 1 次提交
  7. 31 3月, 2006 1 次提交
    • J
      [PATCH] Introduce sys_splice() system call · 5274f052
      Jens Axboe 提交于
      This adds support for the sys_splice system call. Using a pipe as a
      transport, it can connect to files or sockets (latter as output only).
      
      From the splice.c comments:
      
         "splice": joining two ropes together by interweaving their strands.
      
         This is the "extended pipe" functionality, where a pipe is used as
         an arbitrary in-memory buffer. Think of a pipe as a small kernel
         buffer that you can use to transfer data from one end to the other.
      
         The traditional unix read/write is extended with a "splice()" operation
         that transfers data buffers to or from a pipe buffer.
      
         Named by Larry McVoy, original implementation from Linus, extended by
         Jens to support splicing to files and fixing the initial implementation
         bugs.
      Signed-off-by: NJens Axboe <axboe@suse.de>
      Signed-off-by: NLinus Torvalds <torvalds@osdl.org>
      5274f052
  8. 29 3月, 2006 1 次提交
  9. 23 3月, 2006 1 次提交
  10. 29 6月, 2005 1 次提交
    • M
      [PATCH] ext3: reduce allocate-with-reservation lock latencies · 21fe3471
      Mingming Cao 提交于
      Currently in ext3 block reservation code, the global filesystem reservation
      tree lock (rsv_block) is hold during the process of searching for a space
      to make a new reservation window, including while scaning the block bitmap
      to verify if the avalible window has a free block.  Holding the lock during
      bitmap scan is unnecessary and could possibly cause scalability issue and
      latency issues.
      
      This patch tries to address this by dropping the lock before scan the
      bitmap.  Before that we need to reserve the open window in case someone
      else is targetting at the same window.  Question was should we reserve the
      whole free reservable space or just the window size we need.  Reserve the
      whole free reservable space will possibly force other threads which
      intended to do block allocation nearby move to another block group(cause
      bad layout).  In this patch, we just reserve the desired size before drop
      the lock and scan the block bitmap.  This patch fixed a ext3 reservation
      latency issue seen on a cvs check out test.  Patch is tested with many fsx,
      tiobench, dbench and untar a kernel test.
      Signed-Off-By: NMingming Cao <cmm@us.ibm.com>
      Signed-off-by: NAndrew Morton <akpm@osdl.org>
      Signed-off-by: NLinus Torvalds <torvalds@osdl.org>
      21fe3471
  11. 17 4月, 2005 1 次提交
    • L
      Linux-2.6.12-rc2 · 1da177e4
      Linus Torvalds 提交于
      Initial git repository build. I'm not bothering with the full history,
      even though we have it. We can create a separate "historical" git
      archive of that later if we want to, and in the meantime it's about
      3.2GB when imported into git - space that would just make the early
      git days unnecessarily complicated, when we don't have a lot of good
      infrastructure for it.
      
      Let it rip!
      1da177e4