pmp 75 msdosfs/fat.h #define FAT12(pmp) (pmp->pm_fatmask == FAT12_MASK) pmp 76 msdosfs/fat.h #define FAT16(pmp) (pmp->pm_fatmask == FAT16_MASK) pmp 77 msdosfs/fat.h #define FAT32(pmp) (pmp->pm_fatmask == FAT32_MASK) pmp 79 msdosfs/fat.h #define MSDOSFSEOF(pmp, cn) ((((cn) | ~(pmp)->pm_fatmask) & CLUST_EOFS) == CLUST_EOFS) pmp 173 msdosfs/msdosfs_denode.c deget(pmp, dirclust, diroffset, depp) pmp 174 msdosfs/msdosfs_denode.c struct msdosfsmount *pmp; /* so we know the maj/min number */ pmp 189 msdosfs/msdosfs_denode.c pmp, dirclust, diroffset, depp); pmp 196 msdosfs/msdosfs_denode.c if (FAT32(pmp) && dirclust == MSDOSFSROOT) pmp 197 msdosfs/msdosfs_denode.c dirclust = pmp->pm_rootdirblk; pmp 212 msdosfs/msdosfs_denode.c ldep = msdosfs_hashget(pmp->pm_dev, dirclust, diroffset); pmp 223 msdosfs/msdosfs_denode.c error = getnewvnode(VT_MSDOSFS, pmp->pm_mountp, pmp 238 msdosfs/msdosfs_denode.c ldep->de_dev = pmp->pm_dev; pmp 260 msdosfs/msdosfs_denode.c ldep->de_pmp = pmp; pmp 261 msdosfs/msdosfs_denode.c ldep->de_devvp = pmp->pm_devvp; pmp 267 msdosfs/msdosfs_denode.c || (FAT32(pmp) && dirclust == pmp->pm_rootdirblk)) pmp 279 msdosfs/msdosfs_denode.c if (FAT32(pmp)) pmp 280 msdosfs/msdosfs_denode.c ldep->de_StartCluster = pmp->pm_rootdirblk; pmp 284 msdosfs/msdosfs_denode.c ldep->de_FileSize = pmp->pm_rootdirsize * pmp->pm_BytesPerSec; pmp 301 msdosfs/msdosfs_denode.c error = readep(pmp, dirclust, diroffset, &bp, &direntptr); pmp 325 msdosfs/msdosfs_denode.c ldep->de_FileSize = de_cn2off(pmp, size); pmp 390 msdosfs/msdosfs_denode.c struct msdosfsmount *pmp = dep->de_pmp; pmp 404 msdosfs/msdosfs_denode.c if ((DETOV(dep)->v_flag & VROOT) && !FAT32(pmp)) { pmp 429 msdosfs/msdosfs_denode.c error = pcbmap(dep, de_clcount(pmp, length) - 1, 0, pmp 439 msdosfs/msdosfs_denode.c fc_purge(dep, de_clcount(pmp, length)); pmp 446 msdosfs/msdosfs_denode.c if ((boff = length & pmp->pm_crbomask) != 0) { pmp 448 msdosfs/msdosfs_denode.c bn = cntobn(pmp, eofentry); pmp 449 msdosfs/msdosfs_denode.c error = bread(pmp->pm_devvp, bn, pmp->pm_bpcluster, pmp 452 msdosfs/msdosfs_denode.c bn = de_blk(pmp, length); pmp 453 msdosfs/msdosfs_denode.c error = bread(DETOV(dep), bn, pmp->pm_bpcluster, pmp 467 msdosfs/msdosfs_denode.c bzero(bp->b_data + boff, pmp->pm_bpcluster - boff); pmp 494 msdosfs/msdosfs_denode.c error = fatentry(FAT_GET_AND_SET, pmp, eofentry, pmp 502 msdosfs/msdosfs_denode.c fc_setcache(dep, FC_LASTFC, de_cluster(pmp, length - 1), pmp 510 msdosfs/msdosfs_denode.c if (chaintofree != 0 && !MSDOSFSEOF(pmp, chaintofree)) pmp 511 msdosfs/msdosfs_denode.c freeclusterchain(pmp, chaintofree); pmp 525 msdosfs/msdosfs_denode.c struct msdosfsmount *pmp = dep->de_pmp; pmp 532 msdosfs/msdosfs_denode.c if ((DETOV(dep)->v_flag & VROOT) && !FAT32(pmp)) pmp 547 msdosfs/msdosfs_denode.c count = de_clcount(pmp, length) - de_clcount(pmp, dep->de_FileSize); pmp 549 msdosfs/msdosfs_denode.c if (count > pmp->pm_freeclustercount) pmp 97 msdosfs/msdosfs_fat.c fatblock(pmp, ofs, bnp, sizep, bop) pmp 98 msdosfs/msdosfs_fat.c struct msdosfsmount *pmp; pmp 106 msdosfs/msdosfs_fat.c bn = ofs / pmp->pm_fatblocksize * pmp->pm_fatblocksec; pmp 107 msdosfs/msdosfs_fat.c size = min(pmp->pm_fatblocksec, pmp->pm_FATsecs - bn) * DEV_BSIZE; pmp 108 msdosfs/msdosfs_fat.c bn += pmp->pm_fatblk + pmp->pm_curfat * pmp->pm_FATsecs; pmp 115 msdosfs/msdosfs_fat.c *bop = ofs % pmp->pm_fatblocksize; pmp 153 msdosfs/msdosfs_fat.c struct msdosfsmount *pmp = dep->de_pmp; pmp 174 msdosfs/msdosfs_fat.c if (de_cn2off(pmp, findcn) >= dep->de_FileSize) { pmp 176 msdosfs/msdosfs_fat.c *cnp = de_bn2cn(pmp, pmp->pm_rootdirsize); pmp 180 msdosfs/msdosfs_fat.c *bnp = pmp->pm_rootdirblk + de_cn2bn(pmp, findcn); pmp 184 msdosfs/msdosfs_fat.c *sp = min(pmp->pm_bpcluster, pmp 185 msdosfs/msdosfs_fat.c dep->de_FileSize - de_cn2off(pmp, findcn)); pmp 198 msdosfs/msdosfs_fat.c *sp = pmp->pm_bpcluster; pmp 219 msdosfs/msdosfs_fat.c if ((cn | ~pmp->pm_fatmask) >= CLUST_RSRVD) pmp 221 msdosfs/msdosfs_fat.c byteoffset = FATOFS(pmp, cn); pmp 222 msdosfs/msdosfs_fat.c fatblock(pmp, byteoffset, &bn, &bsize, &bo); pmp 226 msdosfs/msdosfs_fat.c error = bread(pmp->pm_devvp, bn, bsize, NOCRED, &bp); pmp 239 msdosfs/msdosfs_fat.c if (FAT32(pmp)) pmp 243 msdosfs/msdosfs_fat.c if (FAT12(pmp) && (prevcn & 1)) pmp 245 msdosfs/msdosfs_fat.c cn &= pmp->pm_fatmask; pmp 253 msdosfs/msdosfs_fat.c if ((cn | ~pmp->pm_fatmask) >= CLUST_RSRVD) pmp 254 msdosfs/msdosfs_fat.c cn |= ~pmp->pm_fatmask; pmp 257 msdosfs/msdosfs_fat.c if (!MSDOSFSEOF(pmp, cn)) { pmp 261 msdosfs/msdosfs_fat.c *bnp = cntobn(pmp, cn); pmp 335 msdosfs/msdosfs_fat.c updatefats(pmp, bp, fatbn) pmp 336 msdosfs/msdosfs_fat.c struct msdosfsmount *pmp; pmp 344 msdosfs/msdosfs_fat.c printf("updatefats(pmp %08, buf %x, fatbn %ld)\n", pmp, bp, fatbn); pmp 350 msdosfs/msdosfs_fat.c if (pmp->pm_fsinfo) { pmp 351 msdosfs/msdosfs_fat.c uint32_t cn = pmp->pm_nxtfree; pmp 353 msdosfs/msdosfs_fat.c if (pmp->pm_freeclustercount pmp 354 msdosfs/msdosfs_fat.c && (pmp->pm_inusemap[cn / N_INUSEBITS] pmp 360 msdosfs/msdosfs_fat.c for (cn = 0; cn < pmp->pm_maxcluster; cn++) pmp 361 msdosfs/msdosfs_fat.c if (pmp->pm_inusemap[cn / N_INUSEBITS] != (u_int)-1) pmp 363 msdosfs/msdosfs_fat.c pmp->pm_nxtfree = cn pmp 364 msdosfs/msdosfs_fat.c + ffs(pmp->pm_inusemap[cn / N_INUSEBITS] pmp 367 msdosfs/msdosfs_fat.c if (bread(pmp->pm_devvp, pmp->pm_fsinfo, fsi_size(pmp), NOCRED, pmp 372 msdosfs/msdosfs_fat.c pmp->pm_fsinfo = 0; pmp 377 msdosfs/msdosfs_fat.c putulong(fp->fsinfree, pmp->pm_freeclustercount); pmp 378 msdosfs/msdosfs_fat.c putulong(fp->fsinxtfree, pmp->pm_nxtfree); pmp 379 msdosfs/msdosfs_fat.c if (pmp->pm_flags & MSDOSFSMNT_WAITONFAT) pmp 386 msdosfs/msdosfs_fat.c if (pmp->pm_flags & MSDOSFS_FATMIRROR) { pmp 397 msdosfs/msdosfs_fat.c for (i = 1; i < pmp->pm_FATs; i++) { pmp 398 msdosfs/msdosfs_fat.c fatbn += pmp->pm_FATsecs; pmp 400 msdosfs/msdosfs_fat.c bpn = getblk(pmp->pm_devvp, fatbn, bp->b_bcount, 0, 0); pmp 402 msdosfs/msdosfs_fat.c if (pmp->pm_flags & MSDOSFSMNT_WAITONFAT) pmp 412 msdosfs/msdosfs_fat.c if (pmp->pm_flags & MSDOSFSMNT_WAITONFAT) pmp 441 msdosfs/msdosfs_fat.c usemap_alloc(pmp, cn) pmp 442 msdosfs/msdosfs_fat.c struct msdosfsmount *pmp; pmp 446 msdosfs/msdosfs_fat.c pmp->pm_inusemap[cn / N_INUSEBITS] |= 1 << (cn % N_INUSEBITS); pmp 447 msdosfs/msdosfs_fat.c pmp->pm_freeclustercount--; pmp 451 msdosfs/msdosfs_fat.c usemap_free(pmp, cn) pmp 452 msdosfs/msdosfs_fat.c struct msdosfsmount *pmp; pmp 456 msdosfs/msdosfs_fat.c pmp->pm_freeclustercount++; pmp 457 msdosfs/msdosfs_fat.c pmp->pm_inusemap[cn / N_INUSEBITS] &= ~(1 << (cn % N_INUSEBITS)); pmp 461 msdosfs/msdosfs_fat.c clusterfree(pmp, cluster, oldcnp) pmp 462 msdosfs/msdosfs_fat.c struct msdosfsmount *pmp; pmp 469 msdosfs/msdosfs_fat.c usemap_free(pmp, cluster); pmp 470 msdosfs/msdosfs_fat.c error = fatentry(FAT_GET_AND_SET, pmp, cluster, &oldcn, MSDOSFSFREE); pmp 472 msdosfs/msdosfs_fat.c usemap_alloc(pmp, cluster); pmp 505 msdosfs/msdosfs_fat.c fatentry(function, pmp, cn, oldcontents, newcontents) pmp 507 msdosfs/msdosfs_fat.c struct msdosfsmount *pmp; pmp 519 msdosfs/msdosfs_fat.c function, pmp, cn, oldcontents, newcontents); pmp 544 msdosfs/msdosfs_fat.c if (cn < CLUST_FIRST || cn > pmp->pm_maxcluster) pmp 547 msdosfs/msdosfs_fat.c byteoffset = FATOFS(pmp, cn); pmp 548 msdosfs/msdosfs_fat.c fatblock(pmp, byteoffset, &bn, &bsize, &bo); pmp 549 msdosfs/msdosfs_fat.c if ((error = bread(pmp->pm_devvp, bn, bsize, NOCRED, &bp)) != 0) { pmp 555 msdosfs/msdosfs_fat.c if (FAT32(pmp)) pmp 559 msdosfs/msdosfs_fat.c if (FAT12(pmp) && (cn & 1)) pmp 561 msdosfs/msdosfs_fat.c readcn &= pmp->pm_fatmask; pmp 563 msdosfs/msdosfs_fat.c if ((readcn | ~pmp->pm_fatmask) >= CLUST_RSRVD) pmp 564 msdosfs/msdosfs_fat.c readcn |= ~pmp->pm_fatmask; pmp 568 msdosfs/msdosfs_fat.c switch (pmp->pm_fatmask) { pmp 594 msdosfs/msdosfs_fat.c updatefats(pmp, bp, bn); pmp 596 msdosfs/msdosfs_fat.c pmp->pm_fmod = 1; pmp 612 msdosfs/msdosfs_fat.c fatchain(pmp, start, count, fillwith) pmp 613 msdosfs/msdosfs_fat.c struct msdosfsmount *pmp; pmp 624 msdosfs/msdosfs_fat.c pmp, start, count, fillwith); pmp 629 msdosfs/msdosfs_fat.c if (start < CLUST_FIRST || start + count - 1 > pmp->pm_maxcluster) pmp 633 msdosfs/msdosfs_fat.c byteoffset = FATOFS(pmp, start); pmp 634 msdosfs/msdosfs_fat.c fatblock(pmp, byteoffset, &bn, &bsize, &bo); pmp 635 msdosfs/msdosfs_fat.c error = bread(pmp->pm_devvp, bn, bsize, NOCRED, &bp); pmp 643 msdosfs/msdosfs_fat.c switch (pmp->pm_fatmask) { pmp 664 msdosfs/msdosfs_fat.c readcn &= ~pmp->pm_fatmask; pmp 665 msdosfs/msdosfs_fat.c readcn |= newc & pmp->pm_fatmask; pmp 673 msdosfs/msdosfs_fat.c updatefats(pmp, bp, bn); pmp 675 msdosfs/msdosfs_fat.c pmp->pm_fmod = 1; pmp 687 msdosfs/msdosfs_fat.c chainlength(pmp, start, count) pmp 688 msdosfs/msdosfs_fat.c struct msdosfsmount *pmp; pmp 696 msdosfs/msdosfs_fat.c max_idx = pmp->pm_maxcluster / N_INUSEBITS; pmp 699 msdosfs/msdosfs_fat.c map = pmp->pm_inusemap[idx]; pmp 711 msdosfs/msdosfs_fat.c if ((map = pmp->pm_inusemap[idx]) != 0) { pmp 732 msdosfs/msdosfs_fat.c chainalloc(pmp, start, count, fillwith, retcluster, got) pmp 733 msdosfs/msdosfs_fat.c struct msdosfsmount *pmp; pmp 744 msdosfs/msdosfs_fat.c usemap_alloc(pmp, cl++); pmp 745 msdosfs/msdosfs_fat.c if ((error = fatchain(pmp, start, count, fillwith)) != 0) pmp 770 msdosfs/msdosfs_fat.c clusteralloc(pmp, start, count, fillwith, retcluster, got) pmp 771 msdosfs/msdosfs_fat.c struct msdosfsmount *pmp; pmp 787 msdosfs/msdosfs_fat.c if ((len = chainlength(pmp, start, count)) >= count) pmp 788 msdosfs/msdosfs_fat.c return (chainalloc(pmp, start, count, fillwith, retcluster, got)); pmp 804 msdosfs/msdosfs_fat.c newst = (start * 1103515245 + 12345) % (pmp->pm_maxcluster + 1); pmp 807 msdosfs/msdosfs_fat.c for (cn = newst; cn <= pmp->pm_maxcluster;) { pmp 809 msdosfs/msdosfs_fat.c map = pmp->pm_inusemap[idx]; pmp 813 msdosfs/msdosfs_fat.c if ((l = chainlength(pmp, cn, count)) >= count) pmp 814 msdosfs/msdosfs_fat.c return (chainalloc(pmp, cn, count, fillwith, retcluster, got)); pmp 826 msdosfs/msdosfs_fat.c map = pmp->pm_inusemap[idx]; pmp 830 msdosfs/msdosfs_fat.c if ((l = chainlength(pmp, cn, count)) >= count) pmp 831 msdosfs/msdosfs_fat.c return (chainalloc(pmp, cn, count, fillwith, retcluster, got)); pmp 846 msdosfs/msdosfs_fat.c return (chainalloc(pmp, start, len, fillwith, retcluster, got)); pmp 848 msdosfs/msdosfs_fat.c return (chainalloc(pmp, foundcn, foundl, fillwith, retcluster, got)); pmp 861 msdosfs/msdosfs_fat.c freeclusterchain(pmp, cluster) pmp 862 msdosfs/msdosfs_fat.c struct msdosfsmount *pmp; pmp 870 msdosfs/msdosfs_fat.c while (cluster >= CLUST_FIRST && cluster <= pmp->pm_maxcluster) { pmp 871 msdosfs/msdosfs_fat.c byteoffset = FATOFS(pmp, cluster); pmp 872 msdosfs/msdosfs_fat.c fatblock(pmp, byteoffset, &bn, &bsize, &bo); pmp 875 msdosfs/msdosfs_fat.c updatefats(pmp, bp, lbn); pmp 876 msdosfs/msdosfs_fat.c error = bread(pmp->pm_devvp, bn, bsize, NOCRED, &bp); pmp 883 msdosfs/msdosfs_fat.c usemap_free(pmp, cluster); pmp 884 msdosfs/msdosfs_fat.c switch (pmp->pm_fatmask) { pmp 908 msdosfs/msdosfs_fat.c cluster &= pmp->pm_fatmask; pmp 909 msdosfs/msdosfs_fat.c if ((cluster | ~pmp->pm_fatmask) >= CLUST_RSRVD) pmp 910 msdosfs/msdosfs_fat.c cluster |= pmp->pm_fatmask; pmp 913 msdosfs/msdosfs_fat.c updatefats(pmp, bp, bn); pmp 922 msdosfs/msdosfs_fat.c fillinusemap(pmp) pmp 923 msdosfs/msdosfs_fat.c struct msdosfsmount *pmp; pmp 934 msdosfs/msdosfs_fat.c for (cn = 0; cn < (pmp->pm_maxcluster + N_INUSEBITS) / N_INUSEBITS; cn++) pmp 935 msdosfs/msdosfs_fat.c pmp->pm_inusemap[cn] = (u_int)-1; pmp 942 msdosfs/msdosfs_fat.c pmp->pm_freeclustercount = 0; pmp 943 msdosfs/msdosfs_fat.c for (cn = CLUST_FIRST; cn <= pmp->pm_maxcluster; cn++) { pmp 944 msdosfs/msdosfs_fat.c byteoffset = FATOFS(pmp, cn); pmp 945 msdosfs/msdosfs_fat.c bo = byteoffset % pmp->pm_fatblocksize; pmp 950 msdosfs/msdosfs_fat.c fatblock(pmp, byteoffset, &bn, &bsize, NULL); pmp 951 msdosfs/msdosfs_fat.c error = bread(pmp->pm_devvp, bn, bsize, NOCRED, &bp); pmp 957 msdosfs/msdosfs_fat.c if (FAT32(pmp)) pmp 961 msdosfs/msdosfs_fat.c if (FAT12(pmp) && (cn & 1)) pmp 963 msdosfs/msdosfs_fat.c readcn &= pmp->pm_fatmask; pmp 966 msdosfs/msdosfs_fat.c usemap_free(pmp, cn); pmp 998 msdosfs/msdosfs_fat.c struct msdosfsmount *pmp = dep->de_pmp; pmp 1038 msdosfs/msdosfs_fat.c error = clusteralloc(pmp, cn, count, CLUST_EOFE, &cn, &got); pmp 1057 msdosfs/msdosfs_fat.c error = fatentry(FAT_SET, pmp, pmp 1061 msdosfs/msdosfs_fat.c clusterfree(pmp, cn, NULL); pmp 1079 msdosfs/msdosfs_fat.c bp = getblk(pmp->pm_devvp, cntobn(pmp, cn++), pmp 1080 msdosfs/msdosfs_fat.c pmp->pm_bpcluster, 0, 0); pmp 1082 msdosfs/msdosfs_fat.c bp = getblk(DETOV(dep), de_cn2bn(pmp, frcn++), pmp 1083 msdosfs/msdosfs_fat.c pmp->pm_bpcluster, 0, 0); pmp 1088 msdosfs/msdosfs_fat.c de_bn2cn(pmp, bp->b_lblkno), pmp 105 msdosfs/msdosfs_lookup.c struct msdosfsmount *pmp; pmp 124 msdosfs/msdosfs_lookup.c pmp = dp->de_pmp; pmp 182 msdosfs/msdosfs_lookup.c if (pmp->pm_flags & MSDOSFSMNT_SHORTNAME) pmp 235 msdosfs/msdosfs_lookup.c error = bread(pmp->pm_devvp, bn, blsize, NOCRED, &bp); pmp 280 msdosfs/msdosfs_lookup.c if (pmp->pm_flags & MSDOSFSMNT_SHORTNAME) pmp 421 msdosfs/msdosfs_lookup.c if (FAT32(pmp)) { pmp 423 msdosfs/msdosfs_lookup.c if (scn == pmp->pm_rootdirblk) { pmp 456 msdosfs/msdosfs_lookup.c if (FAT32(pmp) && scn == MSDOSFSROOT) pmp 457 msdosfs/msdosfs_lookup.c scn = pmp->pm_rootdirblk; pmp 489 msdosfs/msdosfs_lookup.c if ((error = deget(pmp, cluster, blkoff, &tdp)) != 0) pmp 521 msdosfs/msdosfs_lookup.c if ((error = deget(pmp, cluster, blkoff, &tdp)) != 0) pmp 553 msdosfs/msdosfs_lookup.c if ((error = deget(pmp, cluster, blkoff, &tdp)) != 0) { pmp 571 msdosfs/msdosfs_lookup.c if ((error = deget(pmp, cluster, blkoff, &tdp)) != 0) pmp 605 msdosfs/msdosfs_lookup.c struct msdosfsmount *pmp = ddep->de_pmp; pmp 626 msdosfs/msdosfs_lookup.c dirclust = de_clcount(pmp, diroffset); pmp 635 msdosfs/msdosfs_lookup.c ddep->de_FileSize += de_cn2off(pmp, dirclust); pmp 643 msdosfs/msdosfs_lookup.c error = pcbmap(ddep, de_cluster(pmp, ddep->de_fndoffset), pmp 649 msdosfs/msdosfs_lookup.c diroffset &= pmp->pm_crbomask; pmp 650 msdosfs/msdosfs_lookup.c if ((error = bread(pmp->pm_devvp, bn, blsize, NOCRED, &bp)) != 0) { pmp 654 msdosfs/msdosfs_lookup.c ndep = bptoep(pmp, bp, ddep->de_fndoffset); pmp 668 msdosfs/msdosfs_lookup.c if (!(ddep->de_fndoffset & pmp->pm_crbomask)) { pmp 674 msdosfs/msdosfs_lookup.c de_cluster(pmp, pmp 680 msdosfs/msdosfs_lookup.c error = bread(pmp->pm_devvp, bn, blsize, pmp 686 msdosfs/msdosfs_lookup.c ndep = bptoep(pmp, bp, ddep->de_fndoffset); pmp 705 msdosfs/msdosfs_lookup.c if (FAT32(pmp) && dirclust == pmp->pm_rootdirblk) pmp 712 msdosfs/msdosfs_lookup.c return deget(pmp, dirclust, diroffset, depp); pmp 731 msdosfs/msdosfs_lookup.c struct msdosfsmount *pmp = dep->de_pmp; pmp 745 msdosfs/msdosfs_lookup.c error = bread(pmp->pm_devvp, bn, blsize, NOCRED, &bp); pmp 805 msdosfs/msdosfs_lookup.c struct msdosfsmount *pmp; pmp 823 msdosfs/msdosfs_lookup.c pmp = dep->de_pmp; pmp 825 msdosfs/msdosfs_lookup.c if (pmp != source->de_pmp) pmp 828 msdosfs/msdosfs_lookup.c if (FAT32(pmp) && dep->de_StartCluster == pmp->pm_rootdirblk) pmp 837 msdosfs/msdosfs_lookup.c error = bread(pmp->pm_devvp, cntobn(pmp, scn), pmp 838 msdosfs/msdosfs_lookup.c pmp->pm_bpcluster, NOCRED, &bp); pmp 849 msdosfs/msdosfs_lookup.c if (FAT32(pmp)) pmp 858 msdosfs/msdosfs_lookup.c if (FAT32(pmp) && scn == pmp->pm_rootdirblk) { pmp 870 msdosfs/msdosfs_lookup.c if ((error = deget(pmp, scn, 0, &dep)) != 0) pmp 889 msdosfs/msdosfs_lookup.c readep(pmp, dirclust, diroffset, bpp, epp) pmp 890 msdosfs/msdosfs_lookup.c struct msdosfsmount *pmp; pmp 900 msdosfs/msdosfs_lookup.c boff = diroffset & ~pmp->pm_crbomask; pmp 901 msdosfs/msdosfs_lookup.c blsize = pmp->pm_bpcluster; pmp 903 msdosfs/msdosfs_lookup.c && de_blk(pmp, diroffset + blsize) > pmp->pm_rootdirsize) pmp 904 msdosfs/msdosfs_lookup.c blsize = de_bn2off(pmp, pmp->pm_rootdirsize) & pmp->pm_crbomask; pmp 905 msdosfs/msdosfs_lookup.c bn = detobn(pmp, dirclust, diroffset); pmp 906 msdosfs/msdosfs_lookup.c if ((error = bread(pmp->pm_devvp, bn, blsize, NOCRED, bpp)) != 0) { pmp 912 msdosfs/msdosfs_lookup.c *epp = bptoep(pmp, *bpp, diroffset); pmp 950 msdosfs/msdosfs_lookup.c struct msdosfsmount *pmp = pdep->de_pmp; pmp 962 msdosfs/msdosfs_lookup.c error = pcbmap(pdep, de_cluster(pmp, offset), &bn, 0, &blsize); pmp 965 msdosfs/msdosfs_lookup.c error = bread(pmp->pm_devvp, bn, blsize, NOCRED, &bp); pmp 970 msdosfs/msdosfs_lookup.c ep = bptoep(pmp, bp, offset); pmp 991 msdosfs/msdosfs_lookup.c if ((pmp->pm_flags & MSDOSFSMNT_NOWIN95) pmp 992 msdosfs/msdosfs_lookup.c || !(offset & pmp->pm_crbomask) pmp 998 msdosfs/msdosfs_lookup.c } while (!(pmp->pm_flags & MSDOSFSMNT_NOWIN95) pmp 999 msdosfs/msdosfs_lookup.c && !(offset & pmp->pm_crbomask) pmp 1013 msdosfs/msdosfs_lookup.c struct msdosfsmount *pmp = dep->de_pmp; pmp 1038 msdosfs/msdosfs_lookup.c error = bread(pmp->pm_devvp, bn, blsize, NOCRED, &bp); pmp 1077 msdosfs/msdosfs_lookup.c struct msdosfsmount *pmp = dep->de_pmp; pmp 1091 msdosfs/msdosfs_lookup.c if (bread(pmp->pm_devvp, bn, blsize, NOCRED, &bp)) { pmp 106 msdosfs/msdosfs_vfsops.c struct msdosfsmount *pmp = NULL; pmp 119 msdosfs/msdosfs_vfsops.c pmp = VFSTOMSDOSFS(mp); pmp 121 msdosfs/msdosfs_vfsops.c if (!(pmp->pm_flags & MSDOSFSMNT_RONLY) && (mp->mnt_flag & MNT_RDONLY)) { pmp 132 msdosfs/msdosfs_vfsops.c if ((pmp->pm_flags & MSDOSFSMNT_RONLY) && (mp->mnt_flag & MNT_WANTRDWR)) { pmp 138 msdosfs/msdosfs_vfsops.c devvp = pmp->pm_devvp; pmp 148 msdosfs/msdosfs_vfsops.c pmp->pm_flags &= ~MSDOSFSMNT_RONLY; pmp 153 msdosfs/msdosfs_vfsops.c pmp->pm_flags &= ~MSDOSFSMNT_MNTOPT; pmp 154 msdosfs/msdosfs_vfsops.c pmp->pm_flags |= args.flags & MSDOSFSMNT_MNTOPT; pmp 155 msdosfs/msdosfs_vfsops.c if (pmp->pm_flags & MSDOSFSMNT_NOWIN95) pmp 156 msdosfs/msdosfs_vfsops.c pmp->pm_flags |= MSDOSFSMNT_SHORTNAME; pmp 162 msdosfs/msdosfs_vfsops.c return (vfs_export(mp, &pmp->pm_export, pmp 202 msdosfs/msdosfs_vfsops.c if (devvp != pmp->pm_devvp) pmp 211 msdosfs/msdosfs_vfsops.c pmp = VFSTOMSDOSFS(mp); pmp 212 msdosfs/msdosfs_vfsops.c pmp->pm_gid = args.gid; pmp 213 msdosfs/msdosfs_vfsops.c pmp->pm_uid = args.uid; pmp 214 msdosfs/msdosfs_vfsops.c pmp->pm_mask = args.mask; pmp 215 msdosfs/msdosfs_vfsops.c pmp->pm_flags |= args.flags & MSDOSFSMNT_MNTOPT; pmp 217 msdosfs/msdosfs_vfsops.c if (pmp->pm_flags & MSDOSFSMNT_NOWIN95) pmp 218 msdosfs/msdosfs_vfsops.c pmp->pm_flags |= MSDOSFSMNT_SHORTNAME; pmp 219 msdosfs/msdosfs_vfsops.c else if (!(pmp->pm_flags & (MSDOSFSMNT_SHORTNAME | MSDOSFSMNT_LONGNAME))) { pmp 225 msdosfs/msdosfs_vfsops.c if (FAT32(pmp)) pmp 226 msdosfs/msdosfs_vfsops.c pmp->pm_flags |= MSDOSFSMNT_LONGNAME; pmp 232 msdosfs/msdosfs_vfsops.c pmp->pm_flags |= findwin95(VTODE(rvp)) pmp 245 msdosfs/msdosfs_vfsops.c printf("msdosfs_mount(): mp %x, pmp %x, inusemap %x\n", mp, pmp, pmp->pm_inusemap); pmp 257 msdosfs/msdosfs_vfsops.c struct msdosfsmount *pmp; pmp 291 msdosfs/msdosfs_vfsops.c pmp = NULL; pmp 305 msdosfs/msdosfs_vfsops.c pmp = malloc(sizeof *pmp, M_MSDOSFSMNT, M_WAITOK); pmp 306 msdosfs/msdosfs_vfsops.c bzero((caddr_t)pmp, sizeof *pmp); pmp 307 msdosfs/msdosfs_vfsops.c pmp->pm_mountp = mp; pmp 315 msdosfs/msdosfs_vfsops.c pmp->pm_BytesPerSec = getushort(b50->bpbBytesPerSec); pmp 316 msdosfs/msdosfs_vfsops.c pmp->pm_ResSectors = getushort(b50->bpbResSectors); pmp 317 msdosfs/msdosfs_vfsops.c pmp->pm_FATs = b50->bpbFATs; pmp 318 msdosfs/msdosfs_vfsops.c pmp->pm_RootDirEnts = getushort(b50->bpbRootDirEnts); pmp 319 msdosfs/msdosfs_vfsops.c pmp->pm_Sectors = getushort(b50->bpbSectors); pmp 320 msdosfs/msdosfs_vfsops.c pmp->pm_FATsecs = getushort(b50->bpbFATsecs); pmp 321 msdosfs/msdosfs_vfsops.c pmp->pm_SecPerTrack = getushort(b50->bpbSecPerTrack); pmp 322 msdosfs/msdosfs_vfsops.c pmp->pm_Heads = getushort(b50->bpbHeads); pmp 323 msdosfs/msdosfs_vfsops.c pmp->pm_Media = b50->bpbMedia; pmp 326 msdosfs/msdosfs_vfsops.c pmp->pm_BlkPerSec = pmp->pm_BytesPerSec / DEV_BSIZE; pmp 328 msdosfs/msdosfs_vfsops.c if (!pmp->pm_BytesPerSec || !SecPerClust || pmp->pm_SecPerTrack > 63) { pmp 333 msdosfs/msdosfs_vfsops.c if (pmp->pm_Sectors == 0) { pmp 334 msdosfs/msdosfs_vfsops.c pmp->pm_HiddenSects = getulong(b50->bpbHiddenSecs); pmp 335 msdosfs/msdosfs_vfsops.c pmp->pm_HugeSectors = getulong(b50->bpbHugeSectors); pmp 337 msdosfs/msdosfs_vfsops.c pmp->pm_HiddenSects = getushort(b33->bpbHiddenSecs); pmp 338 msdosfs/msdosfs_vfsops.c pmp->pm_HugeSectors = pmp->pm_Sectors; pmp 341 msdosfs/msdosfs_vfsops.c if (pmp->pm_RootDirEnts == 0) { pmp 342 msdosfs/msdosfs_vfsops.c if (pmp->pm_Sectors || pmp->pm_FATsecs || pmp 347 msdosfs/msdosfs_vfsops.c pmp->pm_fatmask = FAT32_MASK; pmp 348 msdosfs/msdosfs_vfsops.c pmp->pm_fatmult = 4; pmp 349 msdosfs/msdosfs_vfsops.c pmp->pm_fatdiv = 1; pmp 350 msdosfs/msdosfs_vfsops.c pmp->pm_FATsecs = getulong(b710->bpbBigFATsecs); pmp 352 msdosfs/msdosfs_vfsops.c pmp->pm_curfat = getushort(b710->bpbExtFlags) & FATNUM; pmp 354 msdosfs/msdosfs_vfsops.c pmp->pm_flags |= MSDOSFS_FATMIRROR; pmp 356 msdosfs/msdosfs_vfsops.c pmp->pm_flags |= MSDOSFS_FATMIRROR; pmp 366 msdosfs/msdosfs_vfsops.c (pmp->pm_BytesPerSec < DEV_BSIZE) || pmp 367 msdosfs/msdosfs_vfsops.c (pmp->pm_BytesPerSec & (pmp->pm_BytesPerSec - 1)) || pmp 368 msdosfs/msdosfs_vfsops.c (pmp->pm_HugeSectors == 0) || (pmp->pm_FATsecs == 0)) { pmp 373 msdosfs/msdosfs_vfsops.c pmp->pm_HugeSectors *= pmp->pm_BlkPerSec; pmp 374 msdosfs/msdosfs_vfsops.c pmp->pm_HiddenSects *= pmp->pm_BlkPerSec; pmp 375 msdosfs/msdosfs_vfsops.c pmp->pm_FATsecs *= pmp->pm_BlkPerSec; pmp 376 msdosfs/msdosfs_vfsops.c pmp->pm_fatblk = pmp->pm_ResSectors * pmp->pm_BlkPerSec; pmp 377 msdosfs/msdosfs_vfsops.c SecPerClust *= pmp->pm_BlkPerSec; pmp 379 msdosfs/msdosfs_vfsops.c if (FAT32(pmp)) { pmp 380 msdosfs/msdosfs_vfsops.c pmp->pm_rootdirblk = getulong(b710->bpbRootClust); pmp 381 msdosfs/msdosfs_vfsops.c pmp->pm_firstcluster = pmp->pm_fatblk pmp 382 msdosfs/msdosfs_vfsops.c + (pmp->pm_FATs * pmp->pm_FATsecs); pmp 383 msdosfs/msdosfs_vfsops.c pmp->pm_fsinfo = getushort(b710->bpbFSInfo) * pmp->pm_BlkPerSec; pmp 385 msdosfs/msdosfs_vfsops.c pmp->pm_rootdirblk = pmp->pm_fatblk + pmp 386 msdosfs/msdosfs_vfsops.c (pmp->pm_FATs * pmp->pm_FATsecs); pmp 387 msdosfs/msdosfs_vfsops.c pmp->pm_rootdirsize = (pmp->pm_RootDirEnts * sizeof(struct direntry) pmp 389 msdosfs/msdosfs_vfsops.c pmp->pm_firstcluster = pmp->pm_rootdirblk + pmp->pm_rootdirsize; pmp 392 msdosfs/msdosfs_vfsops.c pmp->pm_nmbrofclusters = (pmp->pm_HugeSectors - pmp->pm_firstcluster) / pmp 394 msdosfs/msdosfs_vfsops.c pmp->pm_maxcluster = pmp->pm_nmbrofclusters + 1; pmp 395 msdosfs/msdosfs_vfsops.c pmp->pm_fatsize = pmp->pm_FATsecs * DEV_BSIZE; pmp 397 msdosfs/msdosfs_vfsops.c if (pmp->pm_fatmask == 0) { pmp 398 msdosfs/msdosfs_vfsops.c if (pmp->pm_maxcluster pmp 405 msdosfs/msdosfs_vfsops.c pmp->pm_fatmask = FAT12_MASK; pmp 406 msdosfs/msdosfs_vfsops.c pmp->pm_fatmult = 3; pmp 407 msdosfs/msdosfs_vfsops.c pmp->pm_fatdiv = 2; pmp 409 msdosfs/msdosfs_vfsops.c pmp->pm_fatmask = FAT16_MASK; pmp 410 msdosfs/msdosfs_vfsops.c pmp->pm_fatmult = 2; pmp 411 msdosfs/msdosfs_vfsops.c pmp->pm_fatdiv = 1; pmp 414 msdosfs/msdosfs_vfsops.c if (FAT12(pmp)) pmp 415 msdosfs/msdosfs_vfsops.c pmp->pm_fatblocksize = 3 * pmp->pm_BytesPerSec; pmp 417 msdosfs/msdosfs_vfsops.c pmp->pm_fatblocksize = MAXBSIZE; pmp 431 msdosfs/msdosfs_vfsops.c fat_max_clusters = pmp->pm_fatsize / pmp->pm_fatmult; pmp 432 msdosfs/msdosfs_vfsops.c fat_max_clusters *= pmp->pm_fatdiv; pmp 433 msdosfs/msdosfs_vfsops.c if (pmp->pm_maxcluster >= fat_max_clusters) { pmp 437 msdosfs/msdosfs_vfsops.c pmp->pm_maxcluster); pmp 439 msdosfs/msdosfs_vfsops.c pmp->pm_maxcluster = fat_max_clusters - 1; pmp 442 msdosfs/msdosfs_vfsops.c pmp->pm_fatblocksec = pmp->pm_fatblocksize / DEV_BSIZE; pmp 443 msdosfs/msdosfs_vfsops.c pmp->pm_bnshift = ffs(DEV_BSIZE) - 1; pmp 449 msdosfs/msdosfs_vfsops.c pmp->pm_bpcluster = SecPerClust * DEV_BSIZE; pmp 450 msdosfs/msdosfs_vfsops.c pmp->pm_crbomask = pmp->pm_bpcluster - 1; pmp 451 msdosfs/msdosfs_vfsops.c pmp->pm_cnshift = ffs(pmp->pm_bpcluster) - 1; pmp 457 msdosfs/msdosfs_vfsops.c if (pmp->pm_bpcluster ^ (1 << pmp->pm_cnshift)) { pmp 471 msdosfs/msdosfs_vfsops.c if (pmp->pm_fsinfo) { pmp 474 msdosfs/msdosfs_vfsops.c if ((error = bread(devvp, pmp->pm_fsinfo, fsi_size(pmp), pmp 482 msdosfs/msdosfs_vfsops.c pmp->pm_nxtfree = getulong(fp->fsinxtfree); pmp 484 msdosfs/msdosfs_vfsops.c pmp->pm_fsinfo = 0; pmp 497 msdosfs/msdosfs_vfsops.c bmapsiz = (pmp->pm_maxcluster + N_INUSEBITS - 1) / N_INUSEBITS; pmp 498 msdosfs/msdosfs_vfsops.c if (bmapsiz == 0 || SIZE_MAX / bmapsiz < sizeof(*pmp->pm_inusemap)) { pmp 503 msdosfs/msdosfs_vfsops.c pmp->pm_inusemap = malloc(bmapsiz * sizeof(*pmp->pm_inusemap), pmp 505 msdosfs/msdosfs_vfsops.c if (pmp->pm_inusemap == NULL) { pmp 513 msdosfs/msdosfs_vfsops.c pmp->pm_dev = dev; pmp 514 msdosfs/msdosfs_vfsops.c pmp->pm_devvp = devvp; pmp 519 msdosfs/msdosfs_vfsops.c if ((error = fillinusemap(pmp)) != 0) pmp 529 msdosfs/msdosfs_vfsops.c pmp->pm_flags |= MSDOSFSMNT_WAITONFAT; pmp 535 msdosfs/msdosfs_vfsops.c pmp->pm_flags |= MSDOSFSMNT_RONLY; pmp 537 msdosfs/msdosfs_vfsops.c pmp->pm_fmod = 1; pmp 538 msdosfs/msdosfs_vfsops.c mp->mnt_data = (qaddr_t)pmp; pmp 559 msdosfs/msdosfs_vfsops.c if (pmp) { pmp 560 msdosfs/msdosfs_vfsops.c if (pmp->pm_inusemap) pmp 561 msdosfs/msdosfs_vfsops.c free(pmp->pm_inusemap, M_MSDOSFSFAT); pmp 562 msdosfs/msdosfs_vfsops.c free(pmp, M_MSDOSFSMNT); pmp 587 msdosfs/msdosfs_vfsops.c struct msdosfsmount *pmp; pmp 598 msdosfs/msdosfs_vfsops.c pmp = VFSTOMSDOSFS(mp); pmp 599 msdosfs/msdosfs_vfsops.c pmp->pm_devvp->v_specmountpoint = NULL; pmp 600 msdosfs/msdosfs_vfsops.c vp = pmp->pm_devvp; pmp 605 msdosfs/msdosfs_vfsops.c pmp->pm_flags & MSDOSFSMNT_RONLY ? FREAD : FREAD|FWRITE, NOCRED, p); pmp 607 msdosfs/msdosfs_vfsops.c free(pmp->pm_inusemap, M_MSDOSFSFAT); pmp 608 msdosfs/msdosfs_vfsops.c free(pmp, M_MSDOSFSMNT); pmp 619 msdosfs/msdosfs_vfsops.c struct msdosfsmount *pmp = VFSTOMSDOSFS(mp); pmp 623 msdosfs/msdosfs_vfsops.c if ((error = deget(pmp, MSDOSFSROOT, MSDOSFSROOT_OFS, &ndep)) != 0) pmp 628 msdosfs/msdosfs_vfsops.c mp, pmp, ndep, DETOV(ndep)); pmp 641 msdosfs/msdosfs_vfsops.c struct msdosfsmount *pmp; pmp 643 msdosfs/msdosfs_vfsops.c pmp = VFSTOMSDOSFS(mp); pmp 644 msdosfs/msdosfs_vfsops.c sbp->f_bsize = pmp->pm_bpcluster; pmp 645 msdosfs/msdosfs_vfsops.c sbp->f_iosize = pmp->pm_bpcluster; pmp 646 msdosfs/msdosfs_vfsops.c sbp->f_blocks = pmp->pm_nmbrofclusters; pmp 647 msdosfs/msdosfs_vfsops.c sbp->f_bfree = pmp->pm_freeclustercount; pmp 648 msdosfs/msdosfs_vfsops.c sbp->f_bavail = pmp->pm_freeclustercount; pmp 649 msdosfs/msdosfs_vfsops.c sbp->f_files = pmp->pm_RootDirEnts; /* XXX */ pmp 703 msdosfs/msdosfs_vfsops.c struct msdosfsmount *pmp = VFSTOMSDOSFS(mp); pmp 716 msdosfs/msdosfs_vfsops.c if (pmp->pm_fmod != 0) { pmp 717 msdosfs/msdosfs_vfsops.c if (pmp->pm_flags & MSDOSFSMNT_RONLY) pmp 732 msdosfs/msdosfs_vfsops.c vn_lock(pmp->pm_devvp, LK_EXCLUSIVE | LK_RETRY, p); pmp 733 msdosfs/msdosfs_vfsops.c if ((error = VOP_FSYNC(pmp->pm_devvp, cred, waitfor, p)) != 0) pmp 735 msdosfs/msdosfs_vfsops.c VOP_UNLOCK(pmp->pm_devvp, 0, p); pmp 747 msdosfs/msdosfs_vfsops.c struct msdosfsmount *pmp = VFSTOMSDOSFS(mp); pmp 752 msdosfs/msdosfs_vfsops.c error = deget(pmp, defhp->defid_dirclust, defhp->defid_dirofs, &dep); pmp 786 msdosfs/msdosfs_vfsops.c register struct msdosfsmount *pmp = VFSTOMSDOSFS(mp); pmp 791 msdosfs/msdosfs_vfsops.c np = vfs_export_lookup(mp, &pmp->pm_export, nam); pmp 219 msdosfs/msdosfs_vnops.c struct msdosfsmount *pmp = dep->de_pmp; pmp 225 msdosfs/msdosfs_vnops.c dosmode &= pmp->pm_mask; pmp 227 msdosfs/msdosfs_vnops.c && pmp->pm_flags & MSDOSFSMNT_ALLOWDIRX) { pmp 233 msdosfs/msdosfs_vnops.c return (vaccess(dosmode, pmp->pm_uid, pmp->pm_gid, ap->a_mode, pmp 243 msdosfs/msdosfs_vnops.c struct msdosfsmount *pmp = dep->de_pmp; pmp 285 msdosfs/msdosfs_vnops.c fileid = FAT32(pmp) ? pmp->pm_rootdirblk : 1; pmp 291 msdosfs/msdosfs_vnops.c dirsperblk = pmp->pm_BytesPerSec / pmp 295 msdosfs/msdosfs_vnops.c roottobn(pmp, 0) : cntobn(pmp, dep->de_dirclust); pmp 309 msdosfs/msdosfs_vnops.c if (pmp->pm_flags & MSDOSFSMNT_ALLOWDIRX) { pmp 441 msdosfs/msdosfs_vnops.c struct msdosfsmount *pmp = dep->de_pmp; pmp 457 msdosfs/msdosfs_vnops.c lbn = de_cluster(pmp, uio->uio_offset); pmp 458 msdosfs/msdosfs_vnops.c on = uio->uio_offset & pmp->pm_crbomask; pmp 459 msdosfs/msdosfs_vnops.c n = min((uint32_t) (pmp->pm_bpcluster - on), uio->uio_resid); pmp 482 msdosfs/msdosfs_vnops.c error = bread(pmp->pm_devvp, lbn, blsize, NOCRED, &bp); pmp 485 msdosfs/msdosfs_vnops.c rablkno = de_cn2bn(pmp, rablock); pmp 487 msdosfs/msdosfs_vnops.c de_cn2off(pmp, rablock) < dep->de_FileSize) pmp 488 msdosfs/msdosfs_vnops.c error = breadn(vp, de_cn2bn(pmp, lbn), pmp 489 msdosfs/msdosfs_vnops.c pmp->pm_bpcluster, &rablkno, pmp 490 msdosfs/msdosfs_vnops.c &pmp->pm_bpcluster, 1, NOCRED, &bp); pmp 492 msdosfs/msdosfs_vnops.c error = bread(vp, de_cn2bn(pmp, lbn), pmp 493 msdosfs/msdosfs_vnops.c pmp->pm_bpcluster, NOCRED, &bp); pmp 496 msdosfs/msdosfs_vnops.c n = min(n, pmp->pm_bpcluster - bp->b_resid); pmp 531 msdosfs/msdosfs_vnops.c struct msdosfsmount *pmp = dep->de_pmp; pmp 595 msdosfs/msdosfs_vnops.c count = de_clcount(pmp, uio->uio_offset + resid) - pmp 596 msdosfs/msdosfs_vnops.c de_clcount(pmp, osize); pmp 602 msdosfs/msdosfs_vnops.c lastcn = de_clcount(pmp, osize) - 1; pmp 605 msdosfs/msdosfs_vnops.c if (de_cluster(pmp, uio->uio_offset) > lastcn) { pmp 610 msdosfs/msdosfs_vnops.c bn = de_blk(pmp, uio->uio_offset); pmp 611 msdosfs/msdosfs_vnops.c if ((uio->uio_offset & pmp->pm_crbomask) == 0 pmp 612 msdosfs/msdosfs_vnops.c && (de_blk(pmp, uio->uio_offset + uio->uio_resid) > de_blk(pmp, uio->uio_offset) pmp 619 msdosfs/msdosfs_vnops.c bp = getblk(thisvp, bn, pmp->pm_bpcluster, 0, 0); pmp 627 msdosfs/msdosfs_vnops.c de_bn2cn(pmp, bp->b_lblkno), pmp 642 msdosfs/msdosfs_vnops.c error = bread(thisvp, bn, pmp->pm_bpcluster, pmp 650 msdosfs/msdosfs_vnops.c croffset = uio->uio_offset & pmp->pm_crbomask; pmp 651 msdosfs/msdosfs_vnops.c n = min(uio->uio_resid, pmp->pm_bpcluster - croffset); pmp 676 msdosfs/msdosfs_vnops.c else if (n + croffset == pmp->pm_bpcluster) pmp 867 msdosfs/msdosfs_vnops.c struct msdosfsmount *pmp; pmp 871 msdosfs/msdosfs_vnops.c pmp = VFSTOMSDOSFS(fdvp->v_mount); pmp 1092 msdosfs/msdosfs_vnops.c error = pcbmap(dp, de_cluster(pmp, to_diroffset), 0, pmp 1101 msdosfs/msdosfs_vnops.c ip->de_diroffset = to_diroffset & pmp->pm_crbomask; pmp 1118 msdosfs/msdosfs_vnops.c bn = cntobn(pmp, cn); pmp 1119 msdosfs/msdosfs_vnops.c error = bread(pmp->pm_devvp, bn, pmp->pm_bpcluster, pmp 1129 msdosfs/msdosfs_vnops.c if (FAT32(pmp) && pcl == pmp->pm_rootdirblk) pmp 1132 msdosfs/msdosfs_vnops.c if (FAT32(pmp)) { pmp 1197 msdosfs/msdosfs_vnops.c struct msdosfsmount *pmp = pdep->de_pmp; pmp 1215 msdosfs/msdosfs_vnops.c error = clusteralloc(pmp, 0, 1, CLUST_EOFE, &newcluster, NULL); pmp 1220 msdosfs/msdosfs_vnops.c ndirent.de_pmp = pmp; pmp 1230 msdosfs/msdosfs_vnops.c bn = cntobn(pmp, newcluster); pmp 1232 msdosfs/msdosfs_vnops.c bp = getblk(pmp->pm_devvp, bn, pmp->pm_bpcluster, 0, 0); pmp 1233 msdosfs/msdosfs_vnops.c bzero(bp->b_data, pmp->pm_bpcluster); pmp 1244 msdosfs/msdosfs_vnops.c if (FAT32(pmp) && pcl == pmp->pm_rootdirblk) pmp 1253 msdosfs/msdosfs_vnops.c if (FAT32(pmp)) { pmp 1287 msdosfs/msdosfs_vnops.c clusterfree(pmp, newcluster, NULL); pmp 1390 msdosfs/msdosfs_vnops.c struct msdosfsmount *pmp = dep->de_pmp; pmp 1439 msdosfs/msdosfs_vnops.c dirsperblk = pmp->pm_BytesPerSec / sizeof(struct direntry); pmp 1449 msdosfs/msdosfs_vnops.c || (FAT32(pmp) && dep->de_StartCluster == pmp->pm_rootdirblk)) { pmp 1458 msdosfs/msdosfs_vnops.c if (FAT32(pmp)) pmp 1459 msdosfs/msdosfs_vnops.c dirbuf.d_fileno = pmp->pm_rootdirblk; pmp 1493 msdosfs/msdosfs_vnops.c lbn = de_cluster(pmp, offset - bias); pmp 1494 msdosfs/msdosfs_vnops.c on = (offset - bias) & pmp->pm_crbomask; pmp 1495 msdosfs/msdosfs_vnops.c n = min(pmp->pm_bpcluster - on, uio->uio_resid); pmp 1502 msdosfs/msdosfs_vnops.c error = bread(pmp->pm_devvp, bn, blsize, NOCRED, &bp); pmp 1541 msdosfs/msdosfs_vnops.c if (pmp->pm_flags & MSDOSFSMNT_SHORTNAME) pmp 1565 msdosfs/msdosfs_vnops.c if (FAT32(pmp)) pmp 1571 msdosfs/msdosfs_vnops.c fileno = FAT32(pmp) ? pmp 1572 msdosfs/msdosfs_vnops.c pmp->pm_rootdirblk : 1; pmp 1582 msdosfs/msdosfs_vnops.c roottobn(pmp, 0) : cntobn(pmp, cn); pmp 1598 msdosfs/msdosfs_vnops.c pmp->pm_flags & MSDOSFSMNT_SHORTNAME); pmp 1702 msdosfs/msdosfs_vnops.c struct msdosfsmount *pmp = dep->de_pmp; pmp 1714 msdosfs/msdosfs_vnops.c return (pcbmap(dep, de_bn2cn(pmp, ap->a_bn), ap->a_bnp, 0, 0)); pmp 1798 msdosfs/msdosfs_vnops.c struct msdosfsmount *pmp = VTODE(ap->a_vp)->de_pmp; pmp 1805 msdosfs/msdosfs_vnops.c *ap->a_retval = pmp->pm_flags & MSDOSFSMNT_LONGNAME ? WIN_MAXLEN : 12; pmp 90 msdosfs/msdosfsmount.h #define FATOFS(pmp, cn) ((cn) * (pmp)->pm_fatmult / (pmp)->pm_fatdiv) pmp 133 msdosfs/msdosfsmount.h #define bptoep(pmp, bp, dirofs) \ pmp 135 msdosfs/msdosfsmount.h + ((dirofs) & (pmp)->pm_crbomask))) pmp 140 msdosfs/msdosfsmount.h #define de_bn2cn(pmp, bn) \ pmp 141 msdosfs/msdosfsmount.h ((bn) >> ((pmp)->pm_cnshift - (pmp)->pm_bnshift)) pmp 146 msdosfs/msdosfsmount.h #define de_cn2bn(pmp, cn) \ pmp 147 msdosfs/msdosfsmount.h ((cn) << ((pmp)->pm_cnshift - (pmp)->pm_bnshift)) pmp 152 msdosfs/msdosfsmount.h #define de_cluster(pmp, off) \ pmp 153 msdosfs/msdosfsmount.h ((off) >> (pmp)->pm_cnshift) pmp 158 msdosfs/msdosfsmount.h #define de_clcount(pmp, size) \ pmp 159 msdosfs/msdosfsmount.h (((size) + (pmp)->pm_bpcluster - 1) >> (pmp)->pm_cnshift) pmp 164 msdosfs/msdosfsmount.h #define de_blk(pmp, off) \ pmp 165 msdosfs/msdosfsmount.h (de_cn2bn(pmp, de_cluster((pmp), (off)))) pmp 170 msdosfs/msdosfsmount.h #define de_cn2off(pmp, cn) \ pmp 171 msdosfs/msdosfsmount.h ((cn) << (pmp)->pm_cnshift) pmp 176 msdosfs/msdosfsmount.h #define de_bn2off(pmp, bn) \ pmp 177 msdosfs/msdosfsmount.h ((bn) << (pmp)->pm_bnshift) pmp 181 msdosfs/msdosfsmount.h #define cntobn(pmp, cn) \ pmp 182 msdosfs/msdosfsmount.h (de_cn2bn((pmp), (cn)-CLUST_FIRST) + (pmp)->pm_firstcluster) pmp 187 msdosfs/msdosfsmount.h #define roottobn(pmp, dirofs) \ pmp 188 msdosfs/msdosfsmount.h (de_blk((pmp), (dirofs)) + (pmp)->pm_rootdirblk) pmp 194 msdosfs/msdosfsmount.h #define detobn(pmp, dirclu, dirofs) \ pmp 196 msdosfs/msdosfsmount.h ? roottobn((pmp), (dirofs)) \ pmp 197 msdosfs/msdosfsmount.h : cntobn((pmp), (dirclu))) pmp 200 msdosfs/msdosfsmount.h #define fsi_size(pmp) \ pmp 201 msdosfs/msdosfsmount.h (1024 << ((pmp)->pm_BlkPerSec >> 2))