Deleted Added
full compact
ext2_vfsops.c (331722) ext2_vfsops.c (343517)
1/*-
2 * modified for EXT2FS support in Lites 1.1
3 *
4 * Aug 1995, Godmar Back (gback@cs.utah.edu)
5 * University of Utah, Department of Computer Science
6 */
7/*-
8 * Copyright (c) 1989, 1991, 1993, 1994

--- 19 unchanged lines hidden (view full) ---

28 * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
29 * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
30 * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
31 * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
32 * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
33 * SUCH DAMAGE.
34 *
35 * @(#)ffs_vfsops.c 8.8 (Berkeley) 4/18/94
1/*-
2 * modified for EXT2FS support in Lites 1.1
3 *
4 * Aug 1995, Godmar Back (gback@cs.utah.edu)
5 * University of Utah, Department of Computer Science
6 */
7/*-
8 * Copyright (c) 1989, 1991, 1993, 1994

--- 19 unchanged lines hidden (view full) ---

28 * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
29 * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
30 * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
31 * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
32 * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
33 * SUCH DAMAGE.
34 *
35 * @(#)ffs_vfsops.c 8.8 (Berkeley) 4/18/94
36 * $FreeBSD: stable/11/sys/fs/ext2fs/ext2_vfsops.c 331722 2018-03-29 02:50:57Z eadler $
36 * $FreeBSD: stable/11/sys/fs/ext2fs/ext2_vfsops.c 343517 2019-01-28 02:12:48Z pfg $
37 */
38
39#include <sys/param.h>
40#include <sys/systm.h>
41#include <sys/namei.h>
42#include <sys/priv.h>
43#include <sys/proc.h>
44#include <sys/kernel.h>

--- 319 unchanged lines hidden (view full) ---

364 }
365 /* Check for group descriptor size */
366 if (EXT2_HAS_INCOMPAT_FEATURE(fs, EXT2F_INCOMPAT_64BIT) &&
367 (es->e3fs_desc_size != sizeof(struct ext2_gd))) {
368 printf("ext2fs: group descriptor size unsupported %d\n",
369 es->e3fs_desc_size);
370 return (EINVAL);
371 }
37 */
38
39#include <sys/param.h>
40#include <sys/systm.h>
41#include <sys/namei.h>
42#include <sys/priv.h>
43#include <sys/proc.h>
44#include <sys/kernel.h>

--- 319 unchanged lines hidden (view full) ---

364 }
365 /* Check for group descriptor size */
366 if (EXT2_HAS_INCOMPAT_FEATURE(fs, EXT2F_INCOMPAT_64BIT) &&
367 (es->e3fs_desc_size != sizeof(struct ext2_gd))) {
368 printf("ext2fs: group descriptor size unsupported %d\n",
369 es->e3fs_desc_size);
370 return (EINVAL);
371 }
372 /* Check for block size = 1K|2K|4K */
373 if (es->e2fs_log_bsize > 2) {
374 printf("ext2fs: bad block size: %d\n", es->e2fs_log_bsize);
375 return (EINVAL);
376 }
377 /* Check for group size */
378 if (fs->e2fs_bpg == 0) {
379 printf("ext2fs: zero blocks per group\n");
380 return (EINVAL);
381 }
382 if (fs->e2fs_bpg != fs->e2fs_bsize * 8) {
383 printf("ext2fs: non-standard group size unsupported %d\n",
384 fs->e2fs_bpg);
385 return (EINVAL);
386 }
372
373 fs->e2fs_ipb = fs->e2fs_bsize / EXT2_INODE_SIZE(fs);
387
388 fs->e2fs_ipb = fs->e2fs_bsize / EXT2_INODE_SIZE(fs);
389 if (fs->e2fs_ipg == 0) {
390 printf("ext2fs: zero inodes per group\n");
391 return (EINVAL);
392 }
374 fs->e2fs_itpg = fs->e2fs_ipg / fs->e2fs_ipb;
375 /* s_resuid / s_resgid ? */
376 fs->e2fs_gcount = howmany(es->e2fs_bcount - es->e2fs_first_dblock,
377 EXT2_BLOCKS_PER_GROUP(fs));
378 e2fs_descpb = fs->e2fs_bsize / sizeof(struct ext2_gd);
379 db_count = howmany(fs->e2fs_gcount, e2fs_descpb);
380 fs->e2fs_gdbcount = db_count;
381 fs->e2fs_gd = malloc(db_count * fs->e2fs_bsize,

--- 747 unchanged lines hidden ---
393 fs->e2fs_itpg = fs->e2fs_ipg / fs->e2fs_ipb;
394 /* s_resuid / s_resgid ? */
395 fs->e2fs_gcount = howmany(es->e2fs_bcount - es->e2fs_first_dblock,
396 EXT2_BLOCKS_PER_GROUP(fs));
397 e2fs_descpb = fs->e2fs_bsize / sizeof(struct ext2_gd);
398 db_count = howmany(fs->e2fs_gcount, e2fs_descpb);
399 fs->e2fs_gdbcount = db_count;
400 fs->e2fs_gd = malloc(db_count * fs->e2fs_bsize,

--- 747 unchanged lines hidden ---