Don't be stupid.
diff --git a/src/lib9/_p9dir.c b/src/lib9/_p9dir.c
index 18e899b..83f3560 100644
--- a/src/lib9/_p9dir.c
+++ b/src/lib9/_p9dir.c
@@ -176,7 +176,7 @@
 
 		/* fetch real size for disks */
 #ifdef _HAVEDISKSIZE
-		if((fd = open(name, O_RDONLY)) >= 0){
+		if(S_ISBLK(st->st_mode) && (fd = open(name, O_RDONLY)) >= 0){
 			d->length = disksize(fd, major(st->st_dev));
 			close(fd);
 		}