Print this page
6660 ufs may read too many indirect blocks, flush a random block to disk

@@ -600,11 +600,11 @@
                 blkflush(ip->i_dev, (daddr_t)fsbtodb(fs, ip->i_ib[0]));
                 return (0);
         }
 
         /* Write out all the first level indirect blocks */
-        for (i = 0; i <= NIADDR; i++) {
+        for (i = 0; i < NIADDR; i++) {
                 if ((blkno = ip->i_ib[i]) == 0)
                         continue;
                 blkflush(ip->i_dev, (daddr_t)fsbtodb(fs, blkno));
         }
         /* Write out second level of indirect blocks */