NetBSD Problem Report #55545

From www@netbsd.org  Thu Aug  6 14:27:04 2020
Return-Path: <www@netbsd.org>
Received: from mail.netbsd.org (mail.netbsd.org [199.233.217.200])
	(using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits))
	(Client CN "mail.NetBSD.org", Issuer "mail.NetBSD.org CA" (not verified))
	by mollari.NetBSD.org (Postfix) with ESMTPS id 203681A923A
	for <gnats-bugs@gnats.NetBSD.org>; Thu,  6 Aug 2020 14:27:04 +0000 (UTC)
Message-Id: <20200806142703.498B31A923B@mollari.NetBSD.org>
Date: Thu,  6 Aug 2020 14:27:03 +0000 (UTC)
From: michael@telkp.bme.hu
Reply-To: michael@telkp.bme.hu
To: gnats-bugs@NetBSD.org
Subject: /usr/src/build.sh script only known alpha/alpha, but my machnine is EV56
X-Send-Pr-Version: www-1.0

>Number:         55545
>Category:       port-alpha
>Synopsis:       /usr/src/build.sh script only known alpha/alpha, but my machnine is EV56
>Confidential:   no
>Severity:       non-critical
>Priority:       medium
>Responsible:    thorpej
>State:          closed
>Class:          support
>Submitter-Id:   net
>Arrival-Date:   Thu Aug 06 14:30:00 +0000 2020
>Closed-Date:    Tue Oct 13 02:01:08 +0000 2020
>Last-Modified:  Tue Oct 13 02:20:01 +0000 2020
>Originator:     Fazekas Mihaly
>Release:        NetBSD-9
>Organization:
Technical University of budapest, Telephone Center
>Environment:
NetBSD alpha.telkp.bme.hu 9.0 NetBSD 9.0 (GENERIC-$Revision: 1.394 $) #5: Fri Jul  3 11:07:21 CEST 2020  michael@alpha:/usr/src/sys/arch/alpha/compile/CUSTOM_1 alpha
>Description:
Hello,

My name is Mihaly Fazekas.
sorry, my english is not good.

I have an AlphaServer 4100 (cpu: 4x 21164A-2, mem: 8G, ...)
build.sh only understand alpha/alpha (-m alpha -a alpha).

The "./build.sh list-arch|grep alpha" output (only one line):
MACHINE=alpha           MACHINE_ARCH=alpha


How can i compile src for ev56 cpu?


Ok, in last weeks i'm played with COPTS/CFLAGS/CPUFLAGS/..., variables with many-many
option-combination, but i thin this is not
a good (stable for long time) idea.
(my latest opt combo: -mbwx -mcpu=ev56 -mmemory-latency=L2)

-- 
mailto:michael@telkp.bme.hu
>How-To-Repeat:

>Fix:

>Release-Note:

>Audit-Trail:
From: David Holland <dholland-bugs@netbsd.org>
To: gnats-bugs@netbsd.org
Cc: 
Subject: Re: port-alpha/55545: /usr/src/build.sh script only known
 alpha/alpha, but my machnine is EV56
Date: Sat, 8 Aug 2020 23:13:44 +0000

 On Thu, Aug 06, 2020 at 02:30:01PM +0000, michael@telkp.bme.hu wrote:
  > I have an AlphaServer 4100 (cpu: 4x 21164A-2, mem: 8G, ...)
  > build.sh only understand alpha/alpha (-m alpha -a alpha).
  > 
  > The "./build.sh list-arch|grep alpha" output (only one line):
  > MACHINE=alpha           MACHINE_ARCH=alpha
  > 
  > How can i compile src for ev56 cpu?

 Is it not an alpha? Does the -m alpha -a alpha build not work?

  > sorry, my english is not good.

 It is fine :-)

 -- 
 David A. Holland
 dholland@netbsd.org

From: Jason Thorpe <thorpej@me.com>
To: gnats-bugs@netbsd.org
Cc: port-alpha-maintainer@netbsd.org,
 gnats-admin@netbsd.org,
 netbsd-bugs@netbsd.org,
 michael@telkp.bme.hu
Subject: Re: port-alpha/55545: /usr/src/build.sh script only known
 alpha/alpha, but my machnine is EV56
Date: Sat, 8 Aug 2020 21:01:06 -0700

 > On Aug 8, 2020, at 4:15 PM, David Holland <dholland-bugs@netbsd.org> =
 wrote:
 >=20
 >> How can i compile src for ev56 cpu?
 >=20
 > Is it not an alpha? Does the -m alpha -a alpha build not work?

 I think what's being suggested is that it would be nice to say "I want =
 code optimized for this specific Alpha".  In general, we do not provide =
 that w/ build.sh, but it could be done with mk.conf variables to set =
 COPTS accordingly.

 -- thorpej

From: matthew green <mrg@eterna.com.au>
To: Jason Thorpe <thorpej@me.com>
Cc: port-alpha-maintainer@netbsd.org, gnats-admin@netbsd.org,
    netbsd-bugs@netbsd.org, michael@telkp.bme.hu, gnats-bugs@netbsd.org
Subject: re: port-alpha/55545: /usr/src/build.sh script only known alpha/alpha, but my machnine is EV56
Date: Sun, 09 Aug 2020 19:30:03 +1000

 Jason Thorpe writes:
 > 
 > > On Aug 8, 2020, at 4:15 PM, David Holland <dholland-bugs@netbsd.org> 
 > wrote:
 > >
 > >> How can i compile src for ev56 cpu?
 > >
 > > Is it not an alpha? Does the -m alpha -a alpha build not work?
 > 
 > I think what's being suggested is that it would be nice to say "I want 
 > code optimized for this specific Alpha".  In general, we do not provide 
 > that w/ build.sh, but it could be done with mk.conf variables to set 
 > COPTS accordingly.

 i think CPUFLAGS is the thing we want for _end users_ to compile
 with their specific cpus flags.

 netbsd build only sets CPUFLAGS when it's building a cpu specific
 thing for code expecting that (eg, "-marm" for a bunch of the
 arm boot programs.)

 you should be able to set CPUFLAGS in mk.conf _or_ build.sh -V.


 .mrg.

From: Fazekas =?ISO-8859-1?Q?Mih=E1ly?= <michael@telkp.bme.hu>
To: port-alpha-maintainer@netbsd.org, netbsd-bugs@netbsd.org, 
	gnats-bugs@netbsd.org
Cc: 
Subject: Re: port-alpha/55545: /usr/src/build.sh script only known
 alpha/alpha, but my machnine is EV56
Date: Tue, 11 Aug 2020 13:08:29 +0200

 On Aug 8, 2020, at 4:15 PM, David Holland <dholland-bugs@netbsd.org
 > > > wrote:
 > > 
 > > > How can i compile src for ev56 cpu?
 > > 
 > > Is it not an alpha? Does the -m alpha -a alpha build not work?
 > 
 > I think what's being suggested is that it would be nice to say "I
 > want code optimized for this specific Alpha".  In general, we do not
 > provide that w/ build.sh, but it could be done with mk.conf variables
 > to set COPTS accordingly.
 > 
 Yes. :-)

 "My history" (started at middle of 2020 may):
 GENERIC: use 1 CPU, see 4 CPU, offical install set:
 no hangup

 GENERIC.MP with 1 CPU (only cpu0 slot is used):
 no problem

 GENERIC.MP use more than one CPU, offical install set:
 terrible/road to hell/....
 (some situation parallel running commands, guaratee hangup
 whitin 2-5 minute,
 example: fetch src by cvs, and etract pkgsrc for tarball)


 With my custom (MP) kernel config(s):
 Remove some unwanted line from GENERIC.MP: better than generic config

 Remove ALL unwanted line (bluetooth, usb, EISA cards,
 kernelized raid, many pseudo devices,...),
 and set CPUFLAGS="-mbwx -mcpu=ev56": more better,
 and detectable faster. Ok, speeup less than 2..3x,
 but speed diff. "human detectable", and no too much hangup,
 if use only one session: compress/decompress/fetch_by_cvs/compile
 (compile: make without -j option),...: can compile entrie system
 without hangup....
 My latest custom kernel config:
 http://www.telkp.bme.hu/as4k1/AS4K1_V1


 Less hangup count if add 2 line at end of my custom kernel config:
 no options SCHED_4BSD
 options SCHED_M2

 At now: first readable (captureable) message arrived
 after more than 2 month (frozen at this screen):
 http://www.telkp.bme.hu/as4k1/20200810_120031.jpg


 My (current) hardware in alphaserver box:
 AlphaServer 4100, 4x CPU (21164A-2, 600MHz), 8G ram, S3 Trio,
 3x Mylex D960, 1x QLogic 1020 scsi, 1x 3Com 905B ethernet,
 1x SMC 9342TX.
 (ex0: internal net address, sshd listen on this,
 epic0: external address only for outgoing connections)


 Other things:
 Hangap can reproduce with any combination of my CPU modules,
 and my memory modules.
 Hangup can reproduce under 2 CPU,
 with only one QLogic 1020 scsi controller.


 Ineresting:
 Install OpenVMS, and Tru64Unix to sd0 and sd1
 (names under SRM console: dka100 and dka300).
 With full hardware (4x CPU, 8G ram) under Tru64Unix:
 cannot reproduce hangup!

 With SRM console builtin tests: no problem!


 "My tests" wich can hangup under NetBSD,
 and cannot hangup under Tru64Unix (with 4x CPU):

 Test1: copy raw device to image. Image placed on remote.
 (dd if=/dev/sd0 of=/remote_dir/imgae.img)
 "Same result" when copy big file via scp (ssh copy).

 Test2: dd if=/dev/sd0 count=...|gzip -c9 >/dev/null
 On GENERIC.MP: hangup (8-9 of 10 test)
 On my (latest) custom kernel: no hangup if no
 other session is running
 On True64Unix (logically same command): no hangup (0 of 10).


 All of my pci cards (used in my alphaserver) tested
 in PC (IBM eServer from 2001 (x200 series?)).


 I'm idiot?   Possible..... :-)

 -- 
 mailto:michael@telkp.bme.hu
 phone:+36-1-463-1966

From: Jason Thorpe <thorpej@me.com>
To: michael@telkp.bme.hu
Cc: port-alpha-maintainer@netbsd.org,
 netbsd-bugs@netbsd.org,
 gnats-bugs@netbsd.org
Subject: Re: port-alpha/55545: /usr/src/build.sh script only known
 alpha/alpha, but my machnine is EV56
Date: Tue, 11 Aug 2020 06:39:33 -0700

 > On Aug 11, 2020, at 4:08 AM, Fazekas Mih=C3=A1ly =
 <michael@telkp.bme.hu> wrote:
 >=20
 > "My history" (started at middle of 2020 may):
 > GENERIC: use 1 CPU, see 4 CPU, offical install set:
 > no hangup
 >=20
 > GENERIC.MP with 1 CPU (only cpu0 slot is used):
 > no problem
 >=20
 > GENERIC.MP use more than one CPU, offical install set:
 > terrible/road to hell/....
 > (some situation parallel running commands, guaratee hangup
 > whitin 2-5 minute,
 > example: fetch src by cvs, and etract pkgsrc for tarball)

 So, this has nothing to do with the flags used to build the system.  =
 This is just a bug that we should try and sort out.  I would like to =
 help with this.  Is it possible to enter DDB when the system gets stuck?

 > With my custom (MP) kernel config(s):
 > Remove some unwanted line from GENERIC.MP: better than generic config
 >=20
 > Remove ALL unwanted line (bluetooth, usb, EISA cards,
 > kernelized raid, many pseudo devices,...),
 > and set CPUFLAGS=3D"-mbwx -mcpu=3Dev56": more better,
 > and detectable faster. Ok, speeup less than 2..3x,
 > but speed diff. "human detectable", and no too much hangup,
 > if use only one session: compress/decompress/fetch_by_cvs/compile
 > (compile: make without -j option),...: can compile entrie system
 > without hangup....
 > My latest custom kernel config:
 > http://www.telkp.bme.hu/as4k1/AS4K1_V1
 >=20
 >=20
 > Less hangup count if add 2 line at end of my custom kernel config:
 > no options SCHED_4BSD
 > options SCHED_M2
 >=20
 > At now: first readable (captureable) message arrived
 > after more than 2 month (frozen at this screen):
 > http://www.telkp.bme.hu/as4k1/20200810_120031.jpg

 It would probably be worth building a kernel with LOCKDEBUG and running =
 that -- there's obviously some sort of locking problem going on.

 Would you be running to run with test patches to see if we can get to =
 the bottom of the hangup and make some improvements to the Alpha MP =
 support code?  I know there are several things that can be improved (and =
 where there may be bugs lurking), but I no long have any Alpha hardware =
 I can test on.

 > My (current) hardware in alphaserver box:
 > AlphaServer 4100, 4x CPU (21164A-2, 600MHz), 8G ram, S3 Trio,
 > 3x Mylex D960, 1x QLogic 1020 scsi, 1x 3Com 905B ethernet,
 > 1x SMC 9342TX.
 > (ex0: internal net address, sshd listen on this,
 > epic0: external address only for outgoing connections)

 That's a very nice machine.  I had an AlphaServer 4100 some years ago, =
 but not spec'd quite that nice!

 -- thorpej

Responsible-Changed-From-To: port-alpha-maintainer->thorpej
Responsible-Changed-By: thorpej@NetBSD.org
Responsible-Changed-When: Sat, 29 Aug 2020 22:33:43 +0000
Responsible-Changed-Why:
Take.


State-Changed-From-To: open->closed
State-Changed-By: thorpej@NetBSD.org
State-Changed-When: Tue, 13 Oct 2020 02:01:08 +0000
State-Changed-Why:
This can be achieved by specifying "-V CPUFLAGS=-mcpu=ev56" to build.sh.


From: "Jason R Thorpe" <thorpej@netbsd.org>
To: gnats-bugs@gnats.NetBSD.org
Cc: 
Subject: PR/55545 CVS commit: src
Date: Tue, 13 Oct 2020 01:59:33 +0000

 Module Name:	src
 Committed By:	thorpej
 Date:		Tue Oct 13 01:59:32 UTC 2020

 Modified Files:
 	src: BUILDING
 	src/doc: BUILDING.mdoc

 Log Message:
 Document CPUFLAGS here (it's already documented in share/mk/bsd.README).
 This will address the initial concern in PR port-alpha/55545.


 To generate a diff of this commit:
 cvs rdiff -u -r1.137 -r1.138 src/BUILDING
 cvs rdiff -u -r1.130 -r1.131 src/doc/BUILDING.mdoc

 Please note that diffs are not public domain; they are subject to the
 copyright notices on the relevant files.

>Unformatted:

NetBSD Home
NetBSD PR Database Search

(Contact us) $NetBSD: query-full-pr,v 1.46 2020/01/03 16:35:01 leot Exp $
$NetBSD: gnats_config.sh,v 1.9 2014/08/02 14:16:04 spz Exp $
Copyright © 1994-2020 The NetBSD Foundation, Inc. ALL RIGHTS RESERVED.