summaryrefslogtreecommitdiffstats
path: root/sys/fs/msdosfs/msdosfsmount.h
diff options
context:
space:
mode:
authornyan <nyan@FreeBSD.org>2000-01-27 14:43:07 +0000
committernyan <nyan@FreeBSD.org>2000-01-27 14:43:07 +0000
commitd75f204b28cb3135261b939394bff5ad4151818f (patch)
tree2c0fec431eddbd5efdb9ddad7a926078823bfd82 /sys/fs/msdosfs/msdosfsmount.h
parente3e26fd9df66637e335dad0fb303e80bd6d461b7 (diff)
downloadFreeBSD-src-d75f204b28cb3135261b939394bff5ad4151818f.zip
FreeBSD-src-d75f204b28cb3135261b939394bff5ad4151818f.tar.gz
Supported non-512 bytes/sector format.
PR: misc/12992 Submitted by: chi@bd.mbn.or.jp (Chiharu Shibata) and Dmitrij Tejblum <tejblum@arc.hq.cti.ru> Reviewed by: Dmitrij Tejblum <tejblum@arc.hq.cti.ru>
Diffstat (limited to 'sys/fs/msdosfs/msdosfsmount.h')
-rw-r--r--sys/fs/msdosfs/msdosfsmount.h7
1 files changed, 7 insertions, 0 deletions
diff --git a/sys/fs/msdosfs/msdosfsmount.h b/sys/fs/msdosfs/msdosfsmount.h
index 4b6ade1..59cc7c9 100644
--- a/sys/fs/msdosfs/msdosfsmount.h
+++ b/sys/fs/msdosfs/msdosfsmount.h
@@ -68,6 +68,7 @@ struct msdosfsmount {
mode_t pm_mask; /* mask to and with file protection bits */
struct vnode *pm_devvp; /* vnode for block device mntd */
struct bpb50 pm_bpb; /* BIOS parameter blk for this fs */
+ u_long pm_BlkPerSec; /* How many DEV_BSIZE blocks fit inside a physical sector */
u_long pm_FATsecs; /* actual number of fat sectors */
u_long pm_fatblk; /* block # of first FAT */
u_long pm_rootdirblk; /* block # (cluster # for FAT32) of root directory number */
@@ -190,6 +191,12 @@ struct msdosfsmount {
? roottobn((pmp), (dirofs)) \
: cntobn((pmp), (dirclu)))
+/*
+ * Calculate fsinfo block size
+ */
+#define fsi_size(pmp) \
+ (1024 << ((pmp)->pm_BlkPerSec >> 2))
+
int msdosfs_init __P((struct vfsconf *vfsp));
int msdosfs_mountroot __P((void));
OpenPOWER on IntegriCloud