linux-btrfs.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: Chris Mason <chris.mason@oracle.com>
To: "Linus Torvalds" <torvalds@linux-foundation.org>,
	"linux-btrfs" <linux-btrfs@vger.kernel.org>,
	"linux-kernel" <linux-kernel@vger.kernel.org>
Subject: [GIT PULL] Btrfs updates
Date: Fri, 27 May 2011 15:55:49 -0400	[thread overview]
Message-ID: <1306525303-sup-718@shiny> (raw)

Hi everyone,

I always thought that I'd be retired and with my flying car at the
beach by the time 3.0 came out, but I've setup the for-linus branch of
the btrfs-unstable tree for pulling:

git://git.kernel.org/pub/scm/linux/kernel/git/mason/btrfs-unstable.git for-linus

This pull request is probably the biggest I've sent, but it isn't
a code dump into our shiny new .0 rc.  The bulk of the changes are
three separate projects that have been going on for 6-8 months:

	A new btrfs inode allocation cache (Li Zefan)
	Delayed metadata insertion into the btree (Miao Xe)
	Device scrubbing (Arne Jansen)

On top of that Dave Sterba kicked in a series of code cleanups and Josef
Bacik did some really nice tuning.  The short log lists a few other
cleanups and fixes too.

I coded up a mount -o autodefrag that will detect random writes
into existing files and kick off background defragging.  It is well
suited to bdb or sqlite databases, but not virtualization images or big
databases (yet).  Once I make sure it doesn't defrag files over and over
again, I'll move this toward the default.

David Sterba (17) commits (+310/-3253):
    btrfs: rename variables clashing with global function names (+53/-53)
    btrfs: use printk_ratelimited instead of printk_ratelimit (+10/-24)
    btrfs: drop unused parameter from btrfs_release_path (+160/-160)
    btrfs: drop unused parameter from extent_map_tree_init (+5/-7)
    btrfs: drop unused argument from extent_io_tree_init (+10/-12)
    btrfs: remove nested duplicate variable declarations (+0/-4)
    btrfs: drop gfp parameter from alloc_extent_buffer (+7/-9)
    btrfs: drop gfp parameter from find_extent_buffer (+4/-6)
    btrfs: drop gfp parameter from alloc_extent_map (+16/-17)
    btrfs: use unsigned type for single bit bitfield (+4/-4)
    btrfs: remove old unused commented out code (+1/-2071)
    btrfs: Document a mutex lock/unlock sequence (+12/-0)
    btrfs: make functions static when possible (+7/-7)
    btrfs: unify checking of IS_ERR and null (+17/-17)
    btrfs: remove unused function prototypes (+0/-43)
    btrfs: remove all unused functions (+1/-817)
    btrfs: fix dereference before check (+3/-2)

Li Zefan (8) commits (+1449/-665):
    Btrfs: Make the code for reading/writing free space cache generic (+204/-154)
    Btrfs: setup free ino caching in a more asynchronous way (+22/-6)
    Btrfs: Support reading/writing on disk free ino cache (+236/-19)
    Btrfs: Remove unused btrfs_block_group_free_space() (+0/-16)
    Btrfs: Make free space cache code generic (+271/-223)
    Btrfs: Cache free inode numbers in memory (+500/-53)
    Btrfs: Always use 64bit inode number (+208/-182)
    Btrfs: Use bitmap_set/clear() (+8/-12)

Xiao Guangrong (7) commits (+134/-59):
    Btrfs: allocate extent state and check the result properly (+26/-8)
    Btrfs: using rcu lock in the reader side of devices list (+72/-36)
    Btrfs: fix the race between reading and updating devices (+9/-0)
    Btrfs: fix the race between remove dev and alloc chunk (+6/-0)
    Btrfs: fix bh leak on __btrfs_open_devices path (+1/-0)
    Btrfs: fix unsafe usage of merge_state (+14/-8)
    Btrfs: drop unnecessary device lock (+6/-7)

Arne Jansen (6) commits (+1822/-361):
    btrfs scrub: don't coalesce pages that are logically discontiguous (+2/-1)
    btrfs: move btrfs_cmp_device_free_bytes to super.c (+26/-28)
    btrfs: quasi-round-robin for chunk allocation (+177/-305)
    btrfs: add readonly flag (+16/-12)
    btrfs: heed alloc_start (+1/-4)
    btrfs: scrub (+1600/-11)

Tsutomu Itoh (5) commits (+43/-36):
    Btrfs: BUG_ON is deleted from the caller of btrfs_truncate_item & btrfs_extend_item (+2/-17)
    Btrfs: return error code to caller when btrfs_previous_item fails (+3/-2)
    Btrfs: return error code to caller when btrfs_del_item fails (+19/-11)
    Btrfs: return error to caller if read_one_inode() fails (+18/-6)
    Btrfs: check return value of btrfs_inc_extent_ref() (+1/-0)

Chris Mason (4) commits (+689/-144):
    Btrfs: update the delayed inode code to use the btrfs_ino helper. (+7/-6)
    Btrfs: use the device_list_mutex during write_dev_supers (+2/-2)
    Btrfs: return -ENOMEM in clear_extent_bit (+2/-1)
    Btrfs: add mount -o auto_defrag (+678/-135)

Sergei Trofimovich (3) commits (+7/-3):
    btrfs: don't spin in shrink_delalloc if there is nothing to free (+4/-0)
    btrfs: fix typo 'testeing' -> 'testing' (+2/-2)
    btrfs: typo: 'btrfS' -> 'btrfs' (+1/-1)

Jan Schmidt (1) commits (+169/-2):
    btrfs: new ioctls for scrub

liubo (1) commits (+3/-0):
    Btrfs: do not flush csum items of unchanged file data during treelog

Miao Xie (1) commits (+2074/-91):
    btrfs: implement delayed inode items operation

Julia Lawall (1) commits (+4/-1):
    fs/btrfs: Add missing btrfs_free_path

Andi Kleen (1) commits (+0/-4):
    BTRFS: Remove unused node_lock

Ilya Dryomov (1) commits (+80/-207):
    btrfs scrub: make fixups sync

Jamey Sharp (1) commits (+0/-43):
    btrfs: Delete unused version.sh script.

Hugo Mills (1) commits (+1/-3):
    btrfs: Ensure the tree search ioctl returns the right number of records

Total: (58) commits

 fs/btrfs/Makefile           |    2 +-
 fs/btrfs/acl.c              |    2 +-
 fs/btrfs/btrfs_inode.h      |   15 +
 fs/btrfs/compression.c      |   47 +-
 fs/btrfs/compression.h      |    2 +-
 fs/btrfs/ctree.c            |   51 +-
 fs/btrfs/ctree.h            |  244 +++---
 fs/btrfs/delayed-inode.c    | 1695 ++++++++++++++++++++++++++++++++++++
 fs/btrfs/delayed-inode.h    |  141 +++
 fs/btrfs/delayed-ref.c      |  114 ---
 fs/btrfs/delayed-ref.h      |    6 -
 fs/btrfs/dir-item.c         |   39 +-
 fs/btrfs/disk-io.c          |  210 +++--
 fs/btrfs/disk-io.h          |   19 +-
 fs/btrfs/export.c           |   25 +-
 fs/btrfs/extent-tree.c      | 2014 ++++---------------------------------------
 fs/btrfs/extent_io.c        |  324 ++------
 fs/btrfs/extent_io.h        |   40 +-
 fs/btrfs/extent_map.c       |    8 +-
 fs/btrfs/extent_map.h       |    4 +-
 fs/btrfs/file-item.c        |   38 +-
 fs/btrfs/file.c             |  302 ++++++-
 fs/btrfs/free-space-cache.c |  993 +++++++++++++---------
 fs/btrfs/free-space-cache.h |   48 +-
 fs/btrfs/inode-item.c       |    2 -
 fs/btrfs/inode-map.c        |  444 ++++++++++-
 fs/btrfs/inode-map.h        |   13 +
 fs/btrfs/inode.c            |  700 ++++++---------
 fs/btrfs/ioctl.c            |  624 +++++++++++---
 fs/btrfs/ioctl.h            |  107 ++-
 fs/btrfs/locking.c          |   25 -
 fs/btrfs/locking.h          |    2 -
 fs/btrfs/ref-cache.c        |  164 ----
 fs/btrfs/ref-cache.h        |   24 -
 fs/btrfs/relocation.c       |   67 +-
 fs/btrfs/root-tree.c        |   61 +--
 fs/btrfs/scrub.c            | 1369 +++++++++++++++++++++++++++++
 fs/btrfs/super.c            |   51 +-
 fs/btrfs/sysfs.c            |   77 --
 fs/btrfs/transaction.c      |  196 ++---
 fs/btrfs/transaction.h      |    5 +-
 fs/btrfs/tree-defrag.c      |    2 +-
 fs/btrfs/tree-log.c         |  208 +++--
 fs/btrfs/tree-log.h         |    1 -
 fs/btrfs/version.sh         |   43 -
 fs/btrfs/volumes.c          |  657 ++++++---------
 fs/btrfs/volumes.h          |   27 +-
 fs/btrfs/xattr.c            |   12 +-
 48 files changed, 6594 insertions(+), 4670 deletions(-)

             reply	other threads:[~2011-05-27 19:55 UTC|newest]

Thread overview: 68+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2011-05-27 19:55 Chris Mason [this message]
2011-05-27 21:44 ` [GIT PULL] Btrfs updates Chester
  -- strict thread matches above, loose matches on Subject: below --
2013-05-18 14:30 Chris Mason
2013-03-29 17:47 Chris Mason
2013-03-09  0:38 Chris Mason
2013-02-16  1:55 Chris Mason
2012-12-17 21:44 Chris Mason
2012-12-19 18:09 ` Roy Sigurd Karlsbakk
2012-12-19 19:07   ` Hugo Mills
2012-12-17 21:28 Chris Mason
2012-08-29 16:01 Chris Mason
2012-07-05 19:55 Chris Mason
2012-06-21 15:47 Chris Mason
2012-06-15 18:09 Chris Mason
2012-06-15 23:57 ` Linus Torvalds
2012-06-16  0:21   ` Chris Mason
2012-06-01 13:18 Chris Mason
2012-04-13 13:38 Chris Mason
2012-04-16  1:19 ` Tsutomu Itoh
2012-03-10  2:01 Chris Mason
2012-02-24 16:41 Chris Mason
2011-12-01 15:39 Chris Mason
2011-12-05  8:10 ` Miao Xie
2011-12-05 13:14   ` Chris Mason
2011-12-05 14:08     ` David Sterba
2011-12-06  3:25     ` Miao Xie
2011-08-18 18:04 Chris Mason
2011-08-18 21:51 ` Sage Weil
2011-08-20 14:01   ` Chris Mason
2011-07-27 22:46 Chris Mason
2011-06-27 18:15 Chris Mason
2011-06-20  1:12 Chris Mason
2011-06-12 11:57 Chris Mason
2011-06-12 18:08 ` Linus Torvalds
2011-06-13  1:02 ` Andi Kleen
2011-06-13  1:52   ` Chris Mason
2011-06-13  2:05   ` Li Zefan
2011-06-04 14:37 Chris Mason
2011-05-15 14:47 Chris Mason
2011-05-15 15:41 ` kehon
2011-04-26 14:24 Chris Mason
2011-04-18 14:26 Chris Mason
2011-02-15  3:49 Chris Mason
2011-02-07 20:12 Chris Mason
2011-02-08 20:05 ` Helmut Hullen
2011-01-17 21:13 Chris Mason
2011-01-18 10:14 ` Felix Blanke
2011-01-18 15:22   ` C Anthony Risinger
2011-01-18 17:56     ` Mitch Harder
2011-01-18 18:51       ` C Anthony Risinger
2011-01-19  9:15     ` Spelic
2011-01-22 23:41       ` Clemens Eisserer
2011-01-22 23:53         ` cwillu
2011-01-18 18:55   ` Goffredo Baroncelli
2011-03-09 22:01 ` Diego Calleja
2010-12-14  1:54 Chris Mason
2010-05-27 15:15 Chris Mason
2010-05-27 17:18 ` Linus Torvalds
2010-05-27 17:32   ` Chris Mason
2010-05-27 17:47     ` Linus Torvalds
2010-06-02  2:59 ` Miao Xie
2010-09-12 12:38 ` Felipe Contreras
2010-04-05 19:36 Chris Mason
2010-04-06 15:40 ` Chris Mason
2010-03-15 19:18 Chris Mason
2010-03-16 21:01 ` Chris Mason
2010-03-18 16:59   ` Chris Mason
2009-10-15  0:06 Chris Mason

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=1306525303-sup-718@shiny \
    --to=chris.mason@oracle.com \
    --cc=linux-btrfs@vger.kernel.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=torvalds@linux-foundation.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).