Re: [PATCH] Btrfs: increase the size of the free space cache

2012-08-06 Thread Arne Jansen
On 08/06/2012 09:46 PM, Josef Bacik wrote: > Arne was complaining about the space cache having mismatching generation > numbers when debugging a deadlock. This is because we can run out of space > in our preallocated range for our space cache if you have a pretty > fragmented amount of space in yo

Re: [PATCH] Btrfs: fix deadlock in wait_for_more_refs

2012-08-06 Thread Arne Jansen
On 08/07/2012 07:03 AM, Mitch Harder wrote: > On Mon, Aug 6, 2012 at 3:18 PM, Arne Jansen wrote: >> Commit a168650c introduced a waiting mechanism to prevent busy waiting in >> btrfs_run_delayed_refs. This can deadlock with btrfs_run_ordered_operations, >> where a tree_mod_seq is held while waitin

Re: [PATCH] Btrfs: fix deadlock in wait_for_more_refs

2012-08-06 Thread Mitch Harder
On Mon, Aug 6, 2012 at 3:18 PM, Arne Jansen wrote: > Commit a168650c introduced a waiting mechanism to prevent busy waiting in > btrfs_run_delayed_refs. This can deadlock with btrfs_run_ordered_operations, > where a tree_mod_seq is held while waiting for the io to complete, while > the end_io call

Re: [PATCH 2/3] btrfs: extended inode refs

2012-08-06 Thread Mark Fasheh
On Fri, Jul 06, 2012 at 04:57:15PM +0200, Jan Schmidt wrote: > Thought about this search_done once again, I'd like to repeat our May's > conversation: > > On Fri, May 04, 2012 at 01:12 (+0200), Mark Fasheh wrote: > > > You moved this comment and assignment out of the "if (ret == 0)" case. > > > I'

[PATCH] Btrfs: fix deadlock in wait_for_more_refs

2012-08-06 Thread Arne Jansen
Commit a168650c introduced a waiting mechanism to prevent busy waiting in btrfs_run_delayed_refs. This can deadlock with btrfs_run_ordered_operations, where a tree_mod_seq is held while waiting for the io to complete, while the end_io calls btrfs_run_delayed_refs. This whole mechanism is unnecessar

Re: Btrfs send/receive fixes and PULL request

2012-08-06 Thread Chris Mason
On Thu, Aug 02, 2012 at 03:55:18AM -0600, Alexander Block wrote: > Hello Chris, > > You can find and pull a lot of fixes for btrfs send/receive in my git repo: > > git://github.com/ablock84/linux-btrfs.git for-chris > > These fixes are mostly the results of the reviews from Arne and Alex

Re: wait_for_more_refs not waking up

2012-08-06 Thread Arne Jansen
On 08/06/2012 10:10 PM, Chris Mason wrote: > On Fri, Aug 03, 2012 at 01:11:31AM -0600, Alexander Block wrote: >> I got a deadlock happening while creating a snapshot and ordered >> writes are pending. I can reproduce it 100% using btrfs send/receive. >> It happens when I receive a set of streams on

Re: wait_for_more_refs not waking up

2012-08-06 Thread Chris Mason
On Fri, Aug 03, 2012 at 01:11:31AM -0600, Alexander Block wrote: > I got a deadlock happening while creating a snapshot and ordered > writes are pending. I can reproduce it 100% using btrfs send/receive. > It happens when I receive a set of streams on a freshly created FS. I > think I can exclude s

[PATCH] Btrfs: increase the size of the free space cache

2012-08-06 Thread Josef Bacik
Arne was complaining about the space cache having mismatching generation numbers when debugging a deadlock. This is because we can run out of space in our preallocated range for our space cache if you have a pretty fragmented amount of space in your pinned space. So just increase the amount of sp

[PATCH] Btrfs: Use PTR_RET rather than if(IS_ERR(.. [1]

2012-08-06 Thread Thomas Meyer
The semantic patch that makes this change is available in scripts/coccinelle/api/ptr_ret.cocci. More information about semantic patching is available at http://coccinelle.lip6.fr/ Signed-off-by: Thomas Meyer --- diff -u -p a/fs/btrfs/volumes.c b/fs/btrfs/volumes.c --- a/fs/btrfs/volumes.c +++ b