Re: [PATCH 10/10] Btrfs-progs: make restore deal with really broken file systems

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

 



On Fri, Mar 15, 2013 at 12:37:05AM +0100, David Sterba wrote:
> On Tue, Mar 12, 2013 at 01:38:17PM -0400, Josef Bacik wrote:
> > --- a/cmds-restore.c
> > +++ b/cmds-restore.c
> > +	if (list_roots) {
> > +		int ret = do_list_roots(fs_info->tree_root);
> > +		if (ret) {
> > +			close_ctree(fs_info->tree_root);
> >  			root = NULL;
> 
> Setting root to NULL here has no effect, I wonder if this should be
> 'return NULL' instead, or if it's really ok to return fs_info->fs_root
> even after close_ctree() which calls free_fs_roots and other cleanups.

It's no ok, close_tree does free(fs_info), so it's returning garbage,
the caller jumps to (another) close_ctree if it's in list_root mode (and
trying to free the fs_info again).

> 
> >  		}
> >  	}
> >  
> > -	return root;
> > +	return fs_info->fs_root;
--
To unsubscribe from this list: send the line "unsubscribe linux-btrfs" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html


[Index of Archives]     [Linux Filesystem Development]     [Linux NFS]     [Linux NILFS]     [Linux USB Devel]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]

  Powered by Linux