Several minor questions (12.0-amd64)
Hello, I have several brief questions on issues I'm slightly stuck on: 1. For buildworld, my /etc/src.conf uses default CROSS_COMPILER, CLANG_BOOTSTRAP, CLANG_FULL for amd64, but I would like clang to xbuild only for target i386 as I do not need the others (like Target/arm). Is there a knob for this? 2. Is there a way to read a list of modules inside an unloaded kernel? Sort of "kldstat -v" for a non-loaded kernel? Reading the kernel manifest (INCLUDE_CONFIG_FILE setting) is not what I need. 3. Under one scenario, I'm getting a kernel panic but I cannot dump because busybox states "no dumpdev specified" which means rc.conf (where I have dumpdev set) has not been read yet. How can I pass dumpdev wile in busybox command line so that ">dump" does its job? 4. Getting several of these lock order reversals. Kernel is drm-next but Generic from Head gives the same messages. Not urgent, just FYI. lock order reversal: 1st 0xf80064915040 filedesc structure (filedesc structure) @ /asp/git/srcdrm/sys/kern/kern_descrip.c:1234 2nd 0xf8002e9f0d50 ufs (ufs) @ /asp/git/srcdrm/sys/kern/vfs_subr.c:5022 stack backtrace: #0 0x804d3180 at witness_debugger+0x70 #1 0x804d3073 at witness_checkorder+0xe23 #2 0x8044aa35 at __lockmgr_args+0x875 #3 0x814d09e5 at ffs_lock+0xa5 #4 0x80717840 at VOP_LOCK1_APV+0xe0 #5 0x8054847a at _vn_lock+0x6a #6 0x8042c9c8 at knlist_remove_kq+0x88 #7 0x8053f358 at filt_vfsdetach+0x28 #8 0x8042d4f1 at knote_fdclose+0x171 #9 0x804206b5 at closefp+0x65 #10 0x806afe9a at amd64_syscall+0x57a #11 0x80692dcb at Xfast_syscall+0xfb lock order reversal: 1st 0xf80064915040 filedesc structure (filedesc structure) @ /asp/git/srcdrm/sys/kern/kern_descrip.c:1234 2nd 0xf8004b4d3d50 zfs (zfs) @ /asp/git/srcdrm/sys/kern/vfs_subr.c:5022 stack backtrace: #0 0x804d3180 at witness_debugger+0x70 #1 0x804d3073 at witness_checkorder+0xe23 #2 0x8044a0fe at lockmgr_lock_fast_path+0x1ce #3 0x80717840 at VOP_LOCK1_APV+0xe0 #4 0x8054847a at _vn_lock+0x6a #5 0x8042c9c8 at knlist_remove_kq+0x88 #6 0x8053f358 at filt_vfsdetach+0x28 #7 0x8042d4f1 at knote_fdclose+0x171 #8 0x804206b5 at closefp+0x65 #9 0x806afe9a at amd64_syscall+0x57a #10 0x80692dcb at Xfast_syscall+0xfb lock order reversal: 1st 0xf801aec715f0 syncer (syncer) @ /asp/git/srcdrm/sys/kern/vfs_subr.c:2152 2nd 0xf8004bc3e068 zfs (zfs) @ /asp/git/srcdrm/sys/kern/vfs_subr.c:2602 stack backtrace: #0 0x804d3180 at witness_debugger+0x70 #1 0x804d3073 at witness_checkorder+0xe23 #2 0x8044a0fe at lockmgr_lock_fast_path+0x1ce #3 0x80717840 at VOP_LOCK1_APV+0xe0 #4 0x8054847a at _vn_lock+0x6a #5 0x80538892 at vget+0x82 #6 0x8053a936 at vfs_msync+0xa6 #7 0x8053ef96 at sync_fsync+0xc6 #8 0x80716890 at VOP_FSYNC_APV+0xe0 #9 0x8053d2fc at sched_sync+0x36c #10 0x80436f44 at fork_exit+0x84 #11 0x8069301e at fork_trampoline+0xe lock order reversal: 1st 0xf80039590d50 zfs (zfs) @ /asp/git/srcdrm/sys/kern/vfs_mount.c:855 2nd 0xf8001a4489a0 devfs (devfs) @ /asp/git/srcdrm/sys/kern/vfs_subr.c:2602 stack backtrace: #0 0x804d3180 at witness_debugger+0x70 #1 0x804d3073 at witness_checkorder+0xe23 #2 0x8044a0fe at lo ckmgr_lock_fast_path+0x1ce #3 0x80717840 at VOP_LOCK1_APV+0xe0 #4 0x8054847a at _vn_lock+0x6a #5 0x80538892 at vget+0x82 #6 0x80395b2d at devfs_allocv+0xcd #7 0x80395643 at devfs_root+0x43 #8 0x8052f66f at vfs_donmount+0x118f #9 0x8052e4b2 at sys_nmount+0x72 #10 0x806afe9a at amd64_syscall+0x57a #11 0x80692dcb at Xfast_syscall+0xfb ___ freebsd-current@freebsd.org mailing list https://lists.freebsd.org/mailman/listinfo/freebsd-current To unsubscribe, send any mail to "freebsd-current-unsubscr...@freebsd.org"
default uid/gid for nfsuserd.c
Hi, I just added GID_NOGROUP to sys/conf.h and fixed the initial values for nobody/nogroup in the kernel. However, UID_NOBODY and GID_NOGROUP are in the _KERNEL section of sys/conf.h, so they aren't visible in userland. So, how to I set the initial uid/gid values for nfsuserd.c? (nfsuserd.c looks for entries in the password and group databases, so these defaults only get used if it doesn't find an entry in the database.) I don't mind using the hardcoded values, but is there a better way? (Moving the #define's out of the _KERNEL section maybe?) rick ___ freebsd-current@freebsd.org mailing list https://lists.freebsd.org/mailman/listinfo/freebsd-current To unsubscribe, send any mail to "freebsd-current-unsubscr...@freebsd.org"
buildworld fails with warning in usr.bin/diff/diffreg.c
The error is: --- all_subdir_usr.bin --- cc1: warnings being treated as errors /home/vagrant/src/usr.bin/diff/diffreg.c: In function 'change': /home/vagrant/src/usr.bin/diff/diffreg.c:1085: warning: 'i' may be used uninitialized in this function --- all_subdir_share --- --- ucred.9.gz --- gzip -cn /home/vagrant/src/share/man/man9/ucred.9 > ucred.9.gz --- uidinfo.9.gz --- gzip -cn /home/vagrant/src/share/man/man9/uidinfo.9 > uidinfo.9.gz --- uio.9.gz --- gzip -cn /home/vagrant/src/share/man/man9/uio.9 > uio.9.gz --- all_subdir_usr.bin --- *** [diffreg.o] Error code 1 make[4]: stopped in /home/vagrant/src/usr.bin/diff 1 error make[4]: stopped in /home/vagrant/src/usr.bin/diff --- all_subdir_share --- A failure has been detected in another branch of the parallel make make[5]: stopped in /home/vagrant/src/share/man/man9 --- all_subdir_usr.bin --- *** [all_subdir_usr.bin/diff] Error code 2 make[3]: stopped in /home/vagrant/src/usr.bin 1 error --- all_subdir_share --- *** [all_subdir_share/man/man9] Error code 2 make[4]: stopped in /home/vagrant/src/share/man 1 error make[4]: stopped in /home/vagrant/src/share/man *** [all_subdir_share/man] Error code 2 make[3]: stopped in /home/vagrant/src/share 1 error make[3]: stopped in /home/vagrant/src/share --- all_subdir_usr.bin --- make[3]: stopped in /home/vagrant/src/usr.bin --- all_subdir_share --- *** [all_subdir_share] Error code 2 make[2]: stopped in /home/vagrant/src --- all_subdir_usr.bin --- *** [all_subdir_usr.bin] Error code 2 make[2]: stopped in /home/vagrant/src --- all_subdir_lib --- A failure has been detected in another branch of the parallel make make[8]: stopped in /home/vagrant/src/lib/libcasper/services/cap_grp/tests *** [grp_test] Error code 2 make[7]: stopped in /home/vagrant/src/lib/libcasper/services/cap_grp/tests 1 error make[7]: stopped in /home/vagrant/src/lib/libcasper/services/cap_grp/tests *** [all_subdir_lib/libcasper/services/cap_grp/tests] Error code 2 make[6]: stopped in /home/vagrant/src/lib/libcasper/services/cap_grp 1 error make[6]: stopped in /home/vagrant/src/lib/libcasper/services/cap_grp *** [all_subdir_lib/libcasper/services/cap_grp] Error code 2 make[5]: stopped in /home/vagrant/src/lib/libcasper/services 1 error make[5]: stopped in /home/vagrant/src/lib/libcasper/services *** [all_subdir_lib/libcasper/services] Error code 2 make[4]: stopped in /home/vagrant/src/lib/libcasper 1 error make[4]: stopped in /home/vagrant/src/lib/libcasper *** [all_subdir_lib/libcasper] Error code 2 make[3]: stopped in /home/vagrant/src/lib 1 error make[3]: stopped in /home/vagrant/src/lib *** [all_subdir_lib] Error code 2 make[2]: stopped in /home/vagrant/src --- all_subdir_usr.sbin --- A failure has been detected in another branch of the parallel make make[4]: stopped in /home/vagrant/src/usr.sbin/ctld *** [all_subdir_usr.sbin/ctld] Error code 2 make[3]: stopped in /home/vagrant/src/usr.sbin 1 error make[3]: stopped in /home/vagrant/src/usr.sbin *** [all_subdir_usr.sbin] Error code 2 make[2]: stopped in /home/vagrant/src 4 errors make[2]: stopped in /home/vagrant/src *** [everything] Error code 2 make[1]: stopped in /home/vagrant/src 1 error make[1]: stopped in /home/vagrant/src *** [buildworld] Error code 2 make: stopped in /home/vagrant/src 1 error make: stopped in /home/vagrant/src Command exit status: 2 This is what the code snippet in the file looks like when error is encountered: vagrant@freebsd12current:~/src/usr.bin/diff % awk 'NR>=1080&&NR<=1090' diffreg.c change(char *file1, FILE *f1, char *file2, FILE *f2, int a, int b, int c, int d, int *pflags) { static size_t max_context = 64; long curpos; int i, nc; const char *walk; restart: if ((diff_format != D_IFDEF || diff_format == D_GFORMAT) && a > b && c > d) The following snippet removes the error during build: vagrant@freebsd12current:~/src/usr.bin/diff % awk 'NR>=1080&&NR<=1091' diffreg.c change(char *file1, FILE *f1, char *file2, FILE *f2, int a, int b, int c, int d, int *pflags) { static size_t max_context = 64; long curpos; int i, nc; int 0; const char *walk; restart: if ((diff_format != D_IFDEF || diff_format == D_GFORMAT) && a > b && c > d) vagrant@freebsd12current:~/src % svnlite info Path: . Working Copy Root Path: /home/vagrant/src URL: svn://svn.freebsd.org/base/head Relative URL: ^/head Repository Root: svn://svn.freebsd.org/base Repository UUID: ccf9f872-aa2e-dd11-9fc8-001c23d0bc1f Revision: 317257 Node Kind: directory Schedule: normal Last Changed Author: bde Last Changed Rev: 317256 Last Changed Date: 2017-04-21 15:12:43 + (Fri, 21 Apr 2017) ___ freebsd-current@freebsd.org mailing list https://lists.freebsd.org/mailman/listinfo/freebsd-current To unsubscribe, send any ma
make check-old warnings
I've updated my laptop to r317256 and started to see some warnings when I run make check-old: ❯ make check-old make warning: $5bZ� : No such file or directory. make warning: $5bZ� : No such file or directory. >>> Checking for old files make warning: $5bZ� : No such file or directory. /usr/bin/gdb /usr/lib/debug/usr/bin/gdb.debug /usr/bin/gdbserver /usr/lib/debug/usr/bin/gdbserver.debug /usr/bin/gdbtui /usr/lib/debug/usr/bin/gdbtui.debug /usr/bin/kgdb /usr/lib/debug/usr/bin/kgdb.debug /usr/share/man/man1/gdb.1.gz /usr/share/man/man1/gdbserver.1.gz /usr/share/man/man1/kgdb.1.gz >>> Checking for old libraries make warning: $5bZ� : No such file or directory. >>> Checking for old directories make warning: $5bZ� : No such file or directory. /usr/share/examples/hast /usr/share/examples/ipfilter /usr/libexec/lpr/ru /usr/lib/debug/usr/libexec/lpr/ru /usr/libexec/lpr /usr/lib/debug/usr/libexec/lpr /usr/share/doc/smm/07.lpd /usr/share/pc-sysinstall/backend /usr/share/pc-sysinstall/backend-partmanager /usr/share/pc-sysinstall/backend-query /usr/share/pc-sysinstall/conf/license /usr/share/pc-sysinstall/conf /usr/share/pc-sysinstall/doc /usr/share/pc-sysinstall /usr/share/examples/pc-sysinstall /etc/ppp /usr/include/libmilter /usr/share/doc/smm/08.sendmailop /usr/share/sendmail /usr/include/atf-c /usr/include/atf-c++ /usr/share/atf /usr/share/doc/atf To remove old files and directories run 'make delete-old'. To remove old libraries run 'make delete-old-libs'. -- Renato Botelho ___ freebsd-current@freebsd.org mailing list https://lists.freebsd.org/mailman/listinfo/freebsd-current To unsubscribe, send any mail to "freebsd-current-unsubscr...@freebsd.org"
Re: kernel coding of nobody/nogroup
On Fri, 21 Apr 2017, Rick Macklem wrote: I need to set the default uid/gid values for nobody/nogroup into kernel variables. I reverted the commit that hardcoded them, since I agree that wasn't a good thing to do. I didn't realize that "nobody" was already defined in sys/conf.h and I can use that. I didn't know nobody was already there either. They are only used by zfs, while the others were originally only sed for devices. There is no definition for "nogroup" in sys/conf.h. Would it be ok to add #define GID_NOGROUP 65533 to syy/conf.h? (I know bde@ doesn't like expressing this as 65533, but that is what it is in /etc/group.) sys/conf.h already has GID_NOBODY but it is subtly different from GID_NOGROUP. It seems to be a bug that zfs uses nobody's gid instead of the gid nogroup which is used by no body. Bruce ___ freebsd-current@freebsd.org mailing list https://lists.freebsd.org/mailman/listinfo/freebsd-current To unsubscribe, send any mail to "freebsd-current-unsubscr...@freebsd.org"
kernel coding of nobody/nogroup
Hi, I need to set the default uid/gid values for nobody/nogroup into kernel variables. I reverted the commit that hardcoded them, since I agree that wasn't a good thing to do. I didn't realize that "nobody" was already defined in sys/conf.h and I can use that. There is no definition for "nogroup" in sys/conf.h. Would it be ok to add #define GID_NOGROUP 65533 to syy/conf.h? (I know bde@ doesn't like expressing this as 65533, but that is what it is in /etc/group.) rick ps: These values are usually set by nfsuserd(8), but need to be initialized for the case where is in not being run. The default uid/gid in nfsuserd.c needs to be fixed too, although they only get used if there isn't an entry for nobody/nogroup in the password/group database. ___ freebsd-current@freebsd.org mailing list https://lists.freebsd.org/mailman/listinfo/freebsd-current To unsubscribe, send any mail to "freebsd-current-unsubscr...@freebsd.org"