Backing out the wrong fix which could possibly trash the memory if devfs

tries to drop the reference count after our close routine returns.

A more correct fix is to defer the destroy_dev() to a taskqueue(either
in devfs or locally).

Reminded by:	jhb
This commit is contained in:
Tai-hwa Liang 2007-02-09 17:22:10 +00:00
parent e53baad997
commit 85e7c591e0

View File

@ -175,7 +175,6 @@ nsmb_dev_close(struct cdev *dev, int flag, int fmt, struct thread *td)
*/
dev->si_drv1 = NULL;
free(sdp, M_NSMBDEV);
dev_relthread(dev); /* XXX dealing with si_threadcount */
destroy_dev(dev);
splx(s);
return 0;