-/* $NetBSD: cd9660_vnops.c,v 1.24 1995/07/24 21:19:27 cgd Exp $ */
+/* $NetBSD: cd9660_vnops.c,v 1.26 1995/12/01 00:47:33 pk Exp $ */
/*-
* Copyright (c) 1994
return (0);
}
-#if ISO_DEFAULT_BLOCK_SIZE >= NBPG
#ifdef DEBUG
extern int doclusterread;
#else
#define doclusterread 1
#endif
-#else
+
/* XXX until cluster routines can handle block sizes less than one page */
-#define doclusterread 0
-#endif
+#define cd9660_doclusterread \
+ (doclusterread && (ISO_DEFAULT_BLOCK_SIZE >= NBPG))
/*
* Vnode op for reading.
n = diff;
size = blksize(imp, ip, lbn);
rablock = lbn + 1;
- if (doclusterread) {
+ if (cd9660_doclusterread) {
if (lblktosize(imp, rablock) <= ip->i_size)
error = cluster_read(vp, (off_t)ip->i_size,
lbn, size, NOCRED, &bp);
ip->i_lockwaiter = -1;
#endif
(void) sleep((caddr_t)ip, PINOD);
+ goto start;
}
#ifdef DIAGNOSTIC
ip->i_lockwaiter = 0;