Re: [PATCH 08/15] jbd: replace barriers with explicit flush / FUA usage

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Wed 18-08-10 05:29:16, Christoph Hellwig wrote:
> Switch to the WRITE_FLUSH_FUA flag for journal commits and remove the
> EOPNOTSUPP detection for barriers.
> 
> Signed-off-by: Christoph Hellwig <hch@xxxxxx>
  Looks OK.
Acked-by: Jan Kara <jack@xxxxxxx>

								Honza
> 
> Index: linux-2.6/fs/jbd/commit.c
> ===================================================================
> --- linux-2.6.orig/fs/jbd/commit.c	2010-08-17 16:46:44.370004211 +0200
> +++ linux-2.6/fs/jbd/commit.c	2010-08-17 16:47:18.894004770 +0200
> @@ -137,34 +137,10 @@ static int journal_write_commit_record(j
>  	JBUFFER_TRACE(descriptor, "write commit block");
>  	set_buffer_dirty(bh);
>  
> -	if (journal->j_flags & JFS_BARRIER) {
> -		ret = __sync_dirty_buffer(bh, WRITE_SYNC | WRITE_BARRIER);
> -
> -		/*
> -		 * Is it possible for another commit to fail at roughly
> -		 * the same time as this one?  If so, we don't want to
> -		 * trust the barrier flag in the super, but instead want
> -		 * to remember if we sent a barrier request
> -		 */
> -		if (ret == -EOPNOTSUPP) {
> -			char b[BDEVNAME_SIZE];
> -
> -			printk(KERN_WARNING
> -				"JBD: barrier-based sync failed on %s - "
> -				"disabling barriers\n",
> -				bdevname(journal->j_dev, b));
> -			spin_lock(&journal->j_state_lock);
> -			journal->j_flags &= ~JFS_BARRIER;
> -			spin_unlock(&journal->j_state_lock);
> -
> -			/* And try again, without the barrier */
> -			set_buffer_uptodate(bh);
> -			set_buffer_dirty(bh);
> -			ret = sync_dirty_buffer(bh);
> -		}
> -	} else {
> +	if (journal->j_flags & JFS_BARRIER)
> +		ret = __sync_dirty_buffer(bh, WRITE_SYNC | WRITE_FLUSH_FUA);
> +	else
>  		ret = sync_dirty_buffer(bh);
> -	}
>  
>  	put_bh(bh);		/* One for getblk() */
>  	journal_put_journal_head(descriptor);
> 
-- 
Jan Kara <jack@xxxxxxx>
SUSE Labs, CR
--
To unsubscribe from this list: send the line "unsubscribe linux-fsdevel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html


[Index of Archives]     [Linux Ext4 Filesystem]     [Union Filesystem]     [Filesystem Testing]     [Ceph Users]     [Ecryptfs]     [AutoFS]     [Kernel Newbies]     [Share Photos]     [Security]     [Netfilter]     [Bugtraq]     [Yosemite News]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux Cachefs]     [Reiser Filesystem]     [Linux RAID]     [Samba]     [Device Mapper]     [CEPH Development]
  Powered by Linux