Date: Mon, 24 Nov 1997 08:33:05 -0800 (PST) From: Bruce Evans <bde@FreeBSD.ORG> To: cvs-committers@FreeBSD.ORG, cvs-all@FreeBSD.ORG, cvs-sys@FreeBSD.ORG Subject: cvs commit: src/sys/ufs/ufs ufs_bmap.c Message-ID: <199711241633.IAA21767@freefall.freebsd.org>
next in thread | raw e-mail | index | archive | help
bde 1997/11/24 08:33:04 PST Modified files: sys/ufs/ufs ufs_bmap.c Log: Fixed overflow in ufs_getblns(). For ufs on systems with 32-bit ints, triple indirect blocks only worked for block sizes of 4K, since MNINDIR(ump)**3 overflows for larger block sizes (e.g., (8192/4)**3 = 2**33 > INT_MAX). This fix is not the obvious one of changing some types to 64 bits. It rearranges the code to avoid some unnecessary 64-bit calculations. Reviewed by: Kirk McKusick <mckusick@McKusick.COM> Revision Changes Path 1.17 +14 -7 src/sys/ufs/ufs/ufs_bmap.c
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?199711241633.IAA21767>