> >> > - boot/boot did bad things if the localroot
> >> > wasn't set, so when using boot/boot it's now .
> 
> I think this is fixed in hg now.  I found one place where
> localroot was going to be used even though
> it shouldn't.

Yes, that seems to work correctly now.

> > I'm beginning to think the lock-ups some of us have
> > seen are somewhere in devfs-posix.c.  When I'm using
> > it like drawterm, I've never seen it lock up.  When
> > I was using it with the local fossil/venti as root
> > today, it didn't.  In neither case was #Z bound.
> > It's at least suggestive.
> 
> Since the local fossil/venti goes through #Z to get at 
> the disk device, this doesn't exactly support your theory.
> I can still believe it, though.  Are you perhaps on a Mac?
> I fixed some pthread-related bugs on July 3 in hg,
> which is post-0.12.

I'm doing all of this on Linux.  Since then, I have seen
it lock up when running from a fossil/venti root and #Z
not bound.  I can't support it with statistics, but my gut
reaction is that it's less often though.

> > I had been trying not to modify anything outside of
> > vx32/src/9vx.  In particular, I liked the idea that
> > all Plan 9 executables would work unmodified.
> 
> I agree, but /boot/boot is not an ordinary Plan 9 
> executable.  It's hard-coded into the running kernel
> (or 9vx) and is always kernel-specific (each kernel
> config typically builds a different one with slightly
> different parameters), so it's fine if you need to build
> a slightly different /boot/boot for 9vx too.

Fair point.  The one change I did make should still work
fine on other kernels.  In that case, if configuring loopback
fails, then boot won't crash, but fossil will complain that
it can't get to venti.

The last couple days I've been looking at something else
that had slipped my mind in my earlier mail.  boot/boot
expects the venti environment variable to be set.  Normally,
this is done by 9load (as with the partitioning).  When
I got it working, I had hard-coded it in main.c and forgot
about it.  I spent most of a day trying to figure out how
to modify boot/boot so that it would behave without $venti
and would do the right thing in all cases, and then it hit
me that I was attacking the wrong problem.  I could take
care of this and open up other possibilities by having
9vx read a plan9.ini file.  So I've been folding 9load's
ini file reader into 9vx.  This is not so much massaging
as with part.c, but liposuction.

Hopefully, I'll have some cleaned up patches available soon.

BLS


Reply via email to