svn commit: r349662 - stable/12/sys/fs/cuse

Hans Petter Selasky hselasky at FreeBSD.org
Wed Jul 3 18:16:11 UTC 2019


Author: hselasky
Date: Wed Jul  3 18:16:10 2019
New Revision: 349662
URL: https://svnweb.freebsd.org/changeset/base/349662

Log:
  MFC r349368:
  Free all allocated unit IDs in cuse(3) after the client character
  devices have been destroyed to avoid creating character devices with
  identical name.
  
  Sponsored by:	Mellanox Technologies

Modified:
  stable/12/sys/fs/cuse/cuse.c
Directory Properties:
  stable/12/   (props changed)

Modified: stable/12/sys/fs/cuse/cuse.c
==============================================================================
--- stable/12/sys/fs/cuse/cuse.c	Wed Jul  3 18:15:00 2019	(r349661)
+++ stable/12/sys/fs/cuse/cuse.c	Wed Jul  3 18:16:10 2019	(r349662)
@@ -671,14 +671,14 @@ cuse_server_unref(struct cuse_server *pcs)
 
 	TAILQ_REMOVE(&cuse_server_head, pcs, entry);
 
-	cuse_free_unit_by_id_locked(pcs, -1);
-
 	while ((pcsd = TAILQ_FIRST(&pcs->hdev)) != NULL) {
 		TAILQ_REMOVE(&pcs->hdev, pcsd, entry);
 		cuse_unlock();
 		cuse_server_free_dev(pcsd);
 		cuse_lock();
 	}
+
+	cuse_free_unit_by_id_locked(pcs, -1);
 
 	while ((mem = TAILQ_FIRST(&pcs->hmem)) != NULL) {
 		TAILQ_REMOVE(&pcs->hmem, mem, entry);


More information about the svn-src-all mailing list