Hi all, Today's linux-next merge of the vfs-brauner tree got a conflict in: fs/xfs/xfs_super.c between commit: a76dba3b248c ("xfs: create scaffolding for creating debugfs entries") from the xfs tree and commit: 35a93b148b03 ("xfs: close the external block devices in xfs_mount_free") from the vfs-brauner tree. I fixed it up (see below) and can carry the fix as necessary. This is now fixed as far as linux-next is concerned, but any non trivial conflicts should be mentioned to your upstream maintainer when your tree is submitted for merging. You may also want to consider cooperating with the maintainer of the conflicting tree to minimise any particularly complex conflicts. -- Cheers, Stephen Rothwell diff --cc fs/xfs/xfs_super.c index 09638e8fb4ee,c79eac048456..000000000000 --- a/fs/xfs/xfs_super.c +++ b/fs/xfs/xfs_super.c @@@ -760,7 -772,17 +774,18 @@@ static voi xfs_mount_free( struct xfs_mount *mp) { + /* + * Free the buftargs here because blkdev_put needs to be called outside + * of sb->s_umount, which is held around the call to ->put_super. + */ + if (mp->m_logdev_targp && mp->m_logdev_targp != mp->m_ddev_targp) + xfs_free_buftarg(mp->m_logdev_targp); + if (mp->m_rtdev_targp) + xfs_free_buftarg(mp->m_rtdev_targp); + if (mp->m_ddev_targp) + xfs_free_buftarg(mp->m_ddev_targp); + + debugfs_remove(mp->m_debugfs); kfree(mp->m_rtname); kfree(mp->m_logname); kmem_free(mp); @@@ -1538,18 -1537,11 +1556,18 @@@ xfs_fs_fill_super error = xfs_open_devices(mp); if (error) - goto out_free_names; + return error; + if (xfs_debugfs) { + mp->m_debugfs = xfs_debugfs_mkdir(mp->m_super->s_id, + xfs_debugfs); + } else { + mp->m_debugfs = NULL; + } + error = xfs_init_mount_workqueues(mp); if (error) - goto out_close_devices; + goto out_shutdown_devices; error = xfs_init_percpu_counters(mp); if (error)
Attachment:
pgpgFsMm42XcB.pgp
Description: OpenPGP digital signature