svn commit: r242536 - head/sys/fs/fuse

Attilio Rao attilio at FreeBSD.org
Sat Nov 3 23:32:33 UTC 2012


Author: attilio
Date: Sat Nov  3 23:32:32 2012
New Revision: 242536
URL: http://svn.freebsd.org/changeset/base/242536

Log:
  Fix a bug where operations was carried on even if not implemented,
  leading to handling of an invalid fdip object.
  
  Reported and tested by:	flo
  MFC after:	2 months
  X-MFC:		241519

Modified:
  head/sys/fs/fuse/fuse_vnops.c

Modified: head/sys/fs/fuse/fuse_vnops.c
==============================================================================
--- head/sys/fs/fuse/fuse_vnops.c	Sat Nov  3 23:22:49 2012	(r242535)
+++ head/sys/fs/fuse/fuse_vnops.c	Sat Nov  3 23:32:32 2012	(r242536)
@@ -358,12 +358,10 @@ fuse_vnop_create(struct vop_create_args 
 
 	err = fdisp_wait_answ(fdip);
 
-	if (err == ENOSYS) {
-		debug_printf("create: got ENOSYS from daemon\n");
-		fsess_set_notimpl(mp, FUSE_CREATE);
-		fdisp_destroy(fdip);
-	} else if (err) {
-		debug_printf("create: darn, got err=%d from daemon\n", err);
+	if (err) {
+		if (err == ENOSYS)
+			fsess_set_notimpl(mp, FUSE_CREATE);
+		debug_printf("create: got err=%d from daemon\n", err);
 		goto out;
 	}
 bringup:


More information about the svn-src-all mailing list