Lines Matching defs:pmp

223 	struct msdosfsmount *pmp = dep->de_pmp;
228 file_mode &= (vp->v_type == VDIR ? pmp->pm_dirmask : pmp->pm_mask);
246 return (vaccess(vp->v_type, file_mode, pmp->pm_uid, pmp->pm_gid,
254 struct msdosfsmount *pmp = dep->de_pmp;
258 u_long dirsperblk = pmp->pm_BytesPerSec / sizeof(struct direntry);
263 vap->va_fsid = dev2udev(pmp->pm_dev);
270 fileid = (uint64_t)cntobn(pmp, dep->de_StartCluster) *
275 fileid = (uint64_t)cntobn(pmp, dep->de_dirclust) *
278 fileid = (uint64_t)roottobn(pmp, 0) * dirsperblk;
287 (ap->a_vp->v_type == VDIR ? pmp->pm_dirmask : pmp->pm_mask);
288 vap->va_uid = pmp->pm_uid;
289 vap->va_gid = pmp->pm_gid;
295 if (pmp->pm_flags & MSDOSFSMNT_LONGNAME) {
314 vap->va_blocksize = pmp->pm_bpcluster;
317 (dep->de_FileSize + pmp->pm_crbomask) & ~pmp->pm_crbomask;
330 struct msdosfsmount *pmp = dep->de_pmp;
377 if (cred->cr_uid != pmp->pm_uid) {
421 uid = pmp->pm_uid;
424 gid = pmp->pm_gid;
425 if (cred->cr_uid != pmp->pm_uid || uid != pmp->pm_uid ||
426 (gid != pmp->pm_gid && !groupmember(gid, cred))) {
431 if (uid != pmp->pm_uid || gid != pmp->pm_gid)
473 if ((pmp->pm_flags & MSDOSFSMNT_NOWIN95) == 0 &&
500 if (cred->cr_uid != pmp->pm_uid) {
535 struct msdosfsmount *pmp = dep->de_pmp;
559 lbn = de_cluster(pmp, uio->uio_offset);
561 blsize = pmp->pm_bpcluster;
562 on = uio->uio_offset & pmp->pm_crbomask;
576 error = bread(pmp->pm_devvp, lbn, blsize, NOCRED, &bp);
577 } else if (de_cn2off(pmp, rablock) >= dep->de_FileSize) {
593 diff = pmp->pm_bpcluster - on;
630 struct msdosfsmount *pmp = dep->de_pmp;
698 count = de_clcount(pmp, uio->uio_offset + resid) -
699 de_clcount(pmp, osize);
705 lastcn = de_clcount(pmp, osize) - 1;
709 if (de_cluster(pmp, uio->uio_offset) > lastcn) {
714 croffset = uio->uio_offset & pmp->pm_crbomask;
715 n = min(uio->uio_resid, pmp->pm_bpcluster - croffset);
722 bn = de_cluster(pmp, uio->uio_offset);
723 if ((uio->uio_offset & pmp->pm_crbomask) == 0
724 && (de_cluster(pmp, uio->uio_offset + uio->uio_resid)
725 > de_cluster(pmp, uio->uio_offset)
732 bp = getblk(thisvp, bn, pmp->pm_bpcluster, 0, 0, 0);
761 error = bread(thisvp, bn, pmp->pm_bpcluster, cred, &bp);
799 else if (n + croffset == pmp->pm_bpcluster) {
952 struct msdosfsmount *pmp;
962 pmp = VFSTOMSDOSFS(fdvp->v_mount);
1012 error = deget(pmp, scn, blkoff, LK_EXCLUSIVE | LK_NOWAIT, &nip);
1018 error = deget(pmp, scn, blkoff, LK_EXCLUSIVE, &nip);
1043 error = deget(pmp, scn, blkoff, LK_EXCLUSIVE | LK_NOWAIT,
1055 error = deget(pmp, scn, blkoff, LK_EXCLUSIVE,
1111 lockmgr(&pmp->pm_checkpath_lock, LK_EXCLUSIVE, NULL);
1115 lockmgr(&pmp->pm_checkpath_lock, LK_RELEASE, NULL);
1122 error = deget(pmp, wait_scn, 0, LK_EXCLUSIVE,
1209 pmp->pm_mountp->mnt_stat.f_mntonname,
1211 msdosfs_integrity_error(pmp);
1215 error = pcbmap(tdip, de_cluster(pmp, to_diroffset), 0,
1227 fip->de_diroffset = to_diroffset & pmp->pm_crbomask;
1241 bn = cntobn(pmp, cn);
1242 error = bread(pmp->pm_devvp, bn, pmp->pm_bpcluster,
1246 pmp->pm_mountp->mnt_stat.f_mntonname,
1248 msdosfs_integrity_error(pmp);
1253 if (FAT32(pmp) && pcl == pmp->pm_rootdirblk)
1256 if (FAT32(pmp))
1262 pmp->pm_mountp->mnt_stat.f_mntonname,
1264 msdosfs_integrity_error(pmp);
1280 lockmgr(&pmp->pm_checkpath_lock, LK_RELEASE, NULL);
1344 struct msdosfsmount *pmp = pdep->de_pmp;
1366 error = clusteralloc(pmp, 0, 1, CLUST_EOFE, &newcluster, NULL);
1371 ndirent.de_pmp = pmp;
1381 bn = cntobn(pmp, newcluster);
1383 bp = getblk(pmp->pm_devvp, bn, pmp->pm_bpcluster, 0, 0, 0);
1384 memset(bp->b_data, 0, pmp->pm_bpcluster);
1400 if (FAT32(pmp) && pcl == pmp->pm_rootdirblk)
1409 if (FAT32(pmp)) {
1439 clusterfree(pmp, newcluster);
1519 struct msdosfsmount *pmp = dep->de_pmp;
1565 dirsperblk = pmp->pm_BytesPerSec / sizeof(struct direntry);
1575 || (FAT32(pmp) && dep->de_StartCluster == pmp->pm_rootdirblk)) {
1584 dirbuf.d_fileno = FAT32(pmp) ?
1585 (uint64_t)cntobn(pmp, pmp->pm_rootdirblk) *
1622 lbn = de_cluster(pmp, offset - bias);
1623 on = (offset - bias) & pmp->pm_crbomask;
1624 n = min(pmp->pm_bpcluster - on, uio->uio_resid);
1632 error = bread(pmp->pm_devvp, bn, blsize, NOCRED, &bp);
1673 if (pmp->pm_flags & MSDOSFSMNT_SHORTNAME)
1676 (struct winentry *)dentp, chksum, pmp);
1695 if (FAT32(pmp)) {
1699 cn = pmp->pm_rootdirblk;
1701 if (cn == MSDOSFSROOT && !FAT32(pmp))
1704 dirbuf.d_fileno = cntobn(pmp, cn) *
1717 ((pmp->pm_flags & MSDOSFSMNT_SHORTNAME) ?
1719 pmp);
1784 struct msdosfsmount *pmp;
1792 pmp = dep->de_pmp;
1794 *ap->a_bop = &pmp->pm_devvp->v_bufobj;
1824 bnpercn = de_cn2bn(pmp, 1);
1826 maxrun = ulmin(maxio - 1, pmp->pm_maxcluster - cn);
1936 struct msdosfsmount *pmp = VTODE(ap->a_vp)->de_pmp;
1946 *ap->a_retval = pmp->pm_flags & MSDOSFSMNT_LONGNAME ? WIN_MAXLEN : 12;