Date: Tue, 13 Aug 2013 13:12:21 -0400 From: "Sam Fourman Jr." <sfourman@gmail.com> To: "Pedro F. Giffuni" <pfg@freebsd.org> Cc: svn-src-head@freebsd.org, svn-src-all@freebsd.org, src-committers@freebsd.org Subject: Re: svn commit: r254283 - head/sys/fs/ext2fs Message-ID: <CAOFF%2BZ33H-==XaJD3uJvXOb9hXhTzXPu8k6OhEOh_kU08n382g@mail.gmail.com> In-Reply-To: <201308131540.r7DFehRl071120@svn.freebsd.org> References: <201308131540.r7DFehRl071120@svn.freebsd.org>
next in thread | previous in thread | raw e-mail | index | archive | help
On Tue, Aug 13, 2013 at 11:40 AM, Pedro F. Giffuni <pfg@freebsd.org> wrote: > Author: pfg > Date: Tue Aug 13 15:40:43 2013 > New Revision: 254283 > URL: http://svnweb.freebsd.org/changeset/base/254283 > > Log: > Define ext2fs local types and use them. > > Add definitions for e2fs_daddr_t, e4fs_daddr_t in addition > to the already existing e2fs_lbn_t and adjust them for ext4. > Other than making the code more readable these changes should > fix problems related to big filesystems. > > Setting the proper types can be tricky so the process was > helped by looking at UFS. In our implementation, logical block > numbers can be negative and the code depends on it. In ext2, > block numbers are unsigned so it is convenient to keep > e2fs_daddr_t unsigned and use the complete 32 bits. In the > case of e4fs_daddr_t, while the value should be unsigned, for > ext4 we only need to support 48 bits so preserving an extra > bit from the sign is not an issue. > > While here also drop the ext2_setblock() prototype that was > never used. > > Discussed with: mckusick, bde > MFC after: 3 weeks > I think this change broke the build..... root@Border:/usr/src # svnlite info Path: . Working Copy Root Path: /usr/src URL: http://svn0.us-west.freebsd.org/base/head Relative URL: ^/head Repository Root: http://svn0.us-west.freebsd.org/base Repository UUID: ccf9f872-aa2e-dd11-9fc8-001c23d0bc1f Revision: 254284 Node Kind: directory Schedule: normal Last Changed Author: pfg Last Changed Rev: 254283 Last Changed Date: 2013-08-13 15:40:43 +0000 (Tue, 13 Aug 2013) ssing-prototypes -Wpointer-arith -Winline -Wcast-qual -Wundef -Wno-pointer-sign -fformat-extensions -Wmissing-include-dirs -fdiagnostics-show-option -Wno-error-tautological-compare -Wno-error-empty-body -Wno-error-parentheses-equality -c /usr/src/sys/modules/ext2fs/../../fs/ext2fs/ext2_inode_cnv.c --- ext2_extents.o --- ctfconvert -L VERSION -g ext2_extents.o --- ext2_lookup.o --- --- ext2_subr.o --- --- ext2_htree.o --- ctfconvert -L VERSION -g ext2_htree.o --- ext2_lookup.o --- cc -O2 -pipe -fno-strict-aliasing -Werror -D_KERNEL -DKLD_MODULE -nostdinc -DHAVE_KERNEL_OPTION_HEADERS -include /usr/obj/usr/src/sys/BORDER/opt_global.h -I. -I@ -I@/contrib/altq -fno-common -g -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer -I/usr/obj/usr/src/sys/BORDER -mno-aes -mno-avx -mcmodel=kernel -mno-red-zone -mno-mmx -mno-sse -msoft-float -fno-asynchronous-unwind-tables -ffreestanding -fstack-protector -std=iso9899:1999 -Qunused-arguments -fstack-protector -Wall -Wredundant-decls -Wnested-externs -Wstrict-prototypes -Wmissing-prototypes -Wpointer-arith -Winline -Wcast-qual -Wundef -Wno-pointer-sign -fformat-extensions -Wmissing-include-dirs -fdiagnostics-show-option -Wno-error-tautological-compare -Wno-error-empty-body -Wno-error-parentheses-equality -c /usr/src/sys/modules/ext2fs/../../fs/ext2fs/ext2_lookup.c --- ext2_subr.o --- cc -O2 -pipe -fno-strict-aliasing -Werror -D_KERNEL -DKLD_MODULE -nostdinc -DHAVE_KERNEL_OPTION_HEADERS -include /usr/obj/usr/src/sys/BORDER/opt_global.h -I. -I@ -I@/contrib/altq -fno-common -g -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer -I/usr/obj/usr/src/sys/BORDER -mno-aes -mno-avx -mcmodel=kernel -mno-red-zone -mno-mmx -mno-sse -msoft-float -fno-asynchronous-unwind-tables -ffreestanding -fstack-protector -std=iso9899:1999 -Qunused-arguments -fstack-protector -Wall -Wredundant-decls -Wnested-externs -Wstrict-prototypes -Wmissing-prototypes -Wpointer-arith -Winline -Wcast-qual -Wundef -Wno-pointer-sign -fformat-extensions -Wmissing-include-dirs -fdiagnostics-show-option -Wno-error-tautological-compare -Wno-error-empty-body -Wno-error-parentheses-equality -c /usr/src/sys/modules/ext2fs/../../fs/ext2fs/ext2_subr.c --- ext2_vfsops.o --- cc -O2 -pipe -fno-strict-aliasing -Werror -D_KERNEL -DKLD_MODULE -nostdinc -DHAVE_KERNEL_OPTION_HEADERS -include /usr/obj/usr/src/sys/BORDER/opt_global.h -I. -I@ -I@/contrib/altq -fno-common -g -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer -I/usr/obj/usr/src/sys/BORDER -mno-aes -mno-avx -mcmodel=kernel -mno-red-zone -mno-mmx -mno-sse -msoft-float -fno-asynchronous-unwind-tables -ffreestanding -fstack-protector -std=iso9899:1999 -Qunused-arguments -fstack-protector -Wall -Wredundant-decls -Wnested-externs -Wstrict-prototypes -Wmissing-prototypes -Wpointer-arith -Winline -Wcast-qual -Wundef -Wno-pointer-sign -fformat-extensions -Wmissing-include-dirs -fdiagnostics-show-option -Wno-error-tautological-compare -Wno-error-empty-body -Wno-error-parentheses-equality -c /usr/src/sys/modules/ext2fs/../../fs/ext2fs/ext2_vfsops.c --- ext2_subr.o --- /usr/src/sys/modules/ext2fs/../../fs/ext2fs/ext2_subr.c:154:4: error: format specifies type 'int' but the argument has type 'e4fs_daddr_t' (aka 'long') [-Werror,-Wformat] start, last, (long long)ep->b_blkno, ^~~~~ /usr/src/sys/modules/ext2fs/../../fs/ext2fs/ext2_subr.c:154:11: error: format specifies type 'int' but the argument has type 'e4fs_daddr_t' (aka 'long') [-Werror,-Wformat] start, last, (long long)ep->b_blkno, ^~~~ 2 errors generated. *** [ext2_subr.o] Error code 1 make[4]: stopped in /usr/src/sys/modules/ext2fs --- ext2_inode_cnv.o --- ctfconvert -L VERSION -g ext2_inode_cnv.o --- ext2_inode.o --- ctfconvert -L VERSION -g ext2_inode.o --- ext2_alloc.o --- ctfconvert -L VERSION -g ext2_alloc.o --- ext2_lookup.o --- ctfconvert -L VERSION -g ext2_lookup.o --- ext2_vfsops.o --- ctfconvert -L VERSION -g ext2_vfsops.o 1 error make[4]: stopped in /usr/src/sys/modules/ext2fs *** Error code 2 Stop. make[3]: stopped in /usr/src/sys/modules *** [modules-all] Error code 1 make[2]: stopped in /usr/obj/usr/src/sys/BORDER 1 error make[2]: stopped in /usr/obj/usr/src/sys/BORDER *** [buildkernel] Error code 2 make[1]: stopped in /usr/src 1 error make[1]: stopped in /usr/src *** [buildkernel] Error code 2 make: stopped in /usr/src 1 error make: stopped in /usr/src root@Border:/usr/src # -- Sam Fourman Jr.
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?CAOFF%2BZ33H-==XaJD3uJvXOb9hXhTzXPu8k6OhEOh_kU08n382g>