]> CyberLeo.Net >> Repos - FreeBSD/FreeBSD.git/commit
Move clear_unrhdr to tmpfs_free_tmp.
authorMatt Joras <mjoras@FreeBSD.org>
Mon, 23 Oct 2017 15:43:38 +0000 (15:43 +0000)
committerMatt Joras <mjoras@FreeBSD.org>
Mon, 23 Oct 2017 15:43:38 +0000 (15:43 +0000)
commitba19246e07f1bce58f539dacba76c620176c6a61
treebd1a302be91f7e848b3620bc319595578ad9b121
parent5fca1d90c1e57ce06bb8bbf2d5ce36a40475e7a2
Move clear_unrhdr to tmpfs_free_tmp.

Clearing the unr in tmpfs_unmount is not correct. In the case of
multiple references to the tmpfs mount (e.g. when there are lookup
threads using it) it will not be the one to finish tmpfs_free_tmp. In
those cases tmpfs_free_node_locked will be the final one to execute
tmpfs_free_tmp, and until then the unr must be valid.

Reported by: pho
Approved/reviewed by: rstone (mentor)
Sponsored by: Dell EMC Isilon
Differential Revision: https://reviews.freebsd.org/D12749
sys/fs/tmpfs/tmpfs_vfsops.c