Skip site navigation (1)Skip section navigation (2)
Date:      Sun, 29 Apr 2001 16:11:52 -0700 (PDT)
From:      David Wolfskill <david@catwhisker.org>
To:        current@FreeBSD.ORG
Subject:   Re: dirpref: a new form of rm -rf * (was: World is broken...)
Message-ID:  <200104292311.f3TNBqp26845@bunrab.catwhisker.org>
In-Reply-To: <200104292023.f3TKNqK39533@vashon.polstra.com>

next in thread | previous in thread | raw e-mail | index | archive | help
>Date: Sun, 29 Apr 2001 13:23:52 -0700 (PDT)
>From: John Polstra <jdp@polstra.com>

>In article <200104291911.f3TJBw801041@mass.dis.org>,
>Mike Smith  <msmith@FreeBSD.ORG> wrote:
>> > #define	isalnum(c)	(isalpha(c) || isdigit(c))

Actually, following the lead of the definition of isalpha(), the version
I used had the last term of the disjunction wrapped in parens.  I
suppose there may be some pathological cases where that could be
significant.  :-}

But inserting that definition of isalnum() into
/usr/src/lib/libstand/stand.h allowed the build of today's -CURRENT to
succeed for me.

>> Just FWIW, you can't use <ctype.h> in the loader; it's too incestuously 
>> entangled with the rest of libc.  I suspect that Daniel forgot to update 
>> libstand.

Thanks for the insight as to why that is....

>Thanks.  I wish it had just stayed broken.  Running this morning's
>kernel has immediately trashed my entire root filesystem.

Given the fore-warning you provided, I was a little more cautious than
usual:  after mergemaster completed, I first booted single-user, did a
manual "fsck -p".  No weirdnesses found.  (More on config stuff below.)
Then I did a (manual) "mount -a"; again, nothing strange.  So I
rebooted, allowing the system to come up multi-user as usual.  No
problems observed.

>I updated the kernel and modules and rebooted.  Double-checked
>UPDATING, which assured me that the "old fsck and new kernel
>interactions appear to have been fixed."  Started a make buildworld.
>It hung almost immediately, in the "rm -rf /usr/obj/local0/src/i386"
>step of "Rebuilding the temporary build tree".  No response to the
>keyboard, no response to pings.  It wouldn't escape into DDB, and
>there were no messages of any kind.

Blecch.  :-(

>Upon rebooting, fsck complained about many unexpected soft-updates
>inconsistencies and other problems.  By the time it had finished
>having its way with me, I was left with nothing but "/lost+found".

Urggh.  Sympathy.  :-(

I haven't tried a "make buildworld" yet -- I'd normally do that after
updating my sources, and after the problem with isalnum(), I had
re-CVSupped:

CVSup started from cvsup14.freebsd.org at Sat Apr 28 03:47:00 PDT 2001
CVSup ended from cvsup14.freebsd.org at Sat Apr 28 03:54:18 PDT 2001
CVSup started from cvsup14.freebsd.org at Sun Apr 29 03:47:00 PDT 2001
CVSup ended from cvsup14.freebsd.org at Sun Apr 29 03:53:14 PDT 2001
CVSup started from cvsup14.freebsd.org at Sun Apr 29 10:00:22 PDT 2001
CVSup ended from cvsup14.freebsd.org at Sun Apr 29 10:06:31 PDT 2001

and did the "cvs update" in the /usr/src I use for -CURRENT.

>It's a single-CPU system, SCSI disks, nothing special.  Obviously I
>can't give you the kernel config file or dmesg output at this point.

On my side, I'm using my laptop -- single-CPU, single IDE drive;
everything mounted with soft updates turned on.  It's set up to boot any
of 3 (FreeBSD) environments (so an FS that's root for one would be
mounted elsewhere for others, which is one of the reasons I have soft
updates on everywhere).

Hope your system is recovered soon,
david
-- 
David H. Wolfskill				david@catwhisker.org
As a computing professional, I believe it would be unethical for me to
advise, recommend, or support the use (save possibly for personal
amusement) of any product that is or depends on any Microsoft product.

To Unsubscribe: send mail to majordomo@FreeBSD.org
with "unsubscribe freebsd-current" in the body of the message




Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?200104292311.f3TNBqp26845>