Date: Sat, 22 Mar 1997 20:43:27 +0300 (MSK) From: Dmitrij Tejblum <dima@tejblum.dnttm.rssi.ru> To: freebsd-current@freebsd.org Subject: ufs is not a local filesystem in -current Message-ID: <Pine.BSF.3.95q.970322202230.1832A-100000@tejblum.dnttm.rssi.ru>
next in thread | raw e-mail | index | archive | help
Today I got from /etc/weekly /usr/libexec/makewhatis.local: no local-mounted manual directories found: /usr/share/man /usr/X11R6/man /usr/local/man I tried to debug it, but with no luck. statfs always returns 0 in f_flags. Also, my mount command says: /dev/wd1a on / /dev/wd1s1f on /usr /dev/wd1s1e on /var procfs on /proc (local) /dev/wd0s1 on /c There is no (local) at /usr, ... But I found a bug in the find(1) command. Two values cannot be stored in only one variable. *** /usr/src/usr.bin/find/function.c Sat Mar 22 14:41:57 1997 --- function.c Sat Mar 22 14:41:48 1997 *************** *** 341,347 **** static dev_t curdev; /* need a guaranteed illegal dev value */ static int first = 1; struct statfs sb; ! static short val; char *p, save[2]; /* Only check when we cross mount point. */ --- 341,347 ---- static dev_t curdev; /* need a guaranteed illegal dev value */ static int first = 1; struct statfs sb; ! static int val_type, val_flags; char *p, save[2]; /* Only check when we cross mount point. */ *************** *** 380,393 **** * Further tests may need both of these values, so * always copy both of them. */ ! val = sb.f_flags; ! val = sb.f_type; } switch (plan->flags) { case F_MTFLAG: ! return (val & plan->mt_data); case F_MTTYPE: ! return (val == plan->mt_data); default: abort(); } --- 380,393 ---- * Further tests may need both of these values, so * always copy both of them. */ ! val_flags = sb.f_flags; ! val_type = sb.f_type; } switch (plan->flags) { case F_MTFLAG: ! return (val_flags & plan->mt_data) != 0; case F_MTTYPE: ! return (val_type == plan->mt_data); default: abort(); }
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?Pine.BSF.3.95q.970322202230.1832A-100000>