Re: git: 45d4e82bf61f - main - msdosfs: fix cluster limit when mounting FAT-16 file systems
- Go to: [ bottom of page ] [ top of archives ] [ this month ]
Date: Sat, 10 Aug 2024 09:37:20 UTC
Van: "Stefan Eßer" <se@FreeBSD.org> Datum: 9 augustus 2024 19:33 Aan: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org Onderwerp: git: 45d4e82bf61f - main - msdosfs: fix cluster limit when mounting FAT-16 file systems > > > The branch main has been updated by se: > > URL: https://cgit.FreeBSD.org/src/commit/?id=45d4e82bf61f91792142a2b9e2af657dab8500fd > > commit 45d4e82bf61f91792142a2b9e2af657dab8500fd > Author: Stefan Eßer > AuthorDate: 2024-08-09 17:26:27 +0000 > Commit: Stefan Eßer > CommitDate: 2024-08-09 17:26:27 +0000 > > msdosfs: fix cluster limit when mounting FAT-16 file systems > > The maximum cluster number was calculated based on the number of data > cluters that fit in the givem partition size and the size of the FAT > area. This limit did not take into account that the highest 10 cluster > numbers are reserved and must not be used for files. > > PR: 280347 > MFC after: 3 days > Reported by: pho@FreeBSD.org > --- > sys/fs/msdosfs/msdosfs_vfsops.c | 4 +++- > 1 file changed, 3 insertions(+), 1 deletion(-) > > diff --git a/sys/fs/msdosfs/msdosfs_vfsops.c b/sys/fs/msdosfs/msdosfs_vfsops.c > index 258c701bd300..adcffe45df82 100644 > --- a/sys/fs/msdosfs/msdosfs_vfsops.c > +++ b/sys/fs/msdosfs/msdosfs_vfsops.c > @@ -722,7 +722,9 @@ mountmsdosfs(struct vnode *odevvp, struct mount *mp) > } > } > > - clusters = (pmp->pm_fatsize / pmp->pm_fatmult) * pmp->pm_fatdiv ; > + clusters = (pmp->pm_fatsize / pmp->pm_fatmult) * pmp->pm_fatdiv; > + if (clusters >= (CLUST_RSRVD & pmp->pm_fatmask)) > + clusters = CLUST_RSRVD & pmp->pm_fatmask; > if (pmp->pm_maxcluster >= clusters) { > #ifdef MSDOSFS_DEBUG > printf("Warning: number of clusters (%ld) exceeds FAT " > > > > > Hi, Isn’t this similar? And a little bit shorter. clusters = MIN(clusters, CLUST_RSRVD & pmp->pm_fatmask); Regards,Ronald