Re: [REPORT] Upgrade from 4.0-RELEASE to 5.0-CURRENT

2002-12-02 Thread David O'Brien
On Mon, Dec 02, 2002 at 10:34:32AM +0200, Ruslan Ermilov wrote:
> > Please indent the last line either 4 spaces or a tab.  It is a continued
> > line.
> 
> It's already indented, and we don't indent multiple times like this:

Blah, mis-read the patch.  Please forget I responed before.

To Unsubscribe: send mail to [EMAIL PROTECTED]
with "unsubscribe freebsd-current" in the body of the message



Re: [REPORT] Upgrade from 4.0-RELEASE to 5.0-CURRENT

2002-12-02 Thread Kirill Ponomarew
Hi!

On Mon, Dec 02, 2002 at 01:19:17AM -0800, Doug Barton wrote:
DB> I'm not sure how to solve this problem non-invasively. One way to deal
DB> with it would be to include the instructions to install stat(1) if needed
DB> in UPDATING, but then if the upgrade fails for whatever reason, the user
DB> would be left with a bogus 5.x stat(1)  binary on their system. However,
DB> if someone wants to include that step in UPDATING, I have no objection.

Could we have in UPDATING precise information about upgrading from
RELENG_4 to -CURRENT? Including all the steps, all the tricks etc, all
possible troubles etc?

-- 
MfG
Kirill
No good deed goes unpunished.

To Unsubscribe: send mail to [EMAIL PROTECTED]
with "unsubscribe freebsd-current" in the body of the message



Re: [REPORT] Upgrade from 4.0-RELEASE to 5.0-CURRENT

2002-12-02 Thread Doug Barton
On Mon, 2 Dec 2002, Terry Lambert wrote:

> Doug Barton wrote:
> > On Sun, 1 Dec 2002, Ruslan Ermilov wrote:
> > > I've attempted to overcome 1) as suggested by UPDATING, by running
> > > the ``mergemaster -p'' (from src/usr.sbin/mergemaster/).  This did
> > > not work well because mergemaster(8) attempted to use stat(1) which
> > > is not present in 4.0.
> >
> > I'm not sure how to solve this problem non-invasively. One way to deal
> > with it would be to include the instructions to install stat(1) if needed
> > in UPDATING, but then if the upgrade fails for whatever reason, the user
> > would be left with a bogus 5.x stat(1)  binary on their system. However,
> > if someone wants to include that step in UPDATING, I have no objection.
>
> What arguments and information did it use?  Most of the stuff
> stat(1) outputs can be gotten at another way... e.g. by awk'ing
> 'ls' output, or tar'ing to a tempfile and "tvf"'ing the archive
> to get the information, etc..

I need to find the mode of a file, convert it to octal, and munge the
user's umask value. While there were a lot of complicated solutions
possible, stat(1) makes this quite easy, and since all I had to do was
a minimal port from netbsd, it was the easy way to go; with (arguably)
some nice side effects.

> Makes me want to ask the question: how did you end up with a
> mergemaster(8) that needed stat(1), when the 4.x version of
> mergemaster that you were supposed to have been running uses
> a back-ticked perl command?

The 4.0-vintage mm doesn't have the -p mode to do just the master.passwd
and group files that is needed for 5.0. Thus, UPDATING recommends using mm
to bootstrap that, but RELENG_4 prior to the smmsp user's introduction
upgrading to 5.0 is always going to be a problem for this situation.

Doug

-- 
   "We have known freedom's price. We have shown freedom's power.
  And in this great conflict, ...  we will see freedom's victory."
- George W. Bush, President of the United States
  State of the Union, January 28, 2002

 Do YOU Yahoo!?


To Unsubscribe: send mail to [EMAIL PROTECTED]
with "unsubscribe freebsd-current" in the body of the message



Re: [REPORT] Upgrade from 4.0-RELEASE to 5.0-CURRENT

2002-12-02 Thread Terry Lambert
Doug Barton wrote:
> On Sun, 1 Dec 2002, Ruslan Ermilov wrote:
> > I've attempted to overcome 1) as suggested by UPDATING, by running
> > the ``mergemaster -p'' (from src/usr.sbin/mergemaster/).  This did
> > not work well because mergemaster(8) attempted to use stat(1) which
> > is not present in 4.0.
> 
> I'm not sure how to solve this problem non-invasively. One way to deal
> with it would be to include the instructions to install stat(1) if needed
> in UPDATING, but then if the upgrade fails for whatever reason, the user
> would be left with a bogus 5.x stat(1)  binary on their system. However,
> if someone wants to include that step in UPDATING, I have no objection.

What arguments and information did it use?  Most of the stuff
stat(1) outputs can be gotten at another way... e.g. by awk'ing
'ls' output, or tar'ing to a tempfile and "tvf"'ing the archive
to get the information, etc..

Makes me want to ask the question: how did you end up with a
mergemaster(8) that needed stat(1), when the 4.x version of
mergemaster that you were supposed to have been running uses
a back-ticked perl command?

-- Terry

To Unsubscribe: send mail to [EMAIL PROTECTED]
with "unsubscribe freebsd-current" in the body of the message



Re: [REPORT] Upgrade from 4.0-RELEASE to 5.0-CURRENT

2002-12-02 Thread Ruslan Ermilov
On Mon, Dec 02, 2002 at 01:15:39AM -0800, Doug Barton wrote:
> On Sun, 1 Dec 2002, Daniel C. Sobral wrote:
> 
> > IIRC, we never supported upgrade to 4.0 or 4.1 from anybut but the
> > *latest* version in the 3.x series. I sure hope we adopt the same policy
> > here.
> 
> While I can't put a lot of time into supporting ru's efforts, and I agree
> that the policy should be that we only officially support updating from
> the latest RELENG_4, I think his work is noble, and I think we all agree
> that any effort in this direction is laudable.
> 
Having been actually working on this, I can say that the effort in
supporting 4.0 -> 5.0 path is minimal, taking into consideration the
following facts:

1.  We're required to support 4.0-RELEASE -> RELENG_4 upgrades.
2.  We're required to support RELENG_4 -> 5.0-RELEASE upgrades.
3.  It's desirable to support upgrades within 5.0-CURRENT.
4.  First day 5.0-CURRENT is identical to 4.0-RELEASE.

In 95% (maybe more) of cases, when I commit something titled
"Boostrapping aid for 4.0-RELEASE", it should be equally appicable
to upgrades from 4.0 to RELENG_4.  A few recent examples:

: ru  2002/11/13 03:50:40 PST
: 
:   Modified files:
: usr.sbin/crunch/crunchide exec_elf32.c
: gnu/usr.bin/cc/cc_tools auto-host.h
: lib/libncurses   Makefile
:   Log:
:   Bootstrapping aid for 4.0-RELEASE.
: 
:   Revision  ChangesPath
:   1.11  +3 -0  src/gnu/usr.bin/cc/cc_tools/auto-host.h
:   1.64  +4 -0  src/lib/libncurses/Makefile
:   1.6   +6 -0  src/usr.sbin/crunch/crunchide/exec_elf32.c

When/if libncurses is MFC'ed, this change will be required to
upgrade from 4.0-RELEASE.  Similarly for crunchide(1).  cc_tools
is an exception -- we aren't likely to bring GCC 3.x to RELENG_4.
OTOH, the change to auto-host.h is also of a help when upgrading
from pre-stdbool.h 5.0-CURRENT systems:

:  /* Define if you have a working  header file. */
: +#if (__FreeBSD_version >= 440003 && __FreeBSD_version < 50) || \
: +__FreeBSD_version >= 500014
:  #define HAVE_STDBOOL_H 1
: +#endif

Another one:

: ru  2002/12/01 05:38:25 PST
: 
:   Modified files:
: usr.bin/make job.c
:   Log:
:   Bootstrapping aid from pre-kqueue(2) systems, e.g. 4.0-RELEASE.
: 
:   Submitted by:   jmallett
:   Approved by:re (bmah)
: 
:   Revision  ChangesPath
:   1.48  +2 -0  src/usr.bin/make/job.c

When/if this change is merged, it'll be needed to upgrade from 4.0
to RELENG_4.

Quoting Marcel in his writing to me,

On Sun, Jun 02, 2002 at 12:03:24PM -0700, Marcel Moolenaar wrote:
>
> Yes. I liked you reasoning in another mail where you said that -current
> starts at the branch-point and that is what we need to support. The
> additional advantage of this is that it has a stabilizing effect on
> -stable. One will not easily MFC something if it breaks the upgrade path,
> which means that there's a higher chance that if the MFC happens anyway,
> more thought has gone into it.


Cheers,
-- 
Ruslan Ermilov  Sysadmin and DBA,
[EMAIL PROTECTED]   Sunbay Software AG,
[EMAIL PROTECTED]  FreeBSD committer,
+380.652.512.251Simferopol, Ukraine

http://www.FreeBSD.org  The Power To Serve
http://www.oracle.com   Enabling The Information Age



msg47948/pgp0.pgp
Description: PGP signature


Re: [REPORT] Upgrade from 4.0-RELEASE to 5.0-CURRENT

2002-12-02 Thread Terry Lambert
Doug Barton wrote:
> On Sun, 1 Dec 2002, Daniel C. Sobral wrote:
> > IIRC, we never supported upgrade to 4.0 or 4.1 from anybut but the
> > *latest* version in the 3.x series. I sure hope we adopt the same policy
> > here.
> 
> While I can't put a lot of time into supporting ru's efforts, and I agree
> that the policy should be that we only officially support updating from
> the latest RELENG_4, I think his work is noble, and I think we all agree
> that any effort in this direction is laudable.

I agree.

It's reasonable to say you don't guarantee that it will work.

It's unreasonable to go out of your way to make sure that it
will *not* work.

Personally, I want all the changes ru's been doing lately; he
does good work, and it's elitist to force people to download
gigabytes of intermediate release CDROMs to get to the -CURRENT
release via an upgrade rather than a reinstall.  The only thing
you gain is trading in the people complaining about it not
working as expected for people complaining that it's not working
at all.

-- Terry

To Unsubscribe: send mail to [EMAIL PROTECTED]
with "unsubscribe freebsd-current" in the body of the message



Re: [REPORT] Upgrade from 4.0-RELEASE to 5.0-CURRENT

2002-12-02 Thread Doug Barton
On Sun, 1 Dec 2002, Ruslan Ermilov wrote:

> [
>  current@ Cc:'ed because it'll be useful to a number of upgraders.
>  dougb@ Cc:'ed to be aware of possible mergemaster(8) problems.

Thanks.

> 1.  smmsp user was missing from /etc/passwd and /etc/group
> 2.  installed 4.0 kernel did not have the sigaction(2) syscall
>
> I've attempted to overcome 1) as suggested by UPDATING, by running
> the ``mergemaster -p'' (from src/usr.sbin/mergemaster/).  This did
> not work well because mergemaster(8) attempted to use stat(1) which
> is not present in 4.0.

I'm not sure how to solve this problem non-invasively. One way to deal
with it would be to include the instructions to install stat(1) if needed
in UPDATING, but then if the upgrade fails for whatever reason, the user
would be left with a bogus 5.x stat(1)  binary on their system. However,
if someone wants to include that step in UPDATING, I have no objection.

Doug

-- 
   "We have known freedom's price. We have shown freedom's power.
  And in this great conflict, ...  we will see freedom's victory."
- George W. Bush, President of the United States
  State of the Union, January 28, 2002

 Do YOU Yahoo!?


To Unsubscribe: send mail to [EMAIL PROTECTED]
with "unsubscribe freebsd-current" in the body of the message



Re: [REPORT] Upgrade from 4.0-RELEASE to 5.0-CURRENT

2002-12-02 Thread Doug Barton
On Sun, 1 Dec 2002, Daniel C. Sobral wrote:

> IIRC, we never supported upgrade to 4.0 or 4.1 from anybut but the
> *latest* version in the 3.x series. I sure hope we adopt the same policy
> here.

While I can't put a lot of time into supporting ru's efforts, and I agree
that the policy should be that we only officially support updating from
the latest RELENG_4, I think his work is noble, and I think we all agree
that any effort in this direction is laudable.

Doug

-- 
   "We have known freedom's price. We have shown freedom's power.
  And in this great conflict, ...  we will see freedom's victory."
- George W. Bush, President of the United States
  State of the Union, January 28, 2002

 Do YOU Yahoo!?


To Unsubscribe: send mail to [EMAIL PROTECTED]
with "unsubscribe freebsd-current" in the body of the message



Re: [REPORT] Upgrade from 4.0-RELEASE to 5.0-CURRENT

2002-12-02 Thread Ruslan Ermilov
On Mon, Dec 02, 2002 at 01:44:58AM -0700, M. Warner Losh wrote:
> In message: <[EMAIL PROTECTED]>
> Ruslan Ermilov <[EMAIL PROTECTED]> writes:
> : Um, why?  I can even cross-build any of our supported arches on the
> : 4.0-RELEASE i386 box.  This happens almost automatically, as part
> : of the cross-arch work tasks.
> 
> I think that there are some build tools that need a complete copy of
> the byte swapping macros, just so that cross building a sparc64
> platform would work.  It seems to me, and a bunch of others, that
> jumping through a lot of hoops to allow cross building of sparc64 on
> intel on 4.0-release isn't that interesting.  imho.
> 
For the cross-release, yes, the work isn't yet finished (when
creating floppies that, last time I checked, didn't even work
on sparc64, we need to byteswap the filesystem images -- there
is a utility floating around, bswapfs(8), that could be used
to do just this, but it was limited to FFS1 (again, last time
I checked).  Another cross-tool that was needed for this to
work was crunchide(1):

: revision 1.263 of Makefile.inc1
: date: 2002/04/30 09:34:53;  author: ru;  state: Exp;  lines: +2 -1
: Make crunchide(1) a cross-tool; needed for cross-arch "make release".
: Note that a.out is only supported for the non-cross i386 case.

For the "regular" cross-build the only tool that needed tweaking was
elf2aout(1):

: revision 1.282 of Makefile.inc1
: date: 2002/05/20 14:42:48;  author: ru;  state: Exp;  lines: +5 -1
: Bootstrap elf2aout(1) for sparc64; used to build sys/boot/sparc64/boot1.

(Of course, both crunchide(1) and elf2aout(1) were "fixed" to
support different endianness host/target machines, for this to
work.)


Cheers,
-- 
Ruslan Ermilov  Sysadmin and DBA,
[EMAIL PROTECTED]   Sunbay Software AG,
[EMAIL PROTECTED]  FreeBSD committer,
+380.652.512.251Simferopol, Ukraine

http://www.FreeBSD.org  The Power To Serve
http://www.oracle.com   Enabling The Information Age



msg47941/pgp0.pgp
Description: PGP signature


Re: [REPORT] Upgrade from 4.0-RELEASE to 5.0-CURRENT

2002-12-02 Thread M. Warner Losh
In message: <[EMAIL PROTECTED]>
Ruslan Ermilov <[EMAIL PROTECTED]> writes:
: Um, why?  I can even cross-build any of our supported arches on the
: 4.0-RELEASE i386 box.  This happens almost automatically, as part
: of the cross-arch work tasks.

I think that there are some build tools that need a complete copy of
the byte swapping macros, just so that cross building a sparc64
platform would work.  It seems to me, and a bunch of others, that
jumping through a lot of hoops to allow cross building of sparc64 on
intel on 4.0-release isn't that interesting.  imho.

Warner

To Unsubscribe: send mail to [EMAIL PROTECTED]
with "unsubscribe freebsd-current" in the body of the message



Re: [REPORT] Upgrade from 4.0-RELEASE to 5.0-CURRENT

2002-12-02 Thread Ruslan Ermilov
On Mon, Dec 02, 2002 at 12:28:50AM -0800, David O'Brien wrote:
> On Sun, Dec 01, 2002 at 05:03:03PM +0200, Ruslan Ermilov wrote:
> > Index: Makefile.inc1
> > ===
> > RCS file: /home/ncvs/src/Makefile.inc1,v
> > retrieving revision 1.312
> > diff -u -r1.312 Makefile.inc1
> > --- Makefile.inc1   14 Nov 2002 19:24:50 -  1.312
> > +++ Makefile.inc1   1 Dec 2002 14:34:40 -
> > @@ -521,7 +521,8 @@
> >  #
> >  installkernel reinstallkernel:
> > cd ${KRNLOBJDIR}/${INSTALLKERNEL}; \
> > -   ${CROSSENV} ${MAKE} KERNEL=${INSTKERNNAME} ${.TARGET:S/kernel$//}
> > +   ${CROSSENV} PATH=${TMPPATH} \
> > +   ${MAKE} KERNEL=${INSTKERNNAME} ${.TARGET:S/kernel$//}
> 
> Please indent the last line either 4 spaces or a tab.  It is a continued
> line.
> 
It's already indented, and we don't indent multiple times like this:

 \
 \
 \


We indent like this:

 \
 \
 \



Cheers,
-- 
Ruslan Ermilov  Sysadmin and DBA,
[EMAIL PROTECTED]   Sunbay Software AG,
[EMAIL PROTECTED]  FreeBSD committer,
+380.652.512.251Simferopol, Ukraine

http://www.FreeBSD.org  The Power To Serve
http://www.oracle.com   Enabling The Information Age



msg47937/pgp0.pgp
Description: PGP signature


Re: [REPORT] Upgrade from 4.0-RELEASE to 5.0-CURRENT

2002-12-02 Thread David O'Brien
On Sun, Dec 01, 2002 at 05:03:03PM +0200, Ruslan Ermilov wrote:
> Index: Makefile.inc1
> ===
> RCS file: /home/ncvs/src/Makefile.inc1,v
> retrieving revision 1.312
> diff -u -r1.312 Makefile.inc1
> --- Makefile.inc1 14 Nov 2002 19:24:50 -  1.312
> +++ Makefile.inc1 1 Dec 2002 14:34:40 -
> @@ -521,7 +521,8 @@
>  #
>  installkernel reinstallkernel:
>   cd ${KRNLOBJDIR}/${INSTALLKERNEL}; \
> - ${CROSSENV} ${MAKE} KERNEL=${INSTKERNNAME} ${.TARGET:S/kernel$//}
> + ${CROSSENV} PATH=${TMPPATH} \
> + ${MAKE} KERNEL=${INSTKERNNAME} ${.TARGET:S/kernel$//}

Please indent the last line either 4 spaces or a tab.  It is a continued
line.

To Unsubscribe: send mail to [EMAIL PROTECTED]
with "unsubscribe freebsd-current" in the body of the message



Re: [REPORT] Upgrade from 4.0-RELEASE to 5.0-CURRENT

2002-12-02 Thread Ruslan Ermilov
On Sun, Dec 01, 2002 at 11:11:29AM -0700, M. Warner Losh wrote:
> In message: <[EMAIL PROTECTED]>
> "Daniel C. Sobral" <[EMAIL PROTECTED]> writes:
> : There I go reply to all... 
> : 
> : IIRC, we never supported upgrade to 4.0 or 4.1 from anybut but the
> : *latest* version in the 3.x series. I sure hope we adopt the same policy
> : here.
> 
> ru@ has stepped up to the plate to support more.  He's gone through
> and made sure that all the way back to 4.0-release is upgradable (at
> least at each release point), going to support it through the first
> branchpoint.  You as a committer aren't required to do extra work to
> make this work, except to not remove things he's done to make this
> work.  It is unclear what should happen when a piece of thirdparty
> software is upgraded.  However, core ruled a long time ago that ru@
> can take reasonable measures to make sure that it works.  ru@ has kept
> it up for a while now, so it looks like he's in it for the long run.
> 
> This is only for native builds.  Anything that is needed for cross
> building isn't included in this 'upgrade' path.  It is there just to
> make our user's life easier.  Also, core didn't want the work arounds
> to get too gross, but so far all the ones I've l ooked at were
> relatively inobtrusive.
> 
Um, why?  I can even cross-build any of our supported arches on the
4.0-RELEASE i386 box.  This happens almost automatically, as part
of the cross-arch work tasks.  Cross-releases have some issues, and
the Alpha box (of any useful sort) would help me a lot in polishing
this.  I've asked donations@ about this when they were offered a
bunch of Alpha boxes last month, but haven't heard from them back.


Cheers,
-- 
Ruslan Ermilov  Sysadmin and DBA,
[EMAIL PROTECTED]   Sunbay Software AG,
[EMAIL PROTECTED]  FreeBSD committer,
+380.652.512.251Simferopol, Ukraine

http://www.FreeBSD.org  The Power To Serve
http://www.oracle.com   Enabling The Information Age



msg47933/pgp0.pgp
Description: PGP signature


Patches reviewed [was: Re: [REPORT] Upgrade from 4.0-RELEASE to 5.0-CURRENT]

2002-12-01 Thread Marcel Moolenaar
On Sun, Dec 01, 2002 at 12:12:36PM -0500, Robert Watson wrote:
> 
> > > There I go reply to all... 
> > > 
> > > IIRC, we never supported upgrade to 4.0 or 4.1 from anybut but the
> > > *latest* version in the 3.x series. I sure hope we adopt the same policy
> > > here.
> > 
> > Agree, I don't see any use in supporting upgrades without going through
> > 4.x-STABLE first. 
> 
> It's nice that you guys are in agreement on that fact, but perhaps you'd
> like to do something constructive like to look at and review the patches?

Done. The patches look good.

> Avoiding the install of a new make during a build is highly desirable,
> even if you don't believe in updating from old RELENG_4.

Agreed (it's so nice to be in agreement :-)

A regular buildworld failed even when upgrading a less-than-a-week
old -current. The removal of anything we install as part of a build
phase is good and not tied to the (version) distance of the upgrade.

-- 
 Marcel Moolenaar USPA: A-39004  [EMAIL PROTECTED]

To Unsubscribe: send mail to [EMAIL PROTECTED]
with "unsubscribe freebsd-current" in the body of the message



Re: [REPORT] Upgrade from 4.0-RELEASE to 5.0-CURRENT

2002-12-01 Thread M. Warner Losh
Hey ru!

These patches are only one '/' different from what I build on my 4.3,
4.5 and 4.6.2 systems w/o a new make being installed.  All built
perfectly!  Thanks!

Warner

To Unsubscribe: send mail to [EMAIL PROTECTED]
with "unsubscribe freebsd-current" in the body of the message



Re: [REPORT] Upgrade from 4.0-RELEASE to 5.0-CURRENT

2002-12-01 Thread M. Warner Losh
In message: <[EMAIL PROTECTED]>
"Daniel C. Sobral" <[EMAIL PROTECTED]> writes:
: There I go reply to all... 
: 
: IIRC, we never supported upgrade to 4.0 or 4.1 from anybut but the
: *latest* version in the 3.x series. I sure hope we adopt the same policy
: here.

ru@ has stepped up to the plate to support more.  He's gone through
and made sure that all the way back to 4.0-release is upgradable (at
least at each release point), going to support it through the first
branchpoint.  You as a committer aren't required to do extra work to
make this work, except to not remove things he's done to make this
work.  It is unclear what should happen when a piece of thirdparty
software is upgraded.  However, core ruled a long time ago that ru@
can take reasonable measures to make sure that it works.  ru@ has kept
it up for a while now, so it looks like he's in it for the long run.

This is only for native builds.  Anything that is needed for cross
building isn't included in this 'upgrade' path.  It is there just to
make our user's life easier.  Also, core didn't want the work arounds
to get too gross, but so far all the ones I've l ooked at were
relatively inobtrusive.

Warner


To Unsubscribe: send mail to [EMAIL PROTECTED]
with "unsubscribe freebsd-current" in the body of the message



Re: [REPORT] Upgrade from 4.0-RELEASE to 5.0-CURRENT

2002-12-01 Thread Robert Watson

On Sun, 1 Dec 2002, Jake Burkholder wrote:

> Apparently, On Sun, Dec 01, 2002 at 01:15:00PM -0200,
>   Daniel C. Sobral said words to the effect of;
> 
> > There I go reply to all... 
> > 
> > IIRC, we never supported upgrade to 4.0 or 4.1 from anybut but the
> > *latest* version in the 3.x series. I sure hope we adopt the same policy
> > here.
> 
> Agree, I don't see any use in supporting upgrades without going through
> 4.x-STABLE first. 

It's nice that you guys are in agreement on that fact, but perhaps you'd
like to do something constructive like to look at and review the patches?
Avoiding the install of a new make during a build is highly desirable,
even if you don't believe in updating from old RELENG_4.

Robert N M Watson FreeBSD Core Team, TrustedBSD Projects
[EMAIL PROTECTED]  Network Associates Laboratories




To Unsubscribe: send mail to [EMAIL PROTECTED]
with "unsubscribe freebsd-current" in the body of the message



Re: [REPORT] Upgrade from 4.0-RELEASE to 5.0-CURRENT

2002-12-01 Thread Jake Burkholder
Apparently, On Sun, Dec 01, 2002 at 01:15:00PM -0200,
Daniel C. Sobral said words to the effect of;

> There I go reply to all... 
> 
> IIRC, we never supported upgrade to 4.0 or 4.1 from anybut but the
> *latest* version in the 3.x series. I sure hope we adopt the same policy
> here.

Agree, I don't see any use in supporting upgrades without going through
4.x-STABLE first.

Jake

> 
> Ruslan Ermilov wrote:
> > 
> > [
> >  current@ Cc:'ed because it'll be useful to a number of upgraders.
> >  dougb@ Cc:'ed to be aware of possible mergemaster(8) problems.
> >  imp@ Cc:'ed to be aware of incorrect UPDATING instruction.
> >  peter@ Cc:'ed to LOL about foot-shooting with anti-foot-shooting.
> >  re@ Cc:'ed to consider approving the attached patches.
> > ]
> > 
> > Hi!
> > 
> > Following is the report from my attempt to upgrade 4.0-RELEASE
> > system to 5.0-CURRENT.  First, I'd like to say that I succedded
> > in it:
> > 
> > FreeBSD  4.0-RELEASE FreeBSD 4.0-RELEASE #0: Mon Mar 20 22:50:22 GMT 2000 
>[EMAIL PROTECTED]:/usr/src/sys/compile/GENERIC  i386
> > FreeBSD  5.0-CURRENT FreeBSD 5.0-CURRENT #0: Sun Dec  1 13:52:37 GMT 2002 
>ru@:/usr/obj/ru/mnt/usr/src/sys/GENERIC  i386
> > 
> > 4.0-RELEASE system was installed on a spare disk by newfs'ing the
> > `a' partition and extracting the `bin' distribution on top of it
> > from the 4.0-RELEASE 1st CD, thanks again to Charlie Brewster
> > <[EMAIL PROTECTED]> for sending me one.
> > 
> > The /etc/make.conf's contents was a mere NOPROFILE=YES.
> > 
> > Buildworld was attempted under a non-root account.  The installed
> > make(1) did not pass the regression tests, and this required a patch
> > to src/Makefile (attach #1) to survive; the patch allows one to
> > build and use the new make(1) under non-root, without the need to
> > overwrite /usr/bin/make.  (This patch, with Warner's suggestion
> > incorporated, is currently considered by re@ for approval.)
> > 
> > Other than that, both buildworld and buildkernel of the GENERIC
> > kernel went just fine.
> > 
> > The next step was to install the new kernel and modules, as outlined
> > in UPDATING.
> > 
> > As a prerequisite step (following the instructions from UPDATING)
> > I've created the /boot/device.hints file, and attempted to
> > installkernel.  This failed with ``You must activate /boot/device.hints
> > in loader.conf.'' from kern.post.mk because 4.0 does not have
> > /boot/defaults/loader.conf.  (Rather than creating it by hands, I
> > took another approach, see below.)
> > 
> > As was documented in rev. 1.219 of UPDATING, after installing a
> > kernel (which I did not yet succeded in), it is highly recommended
> > to install new loader(8), and generally, upgrade /boot.
> > 
> > WARNING!  The relevant instruction from UPDATING,
> > 
> > cd src/sys/boot ; make install
> > 
> > will NOT work as is on most of old systems -- if run as is, make(1)
> > will use stuff from /usr/share/mk which may be incompatible with
> > sys/boot/ makefiles.  Adding the -m `pwd`/../../share/mk did not
> > help either because now make(1) was attempting to run 4.0's install(1)
> > which does not understand the new -b option (INSTALLFLAGS=-b in
> > sys/boot/i386/loader/Makefile), in particular.  Another problem
> > with 4.0 install(1) is that it removes source files by default,
> > while new versions of install(1) (4.3-STABLE and onwards) copy it
> > by default, so if you attempted to run it as is, it will wipe out
> > some already built stuff from /usr/obj, making the next installworld
> > attempt to fail.
> > 
> > To overcome this, I needed to use the installworld environment [with
> > an up-to-date src/share/mk/ and install(1)] to install sys/boot/.
> > Fortunately, we have the SUBDIR_OVERRIDE knob in Makefile.inc1 that
> > was helpful here.
> > 
> > So, my next attempt was to run, from src/, the following command:
> > 
> > make installworld SUBDIR_OVERRIDE=sys/boot
> > 
> > This would upgrade /boot, and (as part of the upgrade) install
> > /boot/defaults/loader.conf that is needed for installkernel to
> > proceed (see above).  Unfortunately, this has failed to pass the
> > `installcheck' anti-foot-shooting check from Makefile.inc1, which
> > installworld depends on:
> > 
> > 1.  smmsp user was missing from /etc/passwd and /etc/group
> > 2.  installed 4.0 kernel did not have the sigaction(2) syscall
> > 
> > I've attempted to overcome 1) as suggested by UPDATING, by running
> > the ``mergemaster -p'' (from src/usr.sbin/mergemaster/).  This did
> > not work well because mergemaster(8) attempted to use stat(1) which
> > is not present in 4.0.  OK, it was trivial (in my case) to update
> > /etc/master.passwd and /etc/group by hands and run ``pwd_mkdb -p
> > /etc/master.passwd'' afterwards.
> > 
> > I couldn't overcome 2) for obvious reason -- I was in the middle
> > of attempting to install a new kernel!  Isn't this itself a sort
> > of foot-shooting?  :-)
> > 
> > The solution was to make the `installche

Re: [REPORT] Upgrade from 4.0-RELEASE to 5.0-CURRENT

2002-12-01 Thread Ruslan Ermilov
[Cc: to re@ dropped to avoid unnecessary load]

On Sun, Dec 01, 2002 at 01:15:00PM -0200, Daniel C. Sobral wrote:
> There I go reply to all... 
> 
> IIRC, we never supported upgrade to 4.0 or 4.1 from anybut but the
> *latest* version in the 3.x series. I sure hope we adopt the same policy
> here.
> 
This popped up several times already, on various open and closed
lists.  This time I'll be short.

On Thu, Nov 14, 2002 at 08:28:57AM -0700, M. Warner Losh wrote:
>
>  A long time ago ru said he'd do this and he
> has been doing this so I think that we should allow him to continue to
> do this and tell people that want to prematurely tidy up that they
> can't for a while.
>
> Warner

(This was about removing some of the bootstrapping stuff needed to
upgrade from 4.0-RELEASE ~= first-day 5.0-CURRENT systems.)

> Ruslan Ermilov wrote:
> > 
> > [
> >  current@ Cc:'ed because it'll be useful to a number of upgraders.
> >  dougb@ Cc:'ed to be aware of possible mergemaster(8) problems.
> >  imp@ Cc:'ed to be aware of incorrect UPDATING instruction.
> >  peter@ Cc:'ed to LOL about foot-shooting with anti-foot-shooting.
> >  re@ Cc:'ed to consider approving the attached patches.
> > ]
> > 
> > Hi!
> > 
> > Following is the report from my attempt to upgrade 4.0-RELEASE
> > system to 5.0-CURRENT.  First, I'd like to say that I succedded
> > in it:
> > 
> > FreeBSD  4.0-RELEASE FreeBSD 4.0-RELEASE #0: Mon Mar 20 22:50:22 GMT 2000 
>[EMAIL PROTECTED]:/usr/src/sys/compile/GENERIC  i386
> > FreeBSD  5.0-CURRENT FreeBSD 5.0-CURRENT #0: Sun Dec  1 13:52:37 GMT 2002 
>ru@:/usr/obj/ru/mnt/usr/src/sys/GENERIC  i386


Cheers,
-- 
Ruslan Ermilov  Sysadmin and DBA,
[EMAIL PROTECTED]   Sunbay Software AG,
[EMAIL PROTECTED]  FreeBSD committer,
+380.652.512.251Simferopol, Ukraine

http://www.FreeBSD.org  The Power To Serve
http://www.oracle.com   Enabling The Information Age



msg47882/pgp0.pgp
Description: PGP signature


Re: [REPORT] Upgrade from 4.0-RELEASE to 5.0-CURRENT

2002-12-01 Thread Daniel C. Sobral
There I go reply to all... 

IIRC, we never supported upgrade to 4.0 or 4.1 from anybut but the
*latest* version in the 3.x series. I sure hope we adopt the same policy
here.

Ruslan Ermilov wrote:
> 
> [
>  current@ Cc:'ed because it'll be useful to a number of upgraders.
>  dougb@ Cc:'ed to be aware of possible mergemaster(8) problems.
>  imp@ Cc:'ed to be aware of incorrect UPDATING instruction.
>  peter@ Cc:'ed to LOL about foot-shooting with anti-foot-shooting.
>  re@ Cc:'ed to consider approving the attached patches.
> ]
> 
> Hi!
> 
> Following is the report from my attempt to upgrade 4.0-RELEASE
> system to 5.0-CURRENT.  First, I'd like to say that I succedded
> in it:
> 
> FreeBSD  4.0-RELEASE FreeBSD 4.0-RELEASE #0: Mon Mar 20 22:50:22 GMT 2000 
>[EMAIL PROTECTED]:/usr/src/sys/compile/GENERIC  i386
> FreeBSD  5.0-CURRENT FreeBSD 5.0-CURRENT #0: Sun Dec  1 13:52:37 GMT 2002 
>ru@:/usr/obj/ru/mnt/usr/src/sys/GENERIC  i386
> 
> 4.0-RELEASE system was installed on a spare disk by newfs'ing the
> `a' partition and extracting the `bin' distribution on top of it
> from the 4.0-RELEASE 1st CD, thanks again to Charlie Brewster
> <[EMAIL PROTECTED]> for sending me one.
> 
> The /etc/make.conf's contents was a mere NOPROFILE=YES.
> 
> Buildworld was attempted under a non-root account.  The installed
> make(1) did not pass the regression tests, and this required a patch
> to src/Makefile (attach #1) to survive; the patch allows one to
> build and use the new make(1) under non-root, without the need to
> overwrite /usr/bin/make.  (This patch, with Warner's suggestion
> incorporated, is currently considered by re@ for approval.)
> 
> Other than that, both buildworld and buildkernel of the GENERIC
> kernel went just fine.
> 
> The next step was to install the new kernel and modules, as outlined
> in UPDATING.
> 
> As a prerequisite step (following the instructions from UPDATING)
> I've created the /boot/device.hints file, and attempted to
> installkernel.  This failed with ``You must activate /boot/device.hints
> in loader.conf.'' from kern.post.mk because 4.0 does not have
> /boot/defaults/loader.conf.  (Rather than creating it by hands, I
> took another approach, see below.)
> 
> As was documented in rev. 1.219 of UPDATING, after installing a
> kernel (which I did not yet succeded in), it is highly recommended
> to install new loader(8), and generally, upgrade /boot.
> 
> WARNING!  The relevant instruction from UPDATING,
> 
> cd src/sys/boot ; make install
> 
> will NOT work as is on most of old systems -- if run as is, make(1)
> will use stuff from /usr/share/mk which may be incompatible with
> sys/boot/ makefiles.  Adding the -m `pwd`/../../share/mk did not
> help either because now make(1) was attempting to run 4.0's install(1)
> which does not understand the new -b option (INSTALLFLAGS=-b in
> sys/boot/i386/loader/Makefile), in particular.  Another problem
> with 4.0 install(1) is that it removes source files by default,
> while new versions of install(1) (4.3-STABLE and onwards) copy it
> by default, so if you attempted to run it as is, it will wipe out
> some already built stuff from /usr/obj, making the next installworld
> attempt to fail.
> 
> To overcome this, I needed to use the installworld environment [with
> an up-to-date src/share/mk/ and install(1)] to install sys/boot/.
> Fortunately, we have the SUBDIR_OVERRIDE knob in Makefile.inc1 that
> was helpful here.
> 
> So, my next attempt was to run, from src/, the following command:
> 
> make installworld SUBDIR_OVERRIDE=sys/boot
> 
> This would upgrade /boot, and (as part of the upgrade) install
> /boot/defaults/loader.conf that is needed for installkernel to
> proceed (see above).  Unfortunately, this has failed to pass the
> `installcheck' anti-foot-shooting check from Makefile.inc1, which
> installworld depends on:
> 
> 1.  smmsp user was missing from /etc/passwd and /etc/group
> 2.  installed 4.0 kernel did not have the sigaction(2) syscall
> 
> I've attempted to overcome 1) as suggested by UPDATING, by running
> the ``mergemaster -p'' (from src/usr.sbin/mergemaster/).  This did
> not work well because mergemaster(8) attempted to use stat(1) which
> is not present in 4.0.  OK, it was trivial (in my case) to update
> /etc/master.passwd and /etc/group by hands and run ``pwd_mkdb -p
> /etc/master.passwd'' afterwards.
> 
> I couldn't overcome 2) for obvious reason -- I was in the middle
> of attempting to install a new kernel!  Isn't this itself a sort
> of foot-shooting?  :-)
> 
> The solution was to make the `installcheck' a no-op by:
> 
> make installworld SUBDIR_OVERRIDE=sys/boot \
> -DNO_SENDMAIL DISTDIR=
> 
> After this, ``make installkernel'' succeeded, but I noticed another
> glitch.  installkernel, as coded in Makefile.inc1, uses user's PATH
> and hence /usr/bin/install (4.0 version) that deletes source files
> by default.  So, if you attempt to installkernel for the second
> time, it will fail. 

[REPORT] Upgrade from 4.0-RELEASE to 5.0-CURRENT

2002-12-01 Thread Ruslan Ermilov
[
 current@ Cc:'ed because it'll be useful to a number of upgraders.
 dougb@ Cc:'ed to be aware of possible mergemaster(8) problems.
 imp@ Cc:'ed to be aware of incorrect UPDATING instruction.
 peter@ Cc:'ed to LOL about foot-shooting with anti-foot-shooting.
 re@ Cc:'ed to consider approving the attached patches.
]

Hi!

Following is the report from my attempt to upgrade 4.0-RELEASE
system to 5.0-CURRENT.  First, I'd like to say that I succedded
in it:

FreeBSD  4.0-RELEASE FreeBSD 4.0-RELEASE #0: Mon Mar 20 22:50:22 GMT 2000 
[EMAIL PROTECTED]:/usr/src/sys/compile/GENERIC  i386
FreeBSD  5.0-CURRENT FreeBSD 5.0-CURRENT #0: Sun Dec  1 13:52:37 GMT 2002 
ru@:/usr/obj/ru/mnt/usr/src/sys/GENERIC  i386

4.0-RELEASE system was installed on a spare disk by newfs'ing the
`a' partition and extracting the `bin' distribution on top of it
from the 4.0-RELEASE 1st CD, thanks again to Charlie Brewster
<[EMAIL PROTECTED]> for sending me one.

The /etc/make.conf's contents was a mere NOPROFILE=YES.

Buildworld was attempted under a non-root account.  The installed
make(1) did not pass the regression tests, and this required a patch
to src/Makefile (attach #1) to survive; the patch allows one to
build and use the new make(1) under non-root, without the need to
overwrite /usr/bin/make.  (This patch, with Warner's suggestion
incorporated, is currently considered by re@ for approval.)

Other than that, both buildworld and buildkernel of the GENERIC
kernel went just fine.

The next step was to install the new kernel and modules, as outlined
in UPDATING.

As a prerequisite step (following the instructions from UPDATING)
I've created the /boot/device.hints file, and attempted to
installkernel.  This failed with ``You must activate /boot/device.hints
in loader.conf.'' from kern.post.mk because 4.0 does not have
/boot/defaults/loader.conf.  (Rather than creating it by hands, I
took another approach, see below.)

As was documented in rev. 1.219 of UPDATING, after installing a
kernel (which I did not yet succeded in), it is highly recommended
to install new loader(8), and generally, upgrade /boot.

WARNING!  The relevant instruction from UPDATING,

cd src/sys/boot ; make install

will NOT work as is on most of old systems -- if run as is, make(1)
will use stuff from /usr/share/mk which may be incompatible with
sys/boot/ makefiles.  Adding the -m `pwd`/../../share/mk did not
help either because now make(1) was attempting to run 4.0's install(1)
which does not understand the new -b option (INSTALLFLAGS=-b in
sys/boot/i386/loader/Makefile), in particular.  Another problem
with 4.0 install(1) is that it removes source files by default,
while new versions of install(1) (4.3-STABLE and onwards) copy it
by default, so if you attempted to run it as is, it will wipe out
some already built stuff from /usr/obj, making the next installworld
attempt to fail.

To overcome this, I needed to use the installworld environment [with
an up-to-date src/share/mk/ and install(1)] to install sys/boot/.
Fortunately, we have the SUBDIR_OVERRIDE knob in Makefile.inc1 that
was helpful here.

So, my next attempt was to run, from src/, the following command:

make installworld SUBDIR_OVERRIDE=sys/boot

This would upgrade /boot, and (as part of the upgrade) install
/boot/defaults/loader.conf that is needed for installkernel to
proceed (see above).  Unfortunately, this has failed to pass the
`installcheck' anti-foot-shooting check from Makefile.inc1, which
installworld depends on:

1.  smmsp user was missing from /etc/passwd and /etc/group
2.  installed 4.0 kernel did not have the sigaction(2) syscall

I've attempted to overcome 1) as suggested by UPDATING, by running
the ``mergemaster -p'' (from src/usr.sbin/mergemaster/).  This did
not work well because mergemaster(8) attempted to use stat(1) which
is not present in 4.0.  OK, it was trivial (in my case) to update
/etc/master.passwd and /etc/group by hands and run ``pwd_mkdb -p
/etc/master.passwd'' afterwards.

I couldn't overcome 2) for obvious reason -- I was in the middle
of attempting to install a new kernel!  Isn't this itself a sort
of foot-shooting?  :-)

The solution was to make the `installcheck' a no-op by:

make installworld SUBDIR_OVERRIDE=sys/boot \
-DNO_SENDMAIL DISTDIR=

After this, ``make installkernel'' succeeded, but I noticed another
glitch.  installkernel, as coded in Makefile.inc1, uses user's PATH
and hence /usr/bin/install (4.0 version) that deletes source files
by default.  So, if you attempt to installkernel for the second
time, it will fail.  The tiny patch to fix this is in attach #2.

After rebooting with the new kernel in single user mode, ``make
installworld'' went fine and finally, I've merged the rest of etc/
and just proceeded into multi-user mode by pressing ^D.

Thanks for listening so far!  :-)

re@'s (or anyone else with re@'s permission), feel free to commit
these patches if you see any profit here, as I won't be able to
in the nex