Re: [ANNOUNCE] xfsprogs libxfs-4.19-sync branch rebased

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

 



On Wed, Sep 26, 2018 at 02:12:46PM -0500, Eric Sandeen wrote:
> Hi all -
> 
> I've rebased the libxfs-4.19-sync branch with some minor fixes (below).
> 
> The head of the libxfs-4.19-sync branch is commit:
> 
> a891cd6 xfs: fix a null pointer dereference in xfs_bmap_extents_to_btree
> 
> This is still just a backport of the kernel libxfs.  I'll get to Darrick's
> transaction cleanups on top of this soon, but I was trying to stick with
> the standard "update libxfs, then get to everything else" approach.
> 
> I'll push this to for-next and tag it with an -rc0 in the next day or so,
> barring any disasters.
> 
> Thanks,
> -Eric
> 

\o/  better late than never

Whole series looks ok, you can add:

Reviewed-by: Carlos Maiolino <cmaiolino@xxxxxxxxxx>


> changes since the last push:
> 
> diff -Nurp xfsprogs-maint-clean/libxfs/libxfs_priv.h xfsprogs-maint/libxfs/libxfs_priv.h
> --- xfsprogs-maint-clean/libxfs/libxfs_priv.h	2018-09-02 23:09:54.825409402 -0500
> +++ xfsprogs-maint/libxfs/libxfs_priv.h	2018-09-26 14:11:08.805788185 -0500
> @@ -563,7 +563,7 @@ int libxfs_zero_extent(struct xfs_inode 
>  
>  
>  bool xfs_log_check_lsn(struct xfs_mount *, xfs_lsn_t);
> -#define xfs_log_in_recovery(mp)	false
> +#define xfs_log_in_recovery(mp)	(false)
>  
>  /* xfs_icache.c */
>  #define xfs_inode_set_cowblocks_tag(ip)	do { } while (0)
> Binary files xfsprogs-maint-clean/libxfs/list_sort.o and xfsprogs-maint/libxfs/list_sort.o differ
> Binary files xfsprogs-maint-clean/libxfs/radix-tree.o and xfsprogs-maint/libxfs/radix-tree.o differ
> diff -Nurp xfsprogs-maint-clean/libxfs/trans.c xfsprogs-maint/libxfs/trans.c
> --- xfsprogs-maint-clean/libxfs/trans.c	2018-09-02 23:09:54.826409407 -0500
> +++ xfsprogs-maint/libxfs/trans.c	2018-09-26 14:10:37.664613207 -0500
> @@ -80,6 +80,8 @@ libxfs_trans_roll(
>  	struct xfs_trans	*trans = *tpp;
>  	struct xfs_trans_res	tres;
>  	unsigned int		old_blk_res;
> +	xfs_fsblock_t		old_firstblock;
> +	struct list_head	old_dfops;
>  	int			error;
>  
>  	/*
> @@ -89,6 +91,9 @@ libxfs_trans_roll(
>  	tres.tr_logres = trans->t_log_res;
>  	tres.tr_logcount = trans->t_log_count;
>  	old_blk_res = trans->t_blk_res;
> +	old_firstblock = trans->t_firstblock;
> +	/* structure copy */
> +	old_dfops = trans->t_dfops;
>  
>  	/*
>  	 * Commit the current transaction.
> @@ -113,6 +118,9 @@ libxfs_trans_roll(
>  	error = libxfs_trans_alloc(mp, &tres, 0, 0, 0, tpp);
>  	trans = *tpp;
>  	trans->t_blk_res = old_blk_res;
> +	trans->t_firstblock = old_firstblock;
> +	/* structure copy */
> +	trans->t_dfops = old_dfops;
>  
>  	return 0;
>  }
> @@ -156,6 +164,8 @@ libxfs_trans_alloc(
>  	ptr->t_mountp = mp;
>  	ptr->t_blk_res = blocks;
>  	INIT_LIST_HEAD(&ptr->t_items);
> +	INIT_LIST_HEAD(&ptr->t_dfops);
> +	ptr->t_firstblock = NULLFSBLOCK;
>  #ifdef XACT_DEBUG
>  	fprintf(stderr, "allocated new transaction %p\n", ptr);
>  #endif
> 

-- 
Carlos



[Index of Archives]     [XFS Filesystem Development (older mail)]     [Linux Filesystem Development]     [Linux Audio Users]     [Yosemite Trails]     [Linux Kernel]     [Linux RAID]     [Linux SCSI]


  Powered by Linux