Re: Tricky subversion import, what to do?
this is about importing unifdef 2.4, which has no significant code changes, but that's not the point. I maintain unifdef and I haven't imported 2.4 because there are no code changes. Please leave it alone. Tony. -- f.anthony.n.finch d...@dotat.at http://dotat.at/ HUMBER THAMES DOVER WIGHT PORTLAND: NORTH BACKING WEST OR NORTHWEST, 5 TO 7, DECREASING 4 OR 5, OCCASIONALLY 6 LATER IN HUMBER AND THAMES. MODERATE OR ROUGH. RAIN THEN FAIR. GOOD. ___ freebsd-current@freebsd.org mailing list http://lists.freebsd.org/mailman/listinfo/freebsd-current To unsubscribe, send any mail to freebsd-current-unsubscr...@freebsd.org
Re: Tricky subversion import, what to do?
On 7 Nov 2010, at 21:29, Ulrich Spörlein u...@spoerlein.net wrote: As I wrote, that's beside the point and not the question at hand. How/where should it end up in our tree? Is it vendor code? Is it contrib code? And if so how to bootstrap the correct subversion history ... It is FreeBSD code so it is already in the right place in the tree. My git repository started life as a personal scratch repository which I used for maintaining the in-tree unifdef. It has grown its own release infrastructure for the convenience of its Linux users (there have been a lot of contributions from Debian). Because of this a lot of the changes are irrelevant to FreeBSD so I have not kept the FreeBSD version strictly in sync. Please don't mess around with it because you'll just make my maintenance job harder. Tony. -- f.anthony.n.finch d...@dotat.at http://dotat.at/___ freebsd-current@freebsd.org mailing list http://lists.freebsd.org/mailman/listinfo/freebsd-current To unsubscribe, send any mail to freebsd-current-unsubscr...@freebsd.org
Re: Unfortunate dynamic linking for everything
Matthew D. Fuller [EMAIL PROTECTED] wrote: Not just the startup scripts, but ANY script. I dare say there's a long, long list of scripts that use ~-expansion, to say nothing of the homegrown ones we all have working quietly and forgotten for years. It's required for POSIX compliance. Tony. -- f.a.n.finch [EMAIL PROTECTED] http://dotat.at/ IRISH SEA: SOUTHWESTERLY 5 OR 6. SHOWERS. GOOD. ___ [EMAIL PROTECTED] mailing list http://lists.freebsd.org/mailman/listinfo/freebsd-current To unsubscribe, send any mail to [EMAIL PROTECTED]
Re: Unfortunate dynamic linking for everything
Robert Watson [EMAIL PROTECTED] wrote: Someone must be using /bin/sh as a shell, because apparently someone spent a lot of time adding things like character input editing, filename completion, etc. We even use sh as the default in adduser(8). Command-line editing is required for POSIX compliance. Tony. -- f.a.n.finch [EMAIL PROTECTED] http://dotat.at/ FAIR ISLE: SOUTHWESTERLY BACKING EASTERLY 5 TO 7, PERHAPS GALE 8 LATER. SHOWERS THEN RAIN. MODERATE OR GOOD. ___ [EMAIL PROTECTED] mailing list http://lists.freebsd.org/mailman/listinfo/freebsd-current To unsubscribe, send any mail to [EMAIL PROTECTED]
Re: Unfortunate dynamic linking for everything
Jacques A. Vidrine [EMAIL PROTECTED] wrote: Finally, if we could call `dlopen' from statically-linked binaries, this wouldn't be an issue. One of the performance problems that John Dyson mentioned (the sparse dirtying of libc's data section) would still remain, because the whole of libc has to be linked into programs that use NSS. Tony. -- f.a.n.finch [EMAIL PROTECTED] http://dotat.at/ THE WASH TO NORTH FORELAND: SOUTHWEST 4 OR 5, PERHAPS 6 FOR A TIME IN EVENING IN THAMES, VEERS NORTH TO NORTHEAST 2 OR 3 FROM NORTH, BACKS NORTHWEST LATER. OCCASIONAL RAIN, CLEARS ERRATICALLY FROM NORTH, EXCEPT FAR SOUTH. MODERATE OR GOOD, LOCALLY POOR IN SOUTH. SLIGHT , LOCALLY MODERATE IN SOUTH. ___ [EMAIL PROTECTED] mailing list http://lists.freebsd.org/mailman/listinfo/freebsd-current To unsubscribe, send any mail to [EMAIL PROTECTED]
Re: HEADS UP: /bin and /sbin are now dynamically linked
Erik Trulsson [EMAIL PROTECTED] wrote: On Sun, Nov 16, 2003 at 07:24:00PM -0700, Brent Jones wrote: This is just a case of OS evolution. /sbin used to be the place where the statically linked recovery things would be placed, in case the shared libraries got hosed. The only things that needed to be statically linked though, were system utilities, which is why people probably started to associate the s with system, rather than static. Do you have any references for this? Every single place that I can find explains /sbin as system binaries. I have also never heard of there ever being duplicates in /bin of the files in /sbin. That's the way things work in Solaris. It's more a difference between System V and BSD, rather than one scheme evolving into another. Tony. -- f.a.n.finch [EMAIL PROTECTED] http://dotat.at/ ARDNAMURCHAN POINT TO CAPE WRATH INCLUDING THE OUTER HEBRIDES: WEST 5 OR 6 BACKING SOUTH 4 OR 5, VEERING SOUTHWEST LATER, AND INCREASING 6 LATER IN THE SOUTH. OCCASIONAL RAIN. MODERATE OR GOOD. MODERATE OR ROUGH, OCCASIONALLY SLIGHT IN SHELTERED EASTERN WATERS. ___ [EMAIL PROTECTED] mailing list http://lists.freebsd.org/mailman/listinfo/freebsd-current To unsubscribe, send any mail to [EMAIL PROTECTED]
Re: STEP 2, fixing dhclient behaviour with multiple interfaces
Terry Lambert [EMAIL PROTECTED] wrote: I can't wait for IPv6 stateless autoconfiguration plus SLPv2 so we can get rid of all this DHCP crap once and for all. 8-(. SLPv2 is used to find the gateway and DNS server, and after that, everything magically works. I thought that the gateway address is (already) set up using RFC 2461 router and prefix discovery. Tony. -- f.a.n.finch [EMAIL PROTECTED] http://dotat.at/ CAPE WRATH TO RATTRAY HEAD INCLUDING ORKNEY: NORTHWEST 3 OR 4 FALLING VARIABLE 2 OR 3 FOR A TIME THEN GRADUALLY INCREASING SOUTH OR SOUTHEAST 3 OR 4. SHOWERS WITH A RISK OF SOME FOG PATCHES AT FIRST, BECOMING FAIR FOR A TIME BUT FURTHER RAIN LATER. GOOD OCCASIONALLY MODERATE IN RAIN AND SHOWERS, LOCALLY POOR IN ANY FOG PATCHES. SLIGHT BECOMING SLIGHT OR MODERATE. ___ [EMAIL PROTECTED] mailing list http://lists.freebsd.org/mailman/listinfo/freebsd-current To unsubscribe, send any mail to [EMAIL PROTECTED]
HEADS UP: sed breakage
I managed to break sed in the course of fixing a bug yesterday. If you are having problems with buildworld breakage, ensure that you have the most recent version of sed by updating your source and rebuilding it manually. You need: $FreeBSD: src/usr.bin/sed/process.c,v 1.31 2003/06/05 12:10:19 fanf Exp $ The broken revision is: $FreeBSD: src/usr.bin/sed/process.c,v 1.30 2003/06/04 15:31:55 fanf Exp $ Tony. -- f.a.n.finch [EMAIL PROTECTED] http://dotat.at/ HUMBER THAMES DOVER: SOUTHWESTERLY 4 OR 5, OCCASIONALLY 6. RAIN LATER. MODERATE OR GOOD. ___ [EMAIL PROTECTED] mailing list http://lists.freebsd.org/mailman/listinfo/freebsd-current To unsubscribe, send any mail to [EMAIL PROTECTED]
Re: Removal of netns - politically correct version
Terry Lambert [EMAIL PROTECTED] wrote: Given that the current TCP/IP stack no longer matches the Stevens books, and given that Stevens is too dead to update the books to the new FreeBSD stack, even if he wanted to, it's useful to have a relatively simple set of code that can be understood without a book that's not getting written. Actually the Stevens books are still useful as a guide to the FreeBSD IP stack because they give the important overview and description of how the parts fit together. The details might be different but not enough to confuse a competent programmer. Tony. -- f.a.n.finch [EMAIL PROTECTED] http://dotat.at/ ROCKALL MALIN HEBRIDES: CYCLONIC BECOMING WEST OR SOUTHWEST 6 TO GALE 8, OCCASIONALLY SEVERE GALE 9 IN MALIN AND HEBRIDES AT FIRST. SQUALLY SHOWERS. GOOD. To Unsubscribe: send mail to [EMAIL PROTECTED] with unsubscribe freebsd-current in the body of the message
Re: rand() is broken
Mark Murray [EMAIL PROTECTED] wrote: 3) int random(void) which returns a number statistically random in all bits. We have most of this, and RC4 can deliver. RC4's licence is fine. Call it ArCFour and there is no problem. The code is small, fast and repeatable, and meets conditions 1-4 above. Note that POSIX 2001 states that random() uses a non-linear additive feedback random-number generator, and strongly implies that rand() uses the traditional brain-dead algorithm. Tony. -- f.a.n.finch [EMAIL PROTECTED] http://dotat.at/ SOLE LUNDY FASTNET: WEST VEERING NORTHWEST 6 OR 7, OCCASIONALLY GALE 8. RAIN OR SQUALLY SHOWERS. MODERATE OR GOOD. To Unsubscribe: send mail to [EMAIL PROTECTED] with unsubscribe freebsd-current in the body of the message
Re: rand() is broken
Doug Barton [EMAIL PROTECTED] wrote: I can think of one significant benefit... I had noticed that my perl script to pick random windowmaker themes (which uses rand()) seemed to be picking the same themes over and over again. That's a bug in perl's compile-time configuration. It can be told to use something better. See PR 25794. Tony. -- f.a.n.finch [EMAIL PROTECTED] http://dotat.at/ LANDS END TO ST DAVIDS HEAD INCLUDING THE BRISTOL CHANNEL: WEST 6 TO GALE 8. EASING WEST 5 OR 6 MONDAY MORNING. WEST OR NORTHWEST 6 OR 7 AGAIN LATER. RAIN OR SHOWERS, MAINLY FAIR PERHAPS MORE ISOLATED SHOWERS MONDAY. MAINLY GOOD. ROUGH OR VERY ROUGH. To Unsubscribe: send mail to [EMAIL PROTECTED] with unsubscribe freebsd-current in the body of the message
Re: alpha tinderbox failure
On Sun, Jan 05, 2003 at 01:33:14AM -0800, David O'Brien wrote: Agreed. I'd love to hear from fanf what the changes are to unifdef that causes this change in exit code. I accidentally cocked up the exit codes in my first major revision of unifdef. It so happens that a few days later markm ripped out the Perl and Tcl support from vi, which meant that it started using unifdef in its build. The incorrect exit value happened to be 0 instead of 1 so things were happy until I restored the odd documented behaviour in my second major revision. Apologies for the disruption. I did check the uses of unifdef in the tree (including vi and telnet), but I didn't realise that ignored errors would cause problems. Tony. -- f.a.n.finch [EMAIL PROTECTED] http://dotat.at/ CAPE WRATH TO RATTRAY HEAD INCLUDING ORKNEY: WIND: VARIABLE OR NORTHEAST 2 OR 3. FAIR. GOOD. MODERATE. To Unsubscribe: send mail to [EMAIL PROTECTED] with unsubscribe freebsd-current in the body of the message
Re: alpha tinderbox failure
Gerhard Sittig [EMAIL PROTECTED] wrote: Although the above case is special from what I learnt in another message in this thread (I managed to delete it after seeing it so I cannot quote it here). ISTR that the non zero exit status comes from a tool with the following convention: 0 is absolutely OK, 1 is not perfect but still plausible enough to get accepted most of the time, and 2 is a real error, never OK. I believe that unifdef got its exit status values from diff. (The use of the word trouble in the DIAGNOSTICS section is indicative.) Tony. -- f.a.n.finch [EMAIL PROTECTED] http://dotat.at/ CAPE WRATH TO RATTRAY HEAD INCLUDING ORKNEY: VARIABLE 1 OR 2 LOCALLY 3 OR 4. ISOLATED WINTRY SHOWERS. MAINLY GOOD. MODERATE DECAYING SLIGHT. To Unsubscribe: send mail to [EMAIL PROTECTED] with unsubscribe freebsd-current in the body of the message
Re: src/games bikeshed time.
There's an open PR about factor(6) not working on 64bit arches; I'm preparing to import NetBSD's version which uses the OpenSSL bignum library. There are associated stylistic improvements to primes(6) -- they share a table of primes up to about 2^16. Tony. -- f.a.n.finch [EMAIL PROTECTED] http://dotat.at/ EAST SOLE: CYCLONIC 4 OR 5. RAIN OR SHOWERS. MODERATE OR GOOD. To Unsubscribe: send mail to [EMAIL PROTECTED] with unsubscribe freebsd-current in the body of the message
Re: src/games bikeshed time.
Below is my proposed patch to primes(6) and factor(6) which I plan to commit in one go since the changes are somewhat inter-dependent. Feedback is welcomed. I'm in the process of fixing the manual. Merge changes from NetBSD and perform some cleaning up. primes: const-correctness and removal of wacky casting (from NetBSD); move declarations of external tables into primes.h instead of repeating them in primes.c and factor.c. Still limited to ULONG_MAX though. factor: style fixes (#include ordering, ANSI functions, const-correctness, staticisation -- all but the latter from NetBSD); remove bogus comment; fix usage() exit value; and the biggie: if OpenSSL is available, use bignums using clever code from NetBSD. I have cleaned the latter up somewhat so that it supports FreeBSD's -h feature and doesn't introduce regressions for N = 2^31 in the non-OpenSSL case. Tony. -- f.a.n.finch [EMAIL PROTECTED] http://dotat.at/ PORTLAND: EAST OR SOUTHEAST BACKING NORTHEAST 5 OR 6, OCCASIONALLY 7. OCCASIONAL RAIN. GOOD. --- factor/Makefile 26 Mar 2001 14:20:55 - 1.4 +++ factor/Makefile 8 Oct 2002 19:31:03 - @@ -4,6 +4,13 @@ PROG= factor SRCS= factor.c pr_tbl.c CFLAGS+=-I${.CURDIR}/../primes + +.if !defined(NO_OPENSSL) +CFLAGS+=-DHAVE_OPENSSL +LDADD+=-lcrypto +DPADD+=${LIBCRYPTO} +.endif + MAN= factor.6 MLINKS+=factor.6 primes.6 .PATH: ${.CURDIR}/../primes --- factor/factor.c 18 Feb 2002 05:15:15 - 1.11 +++ factor/factor.c 9 Oct 2002 15:28:21 - @@ -43,6 +43,7 @@ #ifndef lint #if 0 static char sccsid[] = @(#)factor.c 8.4 (Berkeley) 5/4/95; +__RCSID($NetBSD: factor.c,v 1.13 2002/06/18 23:07:36 simonb Exp $); #endif static const char rcsid[] = $FreeBSD: src/games/factor/factor.c,v 1.11 2002/02/18 05:15:15 imp Exp $; @@ -67,8 +68,8 @@ * If no args are given, the list of numbers are read from stdin. */ -#include err.h #include ctype.h +#include err.h #include errno.h #include limits.h #include stdio.h @@ -77,28 +78,53 @@ #include primes.h -/* - * prime[i] is the (i-1)th prime. - * - * We are able to sieve 2^32-1 because this byte table yields all primes - * up to 65537 and 65537^2 2^32-1. - */ -extern ubig prime[]; -extern ubig *pr_limit; /* largest prime in the prime array */ +#ifdef HAVE_OPENSSL + +#include openssl/bn.h + +#definePRIME_CHECKS5 + +static voidpollard_pminus1(BIGNUM *); /* print factors for big numbers */ + +#else + +typedef ubig BIGNUM; +typedef u_long BN_ULONG; + +#define BN_CTX int +#define BN_CTX_new() NULL +#define BN_new() ((BIGNUM *)calloc(sizeof(BIGNUM), 1)) +#define BN_is_zero(v) (*(v) == 0) +#define BN_is_one(v) (*(v) == 1) +#define BN_mod_word(a, b) (*(a) % (b)) + +static int BN_dec2bn(BIGNUM **a, const char *str); +static int BN_hex2bn(BIGNUM **a, const char *str); +static BN_ULONG BN_div_word(BIGNUM *, BN_ULONG); +static voidBN_print_fp(FILE *, const BIGNUM *); + +#endif + +static voidBN_print_dec_fp(FILE *, const BIGNUM *); -inthflag; +static voidpr_fact(BIGNUM *); /* print factors of a value */ +static voidpr_print(BIGNUM *); /* print a prime */ +static voidusage(void); -void pr_fact(ubig); /* print factors of a value */ -void usage(void); +static BN_CTX *ctx; /* just use a global context */ +static int hflag; int -main(argc, argv) - int argc; - char *argv[]; +main(int argc, char *argv[]) { - ubig val; + BIGNUM *val; int ch; - char *p, buf[100]; /* max number of digits. */ + char *p, buf[LINE_MAX]; /* max number of digits. */ + + ctx = BN_CTX_new(); + val = BN_new(); + if (val == NULL) + errx(1, can't initialise bignum); while ((ch = getopt(argc, argv, h)) != -1) switch (ch) { @@ -125,12 +151,9 @@ continue; if (*p == '-') errx(1, negative numbers aren't permitted.); - errno = 0; - val = strtoul(buf, p, 0); - if (errno) - err(1, %s, buf); - if (*p != '\n') - errx(1, %s: illegal numeric format., buf); + if (BN_dec2bn(val, buf) == 0 + BN_hex2bn(val, buf) == 0) + errx(1, %s: illegal numeric format., argv[0]); pr_fact(val); } /* Factor the arguments. */ @@ -138,11 +161,8 @@ for (; *argv != NULL; ++argv) { if (argv[0][0] == '-') errx(1, negative numbers aren't permitted.); - errno = 0; - val = strtoul(argv[0], p, 0); -
Re: src/games bikeshed time.
On Wed, Oct 09, 2002 at 10:08:24AM -0700, Kris Kennaway wrote: On Wed, Oct 09, 2002 at 05:00:21PM +0100, Tony Finch wrote: +.if !defined(NO_OPENSSL) +CFLAGS+=-DHAVE_OPENSSL +LDADD+=-lcrypto +DPADD+=${LIBCRYPTO} +.endif You also need to check that the crypto sources are installed. Would this be correct (based on stuff in src/etc)? .if exists(${.CURDIR}/../../crypto) !defined(NO_OPENSSL) Tony. -- f.a.n.finch [EMAIL PROTECTED] http://dotat.at/ FISHER: EASTERLY 5 OR 6. SHOWERS. GOOD. To Unsubscribe: send mail to [EMAIL PROTECTED] with unsubscribe freebsd-current in the body of the message
Re: src/games bikeshed time.
Mark suggested I might want to frob primes(6) so that it uses uintmax_t, which I have done (see below) but it uses rather too much C99 goodness for -STABLE. Are things like strtoumax likely to be MFCed? Tony. -- f.a.n.finch [EMAIL PROTECTED] http://dotat.at/ BAILEY: SOUTHEASTERLY 5 TO 7. RAIN. MODERATE OR GOOD. --- factor/factor.c 9 Oct 2002 19:55:04 - 1.13 +++ factor/factor.c 9 Oct 2002 20:59:22 - @@ -71,6 +71,7 @@ #include ctype.h #include err.h #include errno.h +#include inttypes.h #include limits.h #include stdio.h #include stdlib.h @@ -89,7 +90,7 @@ #else typedef ubig BIGNUM; -typedef u_long BN_ULONG; +typedef ubig BN_ULONG; #define BN_CTX int #define BN_CTX_new() NULL @@ -226,7 +227,7 @@ /* Divide factor out until none are left. */ do { - printf(hflag ? 0x%lx : %lu, *fact); + printf(hflag ? 0x%jx : %ju, *fact); BN_div_word(val, (BN_ULONG)*fact); } while (BN_mod_word(val, (BN_ULONG)*fact) == 0); @@ -321,13 +322,13 @@ static void BN_print_fp(FILE *fp, const BIGNUM *num) { - fprintf(fp, %lx, (unsigned long)*num); + fprintf(fp, %jx, *num); } static void BN_print_dec_fp(FILE *fp, const BIGNUM *num) { - fprintf(fp, %lu, (unsigned long)*num); + fprintf(fp, %ju, *num); } static int @@ -336,7 +337,7 @@ char *p; errno = 0; - **a = strtoul(str, p, 10); + **a = strtoumax(str, p, 10); return (errno == 0 (*p == '\n' || *p == '\0')); } @@ -346,7 +347,7 @@ char *p; errno = 0; - **a = strtoul(str, p, 16); + **a = strtoumax(str, p, 16); return (errno == 0 (*p == '\n' || *p == '\0')); } --- primes/pattern.c9 Oct 2002 19:38:55 - 1.5 +++ primes/pattern.c9 Oct 2002 20:59:22 - @@ -54,6 +54,7 @@ * with 1. All non-zero elements are factors of 3, 5, 7, 11 and 13. */ +#include inttypes.h #include stddef.h #include primes.h --- primes/pr_tbl.c 9 Oct 2002 19:38:55 - 1.5 +++ primes/pr_tbl.c 9 Oct 2002 20:59:22 - @@ -53,6 +53,7 @@ * and 65537^2 2^32-1. */ +#include inttypes.h #include stddef.h #include primes.h --- primes/primes.c 9 Oct 2002 20:42:40 - 1.21 +++ primes/primes.c 9 Oct 2002 20:59:22 - @@ -68,6 +68,7 @@ #include ctype.h #include err.h #include errno.h +#include inttypes.h #include limits.h #include math.h #include stdio.h @@ -118,7 +119,7 @@ stop = BIG; /* -* Convert low and high args. Strtoul(3) sets errno to +* Convert low and high args. Strtou*(3) sets errno to * ERANGE if the number is too large, but, if there's * a leading minus sign it returns the negation of the * result of the conversion, which we'd rather disallow. @@ -130,14 +131,14 @@ errx(1, negative numbers aren't permitted.); errno = 0; - start = strtoul(argv[0], p, 0); + start = strtoumax(argv[0], p, 0); if (errno) err(1, %s, argv[0]); if (*p != '\0') errx(1, %s: illegal numeric format., argv[0]); errno = 0; - stop = strtoul(argv[1], p, 0); + stop = strtoumax(argv[1], p, 0); if (errno) err(1, %s, argv[1]); if (*p != '\0') @@ -149,7 +150,7 @@ errx(1, negative numbers aren't permitted.); errno = 0; - start = strtoul(argv[0], p, 0); + start = strtoumax(argv[0], p, 0); if (errno) err(1, %s, argv[0]); if (*p != '\0') @@ -190,7 +191,7 @@ if (*p == '-') errx(1, negative numbers aren't permitted.); errno = 0; - val = strtoul(buf, p, 0); + val = strtoumax(buf, p, 0); if (errno) err(1, %s, buf); if (*p != '\n') @@ -245,7 +246,7 @@ for (p = prime[0], factor = prime[0]; factor stop p = pr_limit; factor = *(++p)) { if (factor = start) { - printf(hflag ? 0x%lx\n : %lu\n, factor); + printf(hflag ? 0x%jx\n : %ju\n, factor); } } /* return early if we are done */ @@ -308,7 +309,7 @@ */ for (q = table; q tab_lim; ++q, start+=2) { if (*q) { - printf(hflag ? 0x%lx\n : %lu\n, start); + printf(hflag ? 0x%jx\n : %ju\n, start); } } } --- primes/primes.h 9 Oct 2002
Re: Journaled filesystem in CURRENT
Terry Lambert [EMAIL PROTECTED] wrote: Claus Assmann wrote: [ ... out of order answer, not related to main topic ... ] Per domain doesn't work easily if you have multiple recipients. Anyway, the new design clearly distinguishes between the content files and the data that is necessary for delivery. Actually, it works fine, since it performs queue entry splitting, in the case of multiple recipients. That yields a 100% hit rate for per domain queue traversals, since they contain only messages destined for the domain in question. But back to JFS... Exim doesn't do per-domain queue runs; when it successfully delivers mail to a host it checks its hints database for any queued mail that can go to the same place and shoves them down the same connection -- no scanning of multiple files involved. Tony (exim bigot). -- f.a.n.finch [EMAIL PROTECTED] http://dotat.at/ ROCKALL: SOUTHWEST BACKING SOUTH 3 OR 4, OCCASIONALLY 5 IN NORTH. MAINLY FAIR. MODERATE OR GOOD. To Unsubscribe: send mail to [EMAIL PROTECTED] with unsubscribe freebsd-current in the body of the message
Re: Journaled filesystem in CURRENT
Terry Lambert [EMAIL PROTECTED] wrote: Tony Finch wrote: Exim doesn't do per-domain queue runs; when it successfully delivers mail to a host it checks its hints database for any queued mail that can go to the same place and shoves them down the same connection -- no scanning of multiple files involved. So how does it implement ETRN and ATRN? They're both sufficiently unimportant not to make it worth complicating the MTA to optimise them. Exim lets you specify a shell command that is run in order to implement these SMTP commands, so it's up to you whether this involves a queue run (with exim -R) or not. For example, you might route incoming mail to a dial-up host and use the appendfile transport to dump it in a directory with use_bsmtp, and cause ETRN commands to run over that directory. (Although the latter requires extra code.) I'm interested that you think ETRN is important, because to me it seems the wrong solution given POP with the *ENV extension, or decent IMAP. Tony. -- f.a.n.finch [EMAIL PROTECTED] http://dotat.at/ FASTNET: SOUTHEASTERLY 3 OR 4 INCREASING 5, OCCASIONALLY 6 LATER. MAINLY FAIR. MODERATE OR GOOD. To Unsubscribe: send mail to [EMAIL PROTECTED] with unsubscribe freebsd-current in the body of the message
Re: OT: Debian GNU/FreeBSD???
Brooks Davis [EMAIL PROTECTED] wrote: On Thu, Aug 15, 2002 at 12:51:49AM +0200, Mario Goebbels wrote: I'm slightly offtopic with this, but what the heck is that: http://www.debian.org/ports/freebsd/index I was slightly irritated when a pal showed me that! It's Debian people being silly. Someone decided they liked the FreeBSD kernel and the Debian way of doing userland and combined the two. As you can see from the webpage, it's not exactly popular (the site hasn't been updated in four months.) There are a couple of Debian/BSD efforts going on at the moment, one based on FreeBSD and the other on NetBSD. There's only a couple of people working on each of them, and the principal FreeBSD guy is currently lacking development resources so not much progress is being made there. Both groups are having trouble reconciling the different functionality of glibc and BSD libc. They're planning to make both a part of the next major release of Debian, so it will be ported to N+3 kernels (Linux, Hurd, NetBSD, FreeBSD). Given the effectiveness of their release engineering, don't expect it to get anywhere near general usability for at least a year, and probably getting on for two. Tony. -- f.a.n.finch [EMAIL PROTECTED] http://dotat.at/ HUMBER THAMES DOVER: SOUTH OR SOUTHEAST 3 OR 4, OCCASIONALLY 5 IN HUMBER, BECOMING VARIABLE 3 LATER. MAINLY FAIR. MODERATE OR GOOD WITH FOG PATCHES. To Unsubscribe: send mail to [EMAIL PROTECTED] with unsubscribe freebsd-current in the body of the message
Re: cp MAKEDEV /dev - on a system with devfs
Brian Somers [EMAIL PROTECTED] wrote: I thought only sysv kept non-startup executables in /etc. There's one real oddity in FreeBSD: [EMAIL PROTECTED]:/etc :; ll rmt lrwxrwxrwx 1 root wheel 13 Jan 28 13:42 rmt - /usr/sbin/rmt* Plus the rc scripts, dhclient-exit-hooks, pccard_ether, and netstart. Tony. -- f.a.n.finch [EMAIL PROTECTED] [EMAIL PROTECTED] "I never wanted to be a weather forecaster -- I wanted to be... a lumberjack! Leaping from tree to tree as they float down the mighty rivers of British Columbia! The giant redwood! The larch! The The mighty scots pine! ..." To Unsubscribe: send mail to [EMAIL PROTECTED] with "unsubscribe freebsd-current" in the body of the message
Re: New entropy harvesting sysctl's enabled in rc
Doug Barton [EMAIL PROTECTED] wrote: The goal is to turn on the appropriate harvesters for ethernet, and/or ppp/slip/tun based on the presence of a configured device of that nature. So, the ethernet bits check to see if there is an ethernet card configured, and turns on that harvester if so. What about ethernet devices that aren't present at boot time but which turn up later? Tony. -- f.a.n.finch[EMAIL PROTECTED][EMAIL PROTECTED] FINISTERRE: EAST OR SOUTHEAST 4 OR 5 INCREASING 6 OR 7, BUT CYCLONIC BECOMING SOUTHWESTERLY IN FAR SOUTH. SHOWERS THEN RAIN. GOOD BECOMING MODERATE. To Unsubscribe: send mail to [EMAIL PROTECTED] with "unsubscribe freebsd-current" in the body of the message
Re: od driver for -CURRENT
"Justin T. Gibbs" [EMAIL PROTECTED] wrote: It is not necessarily sufficient since the media may be changed after open on certain types of devices that don't have a media lock. But don't you risk a panic if you do that? Tony. -- f.a.n.finch[EMAIL PROTECTED][EMAIL PROTECTED] THAMES DOVER: SOUTHWEST VEERING NORTH 5 TO 7, VEERING NORTHEAST 4 LATER. RAIN CLEARING. MODERATE BECOMING GOOD. To Unsubscribe: send mail to [EMAIL PROTECTED] with "unsubscribe freebsd-current" in the body of the message
Re: RE: __asm help..
Matt Dillon [EMAIL PROTECTED] wrote: :As long as gcc uses %ebp to address local variables and functoin parameters :rather than %esp you should be fine. %esp will be preserved, but if %esp is :for some odd reason used to address a variable during the C code, you are hosed. I strongly recommend against making assumptions about GCC's use of %ebp vs %esp... not if you want the __asm code to survive the GCC optimizer! But if gcc breaks that assumption, that implies it would break alloca(), and presumably they wouldn't do that. Tony. -- f.a.n.finch[EMAIL PROTECTED][EMAIL PROTECTED] "Dead! And yet there he stands!" To Unsubscribe: send mail to [EMAIL PROTECTED] with "unsubscribe freebsd-current" in the body of the message
Re: mergemaster and $FreeBSD$
Archie Cobbs [EMAIL PROTECTED] wrote: So.. what stuff in /home/cvs/CVSROOT can I change so that sources in freebsd/* get $FreeBSD$ substitution, but other sources get the normal $Id$ substitution? Surely someone has solved this already.. ? If you are using the FreeBSD version of CVS (which has been patched to support this feature) then the magic file is called "options" and contains: tag=FreeBSD=CVSHeader tagexpand=iFreeBSD Tony. -- en oeccget g mtcaaf.a.n.finch v spdlkishrhtewe y[EMAIL PROTECTED] eatp o v eiti i d.[EMAIL PROTECTED] To Unsubscribe: send mail to [EMAIL PROTECTED] with "unsubscribe freebsd-current" in the body of the message
Re: new idle_proc() makes my laptop very hot
Warner Losh [EMAIL PROTECTED] wrote: Mike Smith writes: If I remember from a discussion with John Baldwin, the reason we don't do this (yet) is that HLT only wakes up when you take an interrupt, and there are cases where we can't guarantee that we'll take an interrupt in order to get us out of the HLT. I thought that's what the timer interrupts were for... We can't guarantee that we'll get one? That seems very serious to me. The problem is that one cpu may wich to schedule a process to run on the idle cpu, but it can't because the idle cpu is halted and won't wake up until the next irq. Tony. -- en oeccget g mtcaaf.a.n.finch v spdlkishrhtewe y[EMAIL PROTECTED] eatp o v eiti i d.[EMAIL PROTECTED] To Unsubscribe: send mail to [EMAIL PROTECTED] with "unsubscribe freebsd-current" in the body of the message
Re: rc.d startup scripts
Doug Barton [EMAIL PROTECTED] wrote: Point well taken. If anyone has references to this work, or an easy introduction to netbsd's version I'd love to look at them. There's useful stuff in the rc(8) and rcorder(8) manual pages, but I can't find any more convenient copies of them other than by extracting NetBSD tar files. The scripts themselves look fairly easy to understand from just browsing around http://cvsweb.netbsd.org/. Tony. -- f.a.n.finch[EMAIL PROTECTED][EMAIL PROTECTED] 421 manifold mosaic of the mundane To Unsubscribe: send mail to [EMAIL PROTECTED] with "unsubscribe freebsd-current" in the body of the message
Re: rc.d startup scripts
Kris Kennaway [EMAIL PROTECTED] wrote: On Sun, 7 May 2000, Doug Barton wrote: I'm going to reply to the system part of this too, replies to this thread should split off to -current. I have a design in mind for a new rc system that uses scripts with "start, stop, status" operators to both upgrade and downgrade services, where "services" are defined as groups of daemons/programs that work together. For example, "nfs" would be an example of a service, which would be subdivided into client and server, etc. Eivind Eklund made a prototype some time back which addressed this issue - you'd do well to take a look at that one first before reinventing the wheel :) Or you could use the system that NetBSD already has working. Tony. -- f.a.n.finch[EMAIL PROTECTED][EMAIL PROTECTED] 381 plastic fruit for a starving nation To Unsubscribe: send mail to [EMAIL PROTECTED] with "unsubscribe freebsd-current" in the body of the message
Re: Overwhelming messages from /sys/netinet/if_ether.c
"Rodney W. Grimes" [EMAIL PROTECTED] wrote: David Holloway [EMAIL PROTECTED] wrote: Mathew Kanner wrote: I haven't tried this but how about changing the /sbin/dhclient-script to not use 0.0.0.0 as the address that wakes up the interface. No... Yes... that is just the type of thing the link local RFC reserved address space is for. No... IP address 0 is reserved for "me" so its use in DHCP makes sense. Tony. -- f.a.n.finch[EMAIL PROTECTED][EMAIL PROTECTED] 393 dirt clods in your fuel rods To Unsubscribe: send mail to [EMAIL PROTECTED] with "unsubscribe freebsd-current" in the body of the message
Re: cpp change breaks ipfw
Jim Bloom [EMAIL PROTECTED] wrote: That small test works fine, but doesn't solve the problem I was having. Try this small test case to see my problem: #define addr 192.186.2.5 #define mask 255.255.240.0 #define rule(ADDR,MASK) add pass tcp from ADDR ## : ## MASK to any 25 setup rule(addr,mask) This also does not work if addr and mask are defined on the command line. The problem arises from using another defined value as the string being concatenated. The concatenation works for constants though. You need to use a two-macro trick similar to the one for stringizing in KR2: $ gcc -E - #define addr 1.2.3.4 #define mask 5.6.7.8 #define cat_helper(a,b) a ## : ## b #define cat(a,b) cat_helper(a,b) cat(addr,mask) # 1 "" 1.2.3.4:5.6.7.8 $ Tony. -- f.a.n.finch[EMAIL PROTECTED][EMAIL PROTECTED] 455 wetness and warmth for wussies To Unsubscribe: send mail to [EMAIL PROTECTED] with "unsubscribe freebsd-current" in the body of the message
Re: lots of ad_timeouts
Soren Schmidt [EMAIL PROTECTED] wrote: It seems Don Croyle wrote: Assuming that this isn't something that's readily fixable, where would the best place to put the sysctl command so I don't have to remember it every time I reboot? /etc/rc.local Surely /etc/sysctl.conf Tony. -- * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * ** * * * ** * * * ** * * * ** * * * * * * * * * * * * To Unsubscribe: send mail to [EMAIL PROTECTED] with "unsubscribe freebsd-current" in the body of the message
Re: {a}sync updates (was Re: make install trick)
I have noticed similarly odd behaviour from softupdates during heavy IO load, where something is creating lots of little files or directories and not much else is happening. Using `vmstat 1` I can see that softupdates isn't very good at evening out the IO rate over time: there's a roughly sinusoidal back-and-forth between frantic disk thrashing (lots of TPS) and lots of syscall activity. Visible progress is correspondingly uneven. For example, the `vmstat 1` output while the script for i in `jot 256` do for j in `jot 256` do mkdir -p $i/$j done done is running is appended below. Behaviour is much smoother during an `rm -r *` of the resulting directory tree. Tony. -- f.a.n.finch[EMAIL PROTECTED][EMAIL PROTECTED] Apache Software Foundation Member procs memory page disksfaults cpu r b w avm fre flt re pi po fr sr da0 fd0 pa0 in sy cs us sy id 2 1 0 4183836 11172 3389 0 0 0 3188 0 273 0 0 512 6015 1210 71 29 0 1 1 0 4183836 11172 447 0 0 0 444 0 427 0 0 667 3198 1128 93 7 0 1 1 0 4183836 11172 411 0 0 0 408 0 459 0 0 699 3424 1039 89 11 0 1 1 0 4183836 11172 428 0 0 0 425 0 469 0 0 713 3430 1039 96 4 0 2 0 0 4183832 2 3544 0 0 0 3285 0 296 0 0 535 6820 990 67 32 1 3 0 0 4184036 11084 10155 0 0 0 9427 0 60 0 0 298 14837 1026 45 55 0 2 0 0 4184044 11092 7856 0 0 0 7292 0 0 0 0 242 12077 1013 52 48 0 3 0 0 4183588 11216 13700 0 0 0 12718 0 0 0 0 239 18826 960 26 74 0 3 0 0 4184056 6 12824 0 0 0 11880 0 5 0 0 245 17635 977 35 65 0 2 0 0 4183836 11164 8604 0 0 0 8011 0 1 0 0 242 12450 1008 55 45 0 2 1 0 4183900 11168 5770 0 0 0 5386 0 189 0 0 428 9073 1241 57 43 0 1 1 0 4183836 11168 497 0 0 0 489 0 472 0 0 712 3006 1107 91 9 0 1 2 0 4183496 11136 502 0 0 0 483 0 577 0 0 829 3449 1059 88 12 0 1 1 0 4183496 11156 1444 0 0 0 1365 0 538 0 0 779 4620 1049 86 14 0 3 0 0 4183248 11120 11937 0 0 0 11068 0 107 0 0 344 16580 892 22 78 0 2 0 0 4183308 11132 15356 0 0 0 14213 0 1 0 0 241 20742 979 18 82 0 3 0 0 4183704 11048 12665 0 0 0 11713 0 0 0 0 239 17461 990 28 72 0 2 0 0 4183492 11092 10878 0 0 0 10126 0 21 0 0 259 15238 986 45 55 0 2 0 0 4183496 2 12151 0 0 0 11276 0 50 0 0 289 16767 982 28 72 0 2 1 0 4183496 11144 422 0 0 0 425 0 510 0 0 756 2444 1217 84 16 0 1 1 0 4183496 11100 475 0 0 0 462 0 575 0 0 820 3299 1131 87 13 0 1 1 0 4183496 11092 1024 0 0 0 976 0 550 0 0 792 4130 1049 88 12 0 3 0 0 4183648 11104 7254 0 0 0 6747 0 291 0 0 530 11196 949 53 47 0 2 1 0 4183768 11140 12570 0 0 0 11678 0 5 0 0 249 17381 1002 33 67 0 2 0 0 4183832 11028 13877 0 0 0 12846 0 7 0 0 249 18952 986 25 75 0 2 0 0 4183648 11028 12263 0 0 0 11400 0 16 0 0 259 16964 1015 38 62 0 3 0 0 4183768 11036 11108 0 0 0 10353 0 5 0 0 244 15567 1017 32 68 0 3 0 0 4183836 10952 5932 0 0 0 5539 0 190 0 0 429 9087 1153 55 45 0 2 1 0 4183836 10900 475 0 0 0 459 0 542 0 0 782 2865 1257 91 9 0 1 2 0 4183768 10936 766 0 0 0 749 0 562 0 0 809 3732 1219 87 13 0 1 1 0 4184312 10900 853 0 0 0 803 0 557 0 0 799 4189 1142 90 10 0 2 0 0 4184124 10812 11847 0 0 0 10971 0 101 0 0 340 16642 969 29 71 0 2 0 0 4184520 10720 8599 0 0 0 7976 0 6 0 0 244 13098 1065 48 52 0 2 0 0 4184312 10732 7968 0 0 0 7410 0 5 0 0 242 12228 1034 50 49 1 To Unsubscribe: send mail to [EMAIL PROTECTED] with "unsubscribe freebsd-current" in the body of the message
Re: SMP and threads...
"David E. Cross" [EMAIL PROTECTED] wrote: I have a threaded appilcation that is only running on one processor. I remember there was discussion about this in the past, and there was a solution, I think it involved a patch. Any pointers? http://lt.tar.com Tony. -- f.a.n.finch[EMAIL PROTECTED][EMAIL PROTECTED]e pluribus unix To Unsubscribe: send mail to [EMAIL PROTECTED] with "unsubscribe freebsd-current" in the body of the message
Re: GNU patch gone stale
Julian Elischer writes: TONY they just showed your obfuscated C entry in the COmpetitionhere.. Your'e crazy you know.. there were soma amazing entries but you came in near the top.. Wow. That's the first news I've had about this since submitting it. Now I can sit back and look smug. there was the 2K obfuscated X11 flight simulator that actually worked.. the 1500 byte program that produced gzip'd postscript of a 3 maze, ! and your 2k program that produces an 800K program that actually works.. Don't use -O unless you can cope with gigabyte-sized compiler processes (I never could get it to work). as I said.. you're crazy (but wear it with pride!) :-) Tony. -- f.a.n.finchd...@dotat.atf...@demon.net Winner of the International Obfuscated C Code Competition 1999 To Unsubscribe: send mail to majord...@freebsd.org with unsubscribe freebsd-current in the body of the message
Re: GNU patch gone stale
John Baldwin jobal...@vt.edu wrote: So it would seem that patch and cvs don't interact at all, unless it's a question of patch 2.5 being able to apply diffs generated by cvs diff. That is the main problem I have with patch 2.5 -- it completely fails to apply patches from `cvs diff` unless you have a really new cvs, and I usually don't. Tony. -- f.a.n.finch d...@dotat.at f...@demon.net black dog To Unsubscribe: send mail to majord...@freebsd.org with unsubscribe freebsd-current in the body of the message
Re: Any action on PR 10570 ? getting closer to 65K :-(
Matthew Dillon dil...@apollo.backplane.com wrote: I think the worst case you might see is on the order of 50,000 or so route entries. If you read the PR you'll see that we have over 70,000 routes on some interfaces in our network, and we aren't doing multipath routeing. (We have c. 20,000 modems and our customers have static IP addresses.) It take a phenominally stupid network setup to create more then that. :-) Tony. -- f.a.n.finch d...@dotat.at f...@demon.net Arthur: Oh, that sounds better, have you worked out the controls? Ford: No, we just stopped playing with them. To Unsubscribe: send mail to majord...@freebsd.org with unsubscribe freebsd-current in the body of the message
Re: NFS Patch #8 for current available - new TCP fixes
Matthew Dillon dil...@apollo.backplane.com wrote: (fanfair!) :-) NFS attempts to realign packet buffers and trods all over the underlying mbufs. For TCP connections, several RPC's may be present in an mbuf chain. The realignment of one of them may destroy the others. This does not occur with UDP because each UDP packet contains only a single rpc. Packet buffers may be unaligned for a number of reasons. The main reason is due to the 14 byte MAC header on the ethernet frame. This causes the remainder of the packet - the ip payload - to NOT be 4-byte aligned. We're planning to try replacing some Solaris web servers with FreeBSD machines in the near future. The documents are on a read-only NFS filestore connected to the web servers with CDDI. (Updates will stay on a Sun box.) Are we going to have nfs_realign problems if we use TCP in this situation or should we stick with UDP? Tony. -- f.a.n.finch d...@dotat.at f...@demon.net Arthur: Oh, that sounds better, have you worked out the controls? Ford: No, we just stopped playing with them. To Unsubscribe: send mail to majord...@freebsd.org with unsubscribe freebsd-current in the body of the message
Re: Any action on PR 10570 ? getting closer to 65K :-(
Pierre Beyssac beys...@enst.fr wrote: On Fri, Apr 30, 1999 at 07:28:26PM +0800, adr...@freebsd.org wrote: I didn't say you shouldn't make world again, I was just pointing out that there shouldn't be a need to modify anything else in userland. Uh, not directly anyway, but it seems that at least netstat displays the reference count as a signed short. It actually does printf(%6d %8ld , rt-rt_refcnt, rt-rt_use); so changing rt_refcnt to an int doesn't cause problems here, at least. Only two other things do need to be changed: src/share/doc/smm/18.net/a.t src/share/man/man9/rtentry.9 (they contain copies of the declaration) Tony. -- f.a.n.finch d...@dotat.at f...@demon.net Arthur: Oh, that sounds better, have you worked out the controls? Ford: No, we just stopped playing with them. To Unsubscribe: send mail to majord...@freebsd.org with unsubscribe freebsd-current in the body of the message
Re: swap-related problems
Jim Bloom bl...@acm.org wrote: A signal handler is not guaranteed to work. It must be written such that it does not require a new page of memory. Some possible problems here are the stack growing, writing on a new page in the data segment, etc. man sigaltstack Tony. -- f.a.n.finch d...@dotat.at f...@demon.net Arthur: Oh, that sounds better, have you worked out the controls? Ford: No, we just stopped playing with them. To Unsubscribe: send mail to majord...@freebsd.org with unsubscribe freebsd-current in the body of the message
Re: swap-related problems
Mike Smith writes: Jim Bloom bl...@acm.org wrote: A signal handler is not guaranteed to work. It must be written such that it does not require a new page of memory. Some possible problems here are the stack growing, writing on a new page in the data segment, etc. man sigaltstack That doesn't help; there is no guarantee that your stack or your alternate stack have been mapped. I assumed that the alternate stack had been forcibly allocated by touching the pages; I suppose things go pear-shaped if they have been swapped out and there's no space to swap out other pages so that the stack can be swapped in. Bummer. Tony. -- f.a.n.finch d...@dotat.at f...@demon.net To Unsubscribe: send mail to majord...@freebsd.org with unsubscribe freebsd-current in the body of the message
Re: booting systems with lots of memory
Mike Smith m...@smith.net.au wrote: Tony Finch d...@dotat.at wrote: [serial console problems] We suspect a BIOS that's being too damn clever for its own good. That sounds about right. If your BIOS on the Intel box is set for a serial console, you could try poking it again to make sure that it's set for 9600 bps and that the various 'magic' options relating to remote health monitoring are all off. That did turn out to be the problem. The memory has finally followed the box from here to the Docklands and we now have a machine with the following dmesg. We'll be trying it out under load in the near future. Tony. -- f.a.n.finch d...@dotat.at f...@demon.net Copyright (c) 1992-1999 FreeBSD Inc. Copyright (c) 1982, 1986, 1989, 1991, 1993 The Regents of the University of California. All rights reserved. FreeBSD 3.1-STABLE #25: Mon Mar 29 14:38:45 BST 1999 r...@discord.news.demon.net:/usr/src/sys/compile/NCRXEON Timecounter i8254 frequency 1193182 Hz CPU: Pentium II/Xeon/Celeron (686-class CPU) Origin = GenuineIntel Id = 0x653 Stepping=3 Features=0x183fbffFPU,VME,DE,PSE,TSC,MSR,PAE,MCE,CX8,APIC,SEP,MTRR,PGE,MCA,CMOV,PAT,PSE36,MMX,b24 real memory = 3221225472 (3145728K bytes) avail memory = 3133857792 (3060408K bytes) Programming 64 pins in IOAPIC #0 IOAPIC #0 intpint 38 - irq 17 IOAPIC #0 intpint 40 - irq 18 IOAPIC #0 intpint 41 - irq 15 IOAPIC #0 intpint 42 - irq 10 IOAPIC #0 intpint 44 - irq 7 IOAPIC #0 intpint 48 - irq 11 IOAPIC #0 intpint 49 - irq 16 IOAPIC #0 intpint 58 - irq 14 FreeBSD/SMP: Multiprocessor motherboard cpu0 (BSP): apic id: 3, version: 0x00040011, at 0xfee0 cpu1 (AP): apic id: 0, version: 0x00040011, at 0xfee0 cpu2 (AP): apic id: 1, version: 0x00040011, at 0xfee0 cpu3 (AP): apic id: 2, version: 0x00040011, at 0xfee0 io0 (APIC): apic id: 4, version: 0x003f0013, at 0xfec1 Preloaded elf kernel kernel at 0xc02ea000. Probing for devices on PCI bus 0: ahc0: Adaptec aic7880 Ultra SCSI adapter rev 0x01 int a irq 14 on pci0.10.0 ahc0: Using left over BIOS settings ahc0: aic7880 Wide Channel A, SCSI Id=7, 16/255 SCBs vga0: Cirrus Logic GD5446 SVGA controller rev 0x00 int a irq 11 on pci0.12.0 chip0: Intel 82371AB PCI to ISA bridge rev 0x02 on pci0.15.0 No driver for device 0x71118086 at pci0:15:1 No driver for device 0x71128086 at pci0:15:2 chip1: Intel 82371AB Power management controller rev 0x02 on pci0.15.3 chip2: Intel 82451NX Memory and I/O Controller rev 0x03 on pci0.16.0 chip3: Intel 82454NX PCI Expander Bridge rev 0x02 on pci0.18.0 chip4: Intel 82454NX PCI Expander Bridge rev 0x02 on pci0.19.0 chip5: Intel 82454NX PCI Expander Bridge rev 0x02 on pci0.20.0 Probing for devices on PCI bus 1: ahc1: Adaptec 2940 Ultra SCSI adapter rev 0x00 int a irq 17 on pci1.4.0 ahc1: aic7880 Wide Channel A, SCSI Id=7, 16/255 SCBs fxp0: Intel EtherExpress Pro 10/100B Ethernet rev 0x04 int a irq 18 on pci1.5.0 fxp0: Ethernet address 00:a0:c9:a4:85:bd chip6: DEC 21152 PCI-PCI bridge rev 0x03 on pci1.6.0 fpa0: Digital DEFPA PCI FDDI Controller rev 0x01 int a irq 7 on pci1.7.0 fpa0: DEC DEFPA PCI FDDI SAS Controller fpa0: FDDI address 00:00:f8:c9:91:56, FW=3.10, HW=0, SMT V7.2 fpa0: FDDI Port = S (PMD = Unshielded Twisted Pair) No driver for device 0x123d8086 at pci1:9:0 Probing for devices on PCI bus 2: de0: Digital 21140A Fast Ethernet rev 0x22 int a irq 10 on pci2.4.0 de0: SMC 9332BDT 21140A [10-100Mb/s] pass 2.2 de0: address 00:e0:29:26:53:71 de1: Digital 21140A Fast Ethernet rev 0x22 int a irq 15 on pci2.5.0 de1: SMC 9332BDT 21140A [10-100Mb/s] pass 2.2 de1: address 00:e0:29:26:53:70 Probing for devices on PCI bus 3: Probing for devices on the ISA bus: sc0 on isa sc0: VGA color 16 virtual consoles, flags=0x0 atkbdc0 at 0x60-0x6f on motherboard atkbd0 irq 1 on isa psm0 not found sio0 at 0x3f8-0x3ff irq 4 flags 0x10 on isa sio0: type 16550A, console sio1 at 0x2f8-0x2ff irq 3 on isa sio1: type 16550A lpt0 not found fdc0 at 0x3f0-0x3f7 irq 6 drq 2 on isa fdc0: FIFO enabled, 8 bytes threshold fd0: 1.44MB 3.5in vga0 at 0x3b0-0x3df maddr 0xa msize 131072 on isa npx0 on motherboard npx0: INT 16 interface APIC_IO: Testing 8254 interrupt delivery APIC_IO: routing 8254 via pin 2 IP packet filtering initialized, divert disabled, rule-based forwarding disabled, default to accept, unlimited logging Waiting 2 seconds for SCSI devices to settle SMP: AP CPU #1 Launched! SMP: AP CPU #2 Launched! SMP: AP CPU #3 Launched! de0: enabling 10baseT port de1: autosense failed: cable problem? pass2 at ahc0 bus 0 target 6 lun 0 pass2: ESG-SHV SCA HSBP M4 0.62 Fixed Processor SCSI-2 device pass2: 3.300MB/s transfers pass5 at ahc1 bus 0 target 6 lun 0 pass5: ESG-SHV SCA HSBP M4 0.62 Fixed Processor SCSI-2 device pass5: 3.300MB/s transfers da0 at ahc0 bus 0 target 0 lun 0 da0: SEAGATE ST39102LC 0005 Fixed Direct Access SCSI-2 device da0: 10.000MB/s transfers (10.000MHz, offset 15), Tagged Queueing Enabled da0: 8683MB (17783240 512 byte sectors: 64H 32S/T 8683C) da2 at ahc1 bus
booting systems with lots of memory
We have a Quad 400MHz Xeon on evaluation here and we're trying to get a large memory configuration working. The machine is running a recent 3.1-STABLE with the kva patch from -CURRENT (appended below). When we have a working system with 1GB of RAM we'll increase it to 3GB of RAM and see how it runs. The boot blocks are from 3.0-RELEASE and they will boot the old a.out kernel via /boot/loader quite happily. We haven't yet managed to boot an ELF kernel, though (but we haven't tried to boot an unpatched one). It's also somewhat painful to debug because the machine is miles away and its serial console is causing trouble. Are there any obvious things we have missed? I assume the kernel load address is read by /boot/loader from the kernel's ELF header, so that a recent loader can cope. I also assume that the patch included below tweaks all of the required knobs. Tony. -- f.a.n.finch d...@dotat.at f...@demon.net === RCS file: /home/ncvs/src/sys/i386/conf/Makefile.i386,v retrieving revision 1.140 retrieving revision 1.141 diff -p -u -r1.140 -r1.141 --- src/sys/i386/conf/Makefile.i386 1999/03/01 09:54:51 1.140 +++ /home/ncvs/src/sys/i386/conf/Makefile.i386 1999/03/11 18:28:41 1.141 @@ -1,7 +1,7 @@ # Makefile.i386 -- with config changes. # Copyright 1990 W. Jolitz # from: @(#)Makefile.i386 7.1 5/10/91 -# $Id: Makefile.i386,v 1.140 1999/03/01 09:54:51 dt Exp $ +# $Id: Makefile.i386,v 1.141 1999/03/11 18:28:41 dg Exp $ # # Makefile for FreeBSD # @@ -56,7 +56,7 @@ CFLAGS+= -elf CFLAGS+= -aout .endif -LOAD_ADDRESS?= F010 +LOAD_ADDRESS?= C010 DEFINED_PROF= ${PROF} .if defined(PROF) CFLAGS+= -malign-functions=4 === RCS file: /home/ncvs/src/sys/i386/conf/kernel.script,v retrieving revision 1.1 retrieving revision 1.2 diff -p -u -r1.1 -r1.2 --- src/sys/i386/conf/kernel.script 1998/09/30 12:14:39 1.1 +++ /home/ncvs/src/sys/i386/conf/kernel.script 1999/03/11 18:28:42 1.2 @@ -5,7 +5,7 @@ SEARCH_DIR(/usr/lib); SEARCH_DIR(/usr/ob SECTIONS { /* Read-only sections, merged into text segment: */ - . = 0xf010 + SIZEOF_HEADERS; + . = 0xc010 + SIZEOF_HEADERS; .interp : { *(.interp) } .hash : { *(.hash) } .dynsym: { *(.dynsym)} === RCS file: /home/ncvs/src/sys/i386/include/pmap.h,v retrieving revision 1.58 retrieving revision 1.59 diff -p -u -r1.58 -r1.59 --- src/sys/i386/include/pmap.h 1999/03/02 16:20:39 1.58 +++ /home/ncvs/src/sys/i386/include/pmap.h 1999/03/11 18:28:46 1.59 @@ -42,7 +42,7 @@ * * from: hp300: @(#)pmap.h 7.2 (Berkeley) 12/16/90 * from: @(#)pmap.h7.4 (Berkeley) 5/12/91 - * $Id: pmap.h,v 1.58 1999/03/02 16:20:39 dg Exp $ + * $Id: pmap.h,v 1.59 1999/03/11 18:28:46 dg Exp $ */ #ifndef _MACHINE_PMAP_H_ @@ -88,13 +88,13 @@ #define VADDR(pdi, pti) ((vm_offset_t)(((pdi)PDRSHIFT)|((pti)PAGE_SHIFT))) #ifndef NKPT -#defineNKPT9 /* actual number of kernel page tables */ +#defineNKPT17 /* actual number of kernel page tables */ #endif #ifndef NKPDE #ifdef SMP -#define NKPDE 62 /* addressable number of page tables/pde's */ +#define NKPDE 254 /* addressable number of page tables/pde's */ #else -#define NKPDE 63 /* addressable number of page tables/pde's */ +#define NKPDE 255 /* addressable number of page tables/pde's */ #endif /* SMP */ #endif To Unsubscribe: send mail to majord...@freebsd.org with unsubscribe freebsd-current in the body of the message
Re: booting systems with lots of memory
Jan B. Koum j...@best.com wrote: Tony Finch d...@dotat.at wrote: Are there any obvious things we have missed? I assume the kernel load address is read by /boot/loader from the kernel's ELF header, so that a recent loader can cope. I also assume that the patch included below tweaks all of the required knobs. Yes, you need to patch load_elf.c Excellent! Thanks for the quick reply. Will /boot/loader still be able to boot old kernels after this patch? (I'm reluctant to completely hose the machine...) Also, w.r.t. the serial console problems, can I set the baud rate early in the boot sequence, and if so, how? The console works once getty puts up a login prompt but not before then, and I get a whole lot of garbage that I guess is baud barf (I wouldn't know for sure -- too much of a newbie). Tony. -- f.a.n.finch d...@dotat.at f...@demon.net To Unsubscribe: send mail to majord...@freebsd.org with unsubscribe freebsd-current in the body of the message
Re: booting systems with lots of memory
Jan B. Koum writes: Tony Finch d...@dotat.at wrote: Excellent! Thanks for the quick reply. Will /boot/loader still be able to boot old kernels after this patch? (I'm reluctant to completely hose the machine...) AFAIK it should. Not sure myself to be honest :( Well, I took the plunge and booted with the new loader and the box came back fine, so I'm less worried about booting old kernels. Tomorrow we try it with 3GB of RAM :-) Also, w.r.t. the serial console problems, can I set the baud rate early in the boot sequence, and if so, how? The console works once getty puts up a login prompt but not before then, and I get a whole lot of garbage that I guess is baud barf (I wouldn't know for sure -- too much of a newbie). Don't know. I don't use serial console. Did you check http://www.freebsd.org/~msmith/FTL/bootstrap.txt for any info? I did, yes. Most of that is now in the loader(8) manual. I tried changing /boot.config to contain /boot/loader -h which improved matters. There's still some garbage but it's fine after FreeBSD BOOT @ 0x1: 634/15360 k of memory, serial console. We suspect a BIOS that's being too damn clever for its own good. Tony. -- f.a.n.finch f...@demon.net d...@dotat.at To Unsubscribe: send mail to majord...@freebsd.org with unsubscribe freebsd-current in the body of the message
Re: mount -o union broken recently?
Julian Elischer jul...@whistle.com wrote: On Fri, 26 Feb 1999, John Polstra wrote: Julian Elischer wrote: you want to commit? (after you sir...) No, really, after you ... :-) Done in 3.1 and 4 I just remembered that MNT_UNION occurs in another file which on investigation turned out to be amongst the unionfs code that was moved. It should be removed so that the code isn't run twice when unionfs is enabled. Sorry for missing it the first time round! I also tidied up the vfs_syscalls patch a bit. Tony. -- f.a.n.finch d...@dotat.at f...@demon.net --- miscfs/union/union_subr.c.3.1 Sat Feb 27 20:44:14 1999 +++ miscfs/union/union_subr.c Sat Feb 27 20:47:28 1999 @@ -1183,15 +1183,6 @@ return -1; /* goto unionread */ } } - if (((*vp)-v_flag VROOT) ((*vp)-v_mount-mnt_flag MNT_UNION)) { - struct vnode *tvp = *vp; - *vp = (*vp)-v_mount-mnt_vnodecovered; - VREF(*vp); - fp-f_data = (caddr_t) *vp; - fp-f_offset = 0; - vrele(tvp); - return -1; /* goto unionread */ - } return error; } --- kern/vfs_syscalls.c.3.2 Sat Feb 27 20:55:32 1999 +++ kern/vfs_syscalls.c Sat Feb 27 21:00:26 1999 @@ -2756,23 +2756,24 @@ VOP_UNLOCK(vp, 0, p); if (error) return (error); - if (union_dircheckp SCARG(uap, count) == auio.uio_resid) { - error = union_dircheckp(p, vp, fp); - if (error == -1) + if (SCARG(uap, count) == auio.uio_resid) { + if (union_dircheckp) { + error = union_dircheckp(p, vp, fp); + if (error == -1) + goto unionread; + if (error) + return (error); + } + if ((vp-v_flag VROOT) + (vp-v_mount-mnt_flag MNT_UNION)) { + struct vnode *tvp = vp; + vp = vp-v_mount-mnt_vnodecovered; + VREF(vp); + fp-f_data = (caddr_t) vp; + fp-f_offset = 0; + vrele(tvp); goto unionread; - if (error) - return (error); - } - if ((SCARG(uap, count) == auio.uio_resid) - (vp-v_flag VROOT) - (vp-v_mount-mnt_flag MNT_UNION)) { - struct vnode *tvp = vp; - vp = vp-v_mount-mnt_vnodecovered; - VREF(vp); - fp-f_data = (caddr_t) vp; - fp-f_offset = 0; - vrele(tvp); - goto unionread; + } } error = copyout((caddr_t)loff, (caddr_t)SCARG(uap, basep), sizeof(long)); @@ -2833,23 +2834,24 @@ VOP_UNLOCK(vp, 0, p); if (error) return (error); - if (union_dircheckp SCARG(uap, count) == auio.uio_resid) { - error = union_dircheckp(p, vp, fp); - if (error == -1) + if (SCARG(uap, count) == auio.uio_resid) { + if (union_dircheckp) { + error = union_dircheckp(p, vp, fp); + if (error == -1) + goto unionread; + if (error) + return (error); + } + if ((vp-v_flag VROOT) + (vp-v_mount-mnt_flag MNT_UNION)) { + struct vnode *tvp = vp; + vp = vp-v_mount-mnt_vnodecovered; + VREF(vp); + fp-f_data = (caddr_t) vp; + fp-f_offset = 0; + vrele(tvp); goto unionread; - if (error) - return (error); - } - if ((SCARG(uap, count) == auio.uio_resid) - (vp-v_flag VROOT) - (vp-v_mount-mnt_flag MNT_UNION)) { - struct vnode *tvp = vp; - vp = vp-v_mount-mnt_vnodecovered; - VREF(vp); - fp-f_data = (caddr_t) vp; - fp-f_offset = 0; - vrele(tvp); - goto unionread; + } } if (SCARG(uap, basep) != NULL) { error = copyout((caddr_t)loff, (caddr_t)SCARG(uap, basep), To Unsubscribe: send mail to majord...@freebsd.org with unsubscribe freebsd-current in the body of the message
Re: mount -o union broken recently?
Julian Elischer jul...@whistle.com wrote: On Thu, 25 Feb 1999, John Polstra wrote: [...] Here, you did the union mount on top of an existing mount point (da1). I don't know for sure, but I suspect that this is the only case in which union mounts are designed to work. I was led to believe (last time I read the code) that any directory should be ok for a union mount I was led to believe the same by the manual: union Causes the namespace at the mount point to appear as the union of the mounted filesystem root and the existing di- rectory. Lookups will be done in the mounted filesystem first. If those operations fail due to a non-existent file the underlying directory is then accessed. All cre- ates are done in the mounted filesystem. I did a brief experiment on the 3.0-RELEASE machine as follows: # mount /dev/da0s1a on / (local, writes: sync 1163 async 18438) procfs on /proc (local) /dev/da0s1e on /usr (local, writes: sync 363 async 41653) /dev/da1s1e on /www/da1 (local, writes: sync 12 async 38) # ls da1/subdir this_is_da1 # mount -o union /dev/da2s1e da1/subdir # ls da1/subdir this_is_da1 this_is_da2 # So that machine is happy enough with union nounts on top of subdirectories. On the 3.1-STABLE machine, I tried union mounting on top of a mount point: # mount /dev/da0s1a on / (local, writes: sync 9824 async 55852) /dev/da0s1e on /www (local, writes: sync 5484 async 10400) procfs on /proc (local) /dev/da0s1f on /srcdelta (local, writes: sync 2569 async 2659) # ls /srcdelta thing # ls /www apache obj # umount /srcdelta # mount -o union /dev/da0s1f /www # ls /www thing # Still no joy. Is it sorrect that this magic is implemented in sys/kern/vfs_lookup.c? The odd thing is that AFAICS no-one has made significant changes to this code. Tony. -- f.a.n.finch d...@dotat.at f...@demon.net To Unsubscribe: send mail to majord...@freebsd.org with unsubscribe freebsd-current in the body of the message
Re: mount -o union broken recently?
Luigi Rizzo lu...@labinfo.iet.unipi.it wrote: (about union mounts on 3.1 not returning all files with an 'ls' in 3.1 while it did in 3.0) Is it sorrect that this magic is implemented in sys/kern/vfs_lookup.c? The odd thing is that AFAICS no-one has made significant changes to this code. i just experienced the above today while trying diskless, and while ls only seems to return the entries for the topmost directory, files are accessible if you know the name. no idea if this is of any help. This is exactly the right pointer, thanks! The problem appears to be the change between revs 1.108 and 1.109 of sys/kern/vfs_syscalls.c. A couple of (very similar) blocks of code related to `mount -o union` seem to have been mixed up with some code related to `mount -t union` and therefore removed. It's a shame that the two things get confused so much. I originally missed vfs_syscalls.c because a `find /usr/src/sys | xargs grep MNT_UNION` on 3.1 didn't show it. Replacing the errant code fixes the problem. Here's a patch against 1.112.2.1. Tony. -- f.a.n.finch d...@dotat.at f...@demon.net --- vfs_syscalls.c.3.1 Sat Feb 27 02:15:13 1999 +++ vfs_syscalls.c Sat Feb 27 02:30:42 1999 @@ -2763,6 +2763,17 @@ if (error) return (error); } + if ((SCARG(uap, count) == auio.uio_resid) + (vp-v_flag VROOT) + (vp-v_mount-mnt_flag MNT_UNION)) { + struct vnode *tvp = vp; + vp = vp-v_mount-mnt_vnodecovered; + VREF(vp); + fp-f_data = (caddr_t) vp; + fp-f_offset = 0; + vrele(tvp); + goto unionread; + } error = copyout((caddr_t)loff, (caddr_t)SCARG(uap, basep), sizeof(long)); p-p_retval[0] = SCARG(uap, count) - auio.uio_resid; @@ -2828,6 +2839,17 @@ goto unionread; if (error) return (error); + } + if ((SCARG(uap, count) == auio.uio_resid) + (vp-v_flag VROOT) + (vp-v_mount-mnt_flag MNT_UNION)) { + struct vnode *tvp = vp; + vp = vp-v_mount-mnt_vnodecovered; + VREF(vp); + fp-f_data = (caddr_t) vp; + fp-f_offset = 0; + vrele(tvp); + goto unionread; } if (SCARG(uap, basep) != NULL) { error = copyout((caddr_t)loff, (caddr_t)SCARG(uap, basep), To Unsubscribe: send mail to majord...@freebsd.org with unsubscribe freebsd-current in the body of the message
mount -o union broken recently?
I have been experimenting with union mounts today with a recent -stable (cvsupped yesterday), and I haven't had much luck. Because cvsup likes to obliterate local changes, I thought it would be convenient to keep the altered files on a separate filesystem and use a union mount to overlay them on the upstream source when I compile things. So: # mount /dev/da0s1a on / (local, writes: sync 420 async 3185) procfs on /proc (local) /dev/da0s1e on /www (local, writes: sync 2 async 0) # mount /dev/da0s1f /srcdelta # ls -l /srcdelta total 1 drwxr-xr-x 6 root wheel 512 Feb 18 10:32 sys # umount /srcdelta # ls /usr/src COPYRIGHT UPDATING include share CVS bin kerberosIVsys Makefile contrib lib tools Makefile.inc0 cryptolibexec usr.bin Makefile.inc1 etc release usr.sbin Makefile.upgrade games sbin READMEgnu secure # mount -o union /dev/da0s1f /usr/src # ls -l /usr/src total 1 drwxr-xr-x 6 root wheel 512 Feb 18 10:32 sys # umount /usr/src # uname -a FreeBSD shirt.www.demon.net 3.1-STABLE FreeBSD 3.1-STABLE #6: Thu Feb 18 02:26:59 GMT 1999 r...@shirt.www.demon.net:/usr/src/sys/compile/SHIRT i386 # However, on another machine running 3.0-RELEASE mount -o union works as expected: # ls -l total 6 drwxr-xr-x 2 root wheel 512 Feb 18 16:36 da1 drwxr-xr-x 2 root wheel 512 Dec 11 11:06 da2 # mount /dev/da1s1e da1 # mount /dev/da2s1e da2 # ls -l da?/* -rw-r--r-- 1 root wheel 0 Feb 18 16:36 da1/this_is_da1 -rw-r--r-- 1 root wheel 0 Feb 18 16:36 da2/this_is_da2 # umount da2 # mount -o union /dev/da2s1e /www/da1 # ls -l da?/* -rw-r--r-- 1 root wheel 0 Feb 18 16:36 da1/this_is_da1 -rw-r--r-- 1 root wheel 0 Feb 18 16:36 da1/this_is_da2 # Shirt's kernel configuration is below. Tony. -- f.a.n.finch d...@dotat.at f...@demon.net machine i386 cpu I686_CPU ident SHIRT maxusers64 options INET#InterNETworking options FFS #Berkeley Fast Filesystem options FFS_ROOT#FFS usable as root device [keep this!] options MFS #Memory Filesystem #optionsMFS_ROOT#MFS usable as root device, MFS req'ed options NFS #Network Filesystem options NFS_NOSERVER #optionsNFS_ROOT#NFS usable as root device, NFS req'ed options MSDOSFS #MSDOS Filesystem #optionsCD9660#ISO 9660 Filesystem #optionsCD9660_ROOT #CD-ROM usable as root. CD9660 req'ed options PROCFS #Process filesystem options COMPAT_43 #Compatible with BSD 4.3 [KEEP THIS!] options SCSI_DELAY=1000 #Be pessimistic about Joe SCSI device options UCONSOLE#Allow users to grab the console options USERCONFIG #boot -c editor options VISUAL_USERCONFIG #visual boot -c editor options NETALIAS options NETBIND options SOFTUPDATES options MAXMEM=(64*1024) options PQ_MEDIUMCACHE options INCLUDE_CONFIG_FILE options PERFMON options IPFIREWALL options IPFIREWALL_VERBOSE options IPFIREWALL_DEFAULT_TO_ACCEPT options ICMP_BANDLIM options DUMMYNET config kernel root on wd0 controller isa0 controller eisa0 controller pci0 controller fdc0at isa? port IO_FD1 bio irq 6 drq 2 diskfd0 at fdc0 drive 0 #disk fd1 at fdc0 drive 1 options CMD640# work around CMD640 chip deficiency controller wdc0at isa? port IO_WD1 bio irq 14 diskwd0 at wdc0 drive 0 options ATAPI #Enable ATAPI support for IDE bus options ATAPI_STATIC#Don't do it as an LKM device acd0#IDE CD-ROM controller ncr0 controller scbus0 device da0 device pass0 device cd0 #Only need one of these, the code dynamically grows # atkbdc0 controlls both the keyboard and the PS/2 mouse controller atkbdc0 at isa? port IO_KBD tty device atkbd0 at isa? tty irq 1 device psm0at isa? tty irq 12 device vga0at isa? port ? conflicts # splash screen/screen saver #pseudo-device splash #optionsVM86 #optionsVESA # syscons is the default console driver, resembling an SCO console device sc0 at isa? tty device npx0at isa? port IO_NPX irq 13 # Laptop support (see LINT for more options) # device apm0at isa? disable flags 0x31 # Advanced Power Management # serial port device
Re: adding DHCP client to src/contrib/
Mike Smith m...@smith.net.au wrote: I've got a machine on the DHCP required network with two NICs. Currently I'm only using one of them and thus don't have it listed in ``network_interfaces''. So it just happily sits there. IMHO we shouldn't try to dhcp configure it. It will just fill up logs as it continues to try to get a lease which it can't. In a situation like that, you would just tune the dhcp client not to ask for a lease on that interface. You know you've done something silly; there's a mechanism to stop it breaking things. What more could you ask for? POLA. Currently, an interface that isn't mentioned isn't configured at all. Changing that isn't kind. Perhaps having a variable in rc.conf that lists the interfaces to be configured with DHCP would be better? (As opposed to the statically configured interfaces.) Tony. -- f.a.n.finch d...@dotat.at f...@demon.net To Unsubscribe: send mail to majord...@freebsd.org with unsubscribe freebsd-current in the body of the message
Re: btokup().. patch to STYLE(9) (fwd)
Peter Jeremy peter.jer...@auss2.alcatel.com.au wrote: Someone wrote: You are not supposed to understand this. I'd suggest that there's a vast difference in the intended audience of the code containing the above comment and FreeBSD. Not to mention a 20+ year gap in time. Whilst the official codebase may be under the control of a select group of committers, the code should be capable of being understood by anyone who is reasonably proficient with C. If understanding the kernel requires that you be a guru-level expert in C, then people won't bother. FreeBSD will wind up being a small collection of people trying to outdo each other in obtuseness. Don't be silly. FreeBSD is much more complicated than V6 for a whole lot of reasons that are independent of who gets to read the code and who gets to change it. Just as a starting point, the kernel has about a million lines of code compared to V6's ten thousand lines; Lions' comment about 1 lines being a comfortable amount of code for one person to understand comes to mind. The x86 architecture is vastly more complicated and baroque than the PDP11. We now have paging and networking and SMP and a whole lot of other sophisticated stuff that were completely beyond V6. The magic of swtch() is written in assembler, not C. On the other hand, what we have that the early Unix community didn't have is the Internet. We can collaborate with email, we can browse the code history with CVS, and generally benefit from a far greater level of support. Tony. -- f.a.n.finch d...@dotat.at f...@demon.net To Unsubscribe: send mail to majord...@freebsd.org with unsubscribe freebsd-current in the body of the message
Re: btokup().. patch to STYLE(9) (fwd)
Doug Rabson d...@nlsystems.com wrote: On Fri, 29 Jan 1999, Sheldon Hearn wrote: The reason I'm interested in this (now tiresome) thread is that I'd much rather have to read /* * Bail out if the time left to next transaction is less than * the duration of the previous transaction. */ if (t % u - n % u d % u) { than if (((t % u) - (n % u)) (d % u)) { This is a strawman. The original expression is perfectly fine (by my rules). One could make a case for: if ((t % u) - (n % u) d % u) Am I a heretic for suggesting this? if (t%u - n%u d%u) Grouping without brackets! Tony. -- f.a.n.finch d...@dotat.at f...@demon.net To Unsubscribe: send mail to majord...@freebsd.org with unsubscribe freebsd-current in the body of the message
Re: -D_REENTRANT (Was: Using LinuxThreads)
Kurt D. Zeilenga k...@openldap.org wrote: Richard Seaman, Jr. wrote: [lost attribution] Also, the cc(1) says to use -D_THREADSAFE not -D_THREAD_SAFE. Hmm. Not on my machine. :) http://www.freebsd.org/cgi/man.cgi?query=ccapropos=0sektion=0manpath=FreeBSD+3.0-currentformat=html This was changed some time after 3.0.0. http://www.freebsd.org/cgi/cvsweb.cgi/src/contrib/gcc/gcc.1 Tony. -- f.a.n.finch d...@dotat.at f...@demon.net To Unsubscribe: send mail to majord...@freebsd.org with unsubscribe freebsd-current in the body of the message