Skip site navigation (1)Skip section navigation (2)
Date:      Tue, 11 Jun 2013 10:06:08 +0000 (UTC)
From:      Alexander Motin <mav@FreeBSD.org>
To:        src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org
Subject:   svn commit: r251616 - head/sys/geom
Message-ID:  <201306111006.r5BA68cI078618@svn.freebsd.org>

next in thread | raw e-mail | index | archive | help
Author: mav
Date: Tue Jun 11 10:06:07 2013
New Revision: 251616
URL: http://svnweb.freebsd.org/changeset/base/251616

Log:
  Don't update provider properties and don't set DISKFLAG_OPEN if d_open()
  disk method call returned error.  GEOM considers devices in such case as
  still closed, and won't call symmetric d_close() for them.

Modified:
  head/sys/geom/geom_disk.c

Modified: head/sys/geom/geom_disk.c
==============================================================================
--- head/sys/geom/geom_disk.c	Tue Jun 11 06:22:09 2013	(r251615)
+++ head/sys/geom/geom_disk.c	Tue Jun 11 10:06:07 2013	(r251616)
@@ -138,6 +138,8 @@ g_disk_access(struct g_provider *pp, int
 				printf("Opened disk %s -> %d\n",
 				    pp->name, error);
 			g_disk_unlock_giant(dp);
+			if (error != 0)
+				return (error);
 		}
 		pp->mediasize = dp->d_mediasize;
 		pp->sectorsize = dp->d_sectorsize;



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?201306111006.r5BA68cI078618>