NetBSD Problem Report #42479

From tsutsui@ceres.dti.ne.jp  Sat Dec 19 16:56:26 2009
Return-Path: <tsutsui@ceres.dti.ne.jp>
Received: from mail.netbsd.org (mail.netbsd.org [204.152.190.11])
	by www.NetBSD.org (Postfix) with ESMTP id 2F00063C4EB
	for <gnats-bugs@gnats.NetBSD.org>; Sat, 19 Dec 2009 16:56:26 +0000 (UTC)
Message-Id: <200912191656.nBJGuMjN006325@mirage.ceres.dti.ne.jp>
Date: Sun, 20 Dec 2009 01:56:22 +0900 (JST)
From: tsutsui@ceres.dti.ne.jp
Reply-To: tsutsui@ceres.dti.ne.jp
To: gnats-bugs@gnats.NetBSD.org
Cc: tsutsui@ceres.dti.ne.jp
Subject: netbsd-5-0 tools config(1) generates bad config_file.h on i386 5.99.22
X-Send-Pr-Version: 3.95

>Number:         42479
>Category:       toolchain
>Synopsis:       netbsd-5-0 tools config(1) generates bad config_file.h on i386 5.99.22
>Confidential:   no
>Severity:       critical
>Priority:       medium
>Responsible:    toolchain-manager
>State:          closed
>Class:          sw-bug
>Submitter-Id:   net
>Arrival-Date:   Sat Dec 19 17:00:01 +0000 2009
>Closed-Date:    Fri Jan 29 11:22:00 +0000 2010
>Last-Modified:  Fri Jan 29 11:22:00 +0000 2010
>Originator:     Izumi Tsutsui
>Release:        NetBSD 5.99.22, updated around 20091213
>Organization:
>Environment:
System: NetBSD mirage 5.99.22: Sun Dec 13 19:02:02 JST 2009
Architecture: i386
Machine: i386
>Description:
When I tried to build netbsd-5-0's NetBSD/arc ISO image by
"build.sh -m arc -U -u release iso-image" command on
NetBSD/i386 5.99.22 host, it failed during compiling GENERIC kernel:

---
 :
#   compile  GENERIC/param.o
/r/work/netbsd-5-0/src/obj.arc/tooldir.NetBSD-5.99.22-i386/bin/mipsel--netbsd-gcc \
-G 0 -mno-abicalls -msoft-float -ffixed-23 -ffreestanding \
-fno-zero-initialized-in-bss -O2 -std=gnu99 -fno-strict-aliasing \
-Werror -Wall -Wno-main -Wno-format-zero-length -Wpointer-arith \
-Wmissing-prototypes -Wstrict-prototypes -Wswitch -Wshadow -Wcast-qual \
-Wwrite-strings -Wno-unreachable-code -Wno-sign-compare -Wno-pointer-sign \
-Wno-attributes -Werror -march=mips3 -mabi=32 -Darc -I. \
-I../../../../../common/include -I../../../../arch -I../../../.. \
-nostdinc -DMIPS3 -DMIPS3_ENABLE_CLOCK_INTR -DLKM -DMAXUSERS=32 -D_KERNEL \
-D_KERNEL_OPT -I../../../../lib/libkern/../../../common/lib/libc/quad \
-I../../../../lib/libkern/../../../common/lib/libc/string \
-I../../../../lib/libkern/../../../common/lib/libc/arch/mips/string \
-I../../../../dist/ipf -c param.c
In file included from param.c:77:
config_file.h:30: error: expected ',' or ';' before '_CFG_'
config_file.h:30: error: stray '\' in program
config_file.h:30: error: missing terminating " character
config_file.h:35: error: stray '##' in program
config_file.h:35: error: stray '#' in program
config_file.h:35: error: stray '##' in program
config_file.h:35: error: stray '#' in program
config_file.h:35: error: stray '##' in program

 :

*** Failed target:  param.o

 :

Stop.
nbmake: stopped in /r/work/netbsd-5-0/src/sys/arch/arc/compile/GENERIC
---

config_file.h generated by ${TOOLDIR}/bin/nbconfig seems corrupted:
---
#include <sys/cdefs.h>

#include "opt_config.h"

/*
 * Add either (or both) of
 *
 *	options INCLUDE_CONFIG_FILE
 *	options INCLUDE_JUST_CONFIG
 *
 * to your kernel config file to embed it in the resulting
 * kernel.  The latter option does not include files that are
 * included (recursively) by your config file.  The embedded
 * data be extracted by using the command:
 *
 *	strings netbsd | sed -n 's/^_CFG_//p' | unvis
 */

#ifdef CONFIG_FILE
#if defined(INCLUDE_CONFIG_FILE) || defined(INCLUDE_JUST_CONFIG)

static const char config[] __used =

#ifdef INCLUDE_CONFIG_FILE

"_CFG_### START CONFIG FILE \"GENERIC\"\n"

#endif /* INCLUDE_CONFIG_FILE */

"_CFG_"_CFG_"_CFG_"_CFG_"_CFG_"_CFG_"_CFG_"_CFG_" [...too long...] _CFG_\n"
#ifdef INCLUDE_CONFIG_FILE

"_CFG_### END CONFIG FILE \"GENERIC\"\n"
"_CFG_### (included from \"arch/arc/conf/std.arc\")\n"
"_CFG_###> "_CFG_###> "_CFG_###> "_CFG_###> "_CFG_###> [....] "_CFG_###> \n"
"_CFG_### (end include \"arch/arc/conf/std.arc\")\n"
"_CFG_### (included from \"conf/std\")\n"
"_CFG_###> "_CFG_###> "_CFG_###> "_CFG_###> "_CFG_###> [...] "_CFG_###> \n"
"_CFG_### (end include \"conf/std\")\n"
#endif /* INCLUDE_CONFIG_FILE */
;
#endif /* INCLUDE_CONFIG_FILE || INCLUDE_JUST_CONFIG */
#endif /* CONFIG_FILE */
---

and nbconfig actually complains as following:
---
% /work/netbsd-5-0/src/obj.arc/tooldir.NetBSD-5.99.22-i386/bin/nbconfig GENERIC
nbconfig: GENERIC: newline missing at EOF
nbconfig: arch/arc/conf/std.arc: newline missing at EOF
nbconfig: conf/std: newline missing at EOF
Build directory is ../compile/GENERIC
Don't forget to run "make depend"
% 
---

These warnings are come from src/usr.bin/config/main.c:logconfig_include()
---
void
logconfig_include(FILE *cf, const char *filename)
{
	char line[1024], in[2048], *out;
	struct stat st;
	int missingeol;

	if (!cfg)
		return;

	missingeol = 0;
	if (fstat(fileno(cf), &st) == -1)
		return;
	if (cfgtime < st.st_mtime)
		cfgtime = st.st_mtime;

	if (filename)
		(void)fprintf(cfg,
		    "\"_CFG_### (included from \\\"%s\\\")\\n\"\n",
		    filename);
	while (fgets(line, sizeof(line), cf) != NULL) {
		missingeol = 1;
		(void)fprintf(cfg, "\"_CFG_");
		if (filename)
			(void)fprintf(cfg, "###> ");
--->		strvis(in, line, VIS_TAB);
		for (out = in; *out; out++)
			switch (*out) {
			case '\n':
				(void)fprintf(cfg, "\\n\"\n");
				missingeol = 0;
				break;
			case '"': case '\\':
				(void)fputc('\\', cfg);
				/* FALLTHROUGH */
			default:
				(void)fputc(*out, cfg);
				break;
			}
	}
	if (missingeol) {
		(void)fprintf(cfg, "\\n\"\n");
		warnx("%s: newline missing at EOF",
		    filename != NULL ? filename : conffile);
	}
	if (filename)
		(void)fprintf(cfg, "\"_CFG_### (end include \\\"%s\\\")\\n\"\n",
		    filename);

	rewind(cf);
}
---

"strvis(in, line, VIS_TAB);" seems to return NUL into "in" pointer.

- netbsd-5-0 nbconfig built on 5.99.15 didn't have problem.
- Using strvis(3) in libc (not in libnbcompat, by -lc) fixes the problem.
- Compiling vis.c with -O0 in src/tools/compat also fixes the problem.
- Pulling src/lib/libc/gen/vis.c rev 1.39 (and 1.40) also fixes the problem.

Looks like compiler's bug, but triggered by new binutils?

>How-To-Repeat:
- get netbsd-5-0 source tree on NetBSD/i386 5.99.22 host
- build.sh -m arc release
- then will get the above errors.

>Fix:
Probably we should track and fix gcc or binutils bugs,
but for now easist workaround is to partially pull vis.c changes
(replacing conditionals with a function pointer, but excluding
 MIMESTYLE support) in rev 1.39 and 1.40, which also avoid this bug?

Index: lib/libc/gen/vis.c
===================================================================
RCS file: /cvsroot/src/lib/libc/gen/vis.c,v
retrieving revision 1.38
diff -u -r1.38 vis.c
--- lib/libc/gen/vis.c	4 Sep 2008 09:41:44 -0000	1.38
+++ lib/libc/gen/vis.c	19 Dec 2009 16:47:11 -0000
@@ -91,6 +91,7 @@
 #define iswhite(c)	(c == ' ' || c == '\t' || c == '\n')
 #define issafe(c)	(c == '\b' || c == BELL || c == '\r')
 #define xtoa(c)		"0123456789abcdef"[c]
+#define XTOA(c)		"0123456789ABCDEF"[c]

 #define MAXEXTRAS	5

@@ -211,6 +212,18 @@
 	return dst;
 }

+typedef char *(*visfun_t)(char *, int, int, int, const char *);
+
+/*
+ * Return the appropriate encoding function depending on the flags given.
+ */
+static visfun_t
+getvisfun(int flag)
+{
+	if (flag & VIS_HTTPSTYLE)
+		return do_hvis;
+	return do_svis;
+}

 /*
  * svis - visually encode characters, also encoding the characters
@@ -220,6 +233,7 @@
 svis(char *dst, int c, int flag, int nextc, const char *extra)
 {
 	char *nextra = NULL;
+	visfun_t f;

 	_DIAGASSERT(dst != NULL);
 	_DIAGASSERT(extra != NULL);
@@ -228,10 +242,8 @@
 		*dst = '\0';		/* can't create nextra, return "" */
 		return dst;
 	}
-	if (flag & VIS_HTTPSTYLE)
-		dst = do_hvis(dst, c, flag, nextc, nextra);
-	else
-		dst = do_svis(dst, c, flag, nextc, nextra);
+	f = getvisfun(flag);
+	dst = (*f)(dst, c, flag, nextc, nextra);
 	free(nextra);
 	*dst = '\0';
 	return dst;
@@ -260,6 +272,7 @@
 	char *start;
 	char *nextra = NULL;
 	const unsigned char *src = (const unsigned char *)csrc;
+	visfun_t f;

 	_DIAGASSERT(dst != NULL);
 	_DIAGASSERT(src != NULL);
@@ -269,16 +282,12 @@
 		*dst = '\0';		/* can't create nextra, return "" */
 		return 0;
 	}
-	if (flag & VIS_HTTPSTYLE) {
-		for (start = dst; (c = *src++) != '\0'; /* empty */)
-			dst = do_hvis(dst, c, flag, *src, nextra);
-	} else {
-		for (start = dst; (c = *src++) != '\0'; /* empty */)
-			dst = do_svis(dst, c, flag, *src, nextra);
-	}
+	f = getvisfun(flag);
+	for (start = dst; (c = *src++) != '\0'; /* empty */)
+		dst = (*f)(dst, c, flag, *src, nextra);
 	free(nextra);
 	*dst = '\0';
-	return (dst - start);
+	return (int)(dst - start);
 }


@@ -289,6 +298,7 @@
 	char *start;
 	char *nextra = NULL;
 	const unsigned char *src = (const unsigned char *)csrc;
+	visfun_t f;

 	_DIAGASSERT(dst != NULL);
 	_DIAGASSERT(src != NULL);
@@ -299,22 +309,14 @@
 		return 0;
 	}

-	if (flag & VIS_HTTPSTYLE) {
-		for (start = dst; len > 0; len--) {
-			c = *src++;
-			dst = do_hvis(dst, c, flag,
-			    len > 1 ? *src : '\0', nextra);
-		}
-	} else {
-		for (start = dst; len > 0; len--) {
-			c = *src++;
-			dst = do_svis(dst, c, flag,
-			    len > 1 ? *src : '\0', nextra);
-		}
+	f = getvisfun(flag);
+	for (start = dst; len > 0; len--) {
+		c = *src++;
+		dst = (*f)(dst, c, flag, len > 1 ? *src : '\0', nextra);
 	}
 	free(nextra);
 	*dst = '\0';
-	return (dst - start);
+	return (int)(dst - start);
 }
 #endif

@@ -327,6 +329,7 @@
 {
 	char *extra = NULL;
 	unsigned char uc = (unsigned char)c;
+	visfun_t f;

 	_DIAGASSERT(dst != NULL);

@@ -335,10 +338,8 @@
 		*dst = '\0';		/* can't create extra, return "" */
 		return dst;
 	}
-	if (flag & VIS_HTTPSTYLE)
-		dst = do_hvis(dst, uc, flag, nextc, extra);
-	else
-		dst = do_svis(dst, uc, flag, nextc, extra);
+	f = getvisfun(flag);
+	dst = (*f)(dst, uc, flag, nextc, extra);
 	free(extra);
 	*dst = '\0';
 	return dst;

---
Izumi Tsutsui

>Release-Note:

>Audit-Trail:
From: enami tsugutomo <tsugutomo.enami@jp.sony.com>
To: tsutsui@ceres.dti.ne.jp, gnats-bugs@NetBSD.org
Cc: toolchain-manager@NetBSD.org, gnats-admin@NetBSD.org,
        netbsd-bugs@NetBSD.org
Subject: Re: toolchain/42479: netbsd-5-0 tools config(1) generates bad config_file.h on i386 5.99.22
Date: 21 Dec 2009 19:57:31 +0900

 <tsutsui@ceres.dti.ne.jp> writes:

 > >Number:         42479
 > >Category:       toolchain
 > >Synopsis:       netbsd-5-0 tools config(1) generates bad config_file.h on i386 5.99.22

 I've found that this is reproducable even on NetBSD/amd64.

     enami@quasiquote% uname -rm
     5.99.22 amd64
     enami@quasiquote% cc -O -c -o /tmp/vis.o -Isrc/netbsd-5/src/lib/libc/include src/netbsd-5/src/lib/libc/gen/vis.c
     enami@quasiquote% cat /tmp/main.c
     #include <errno.h>
     #include <stdio.h>
     #include <string.h>
     #include <vis.h>

     main(){
 	    char b[256];
 	    int n = strvis(b, "abc", 0);

 	    printf("%d, %s\n", n, strerror(errno));
     }
     enami@quasiquote% cc -o /tmp/bug /tmp/vis.o /tmp/main.c
     enami@quasiquote% /tmp/bug
     0, Cannot allocate memory
     enami@quasiquote% 

 It looks like linker tries to compat the rodata.  The strvis is
 compiled like this:

     enami@quasiquote% cc -O -S -o /tmp/vis.s -Isrc/netbsd-5/src/lib/libc/include src/netbsd-5/src/lib/libc/gen/vis.c
     enami@quasiquote% grep -A30 'strvis:' /tmp/vis.s
     _strvis:
     .LFB23:
 	    pushq   %r13
     .LCFI34:
 	    pushq   %r12
     .LCFI35:
 	    pushq   %rbp
     .LCFI36:
 	    pushq   %rbx
     .LCFI37:
 	    subq    $8, %rsp
     .LCFI38:
 	    movq    %rdi, %r12
 	    movq    %rsi, %r13
 	    movl    %edx, %ebx
 	    movl    $.LC2, %edx
     .L163:
 	    movzbl  (%rdx), %eax
 	    addq    $1, %rdx
 	    testb   %al, %al
 	    jne     .L163
 	    movq    %rdx, %rdi
 	    subq    $.LC2-5, %rdi
 	    call    malloc
 	    testq   %rax, %rax
 	    je      .L165
 	    movq    %rax, %rbp
 	    movq    %rax, %rdx
 	    movl    $.LC2, %ecx
     .L167:

 and the line `movl $.LC2, %edx' and `subq $.LC2-5, %rdi' are assembled
 as follows:

     enami@quasiquote% as /tmp/vis.s -o /tmp/vis.o
     enami@quasiquote% objdump -D /tmp/vis.o | grep -A20 'strvis>:'
     00000000000006ad <_strvis>:
      6ad:   41 55                   push   %r13
      6af:   41 54                   push   %r12
      6b1:   55                      push   %rbp
      6b2:   53                      push   %rbx
      6b3:   48 83 ec 08             sub    $0x8,%rsp
      6b7:   49 89 fc                mov    %rdi,%r12
      6ba:   49 89 f5                mov    %rsi,%r13
      6bd:   89 d3                   mov    %edx,%ebx
      6bf:   ba 00 00 00 00          mov    $0x0,%edx
      6c4:   0f b6 02                movzbl (%rdx),%eax
      6c7:   48 83 c2 01             add    $0x1,%rdx
      6cb:   84 c0                   test   %al,%al
      6cd:   75 f5                   jne    6c4 <_strvis+0x17>
      6cf:   48 89 d7                mov    %rdx,%rdi
      6d2:   48 81 ef 00 00 00 00    sub    $0x0,%rdi
      6d9:   e8 00 00 00 00          callq  6de <_strvis+0x31>
      6de:   48 85 c0                test   %rax,%rax
      6e1:   74 6f                   je     752 <_strvis+0xa5>
      6e3:   48 89 c5                mov    %rax,%rbp
      6e6:   48 89 c2                mov    %rax,%rdx
     enami@quasiquote% objdump -r /tmp/vis.o | egrep '6c0|6d5'
     00000000000006c0 R_X86_64_32       .rodata.str1.1+0x000000000000001d
     00000000000006d5 R_X86_64_32S      .rodata.str1.1+0x0000000000000018
     enami@quasiquote% objdump -j .rodata.str1.1 -s /tmp/vis.o

     /tmp/vis.o:     file format elf64-x86-64

     Contents of section .rodata.str1.1:
      0000 242d5f2e 2b212a27 28292c00 30313233  $-_.+!*'(),.0123
      0010 34353637 38396162 63646566 0000      456789abcdef..  
     enami@quasiquote% 

 Note that `.rodata.str1.1+0x000000000000001d' points the last `00' and
 `.rodata.str1.1+0x0000000000000018' points the `63'.

 But after the object is linked, the references to $.LC2 is moved to
 point another empty string while $.LC2-5 left unchanged:

     enami@quasiquote% cc -o /tmp/bug /tmp/vis.o /tmp/main.cenami@quasiquote% objdump -D /tmp/bug | grep -A20 'strvis>:'
     000000000040122d <_strvis>:
       40122d:       41 55                   push   %r13
       40122f:       41 54                   push   %r12
       401231:       55                      push   %rbp
       401232:       53                      push   %rbx
       401233:       48 83 ec 08             sub    $0x8,%rsp
       401237:       49 89 fc                mov    %rdi,%r12
       40123a:       49 89 f5                mov    %rsi,%r13
       40123d:       89 d3                   mov    %edx,%ebx
       40123f:       ba d3 15 40 00          mov    $0x4015d3,%edx
       401244:       0f b6 02                movzbl (%rdx),%eax
       401247:       48 83 c2 01             add    $0x1,%rdx
       40124b:       84 c0                   test   %al,%al
       40124d:       75 f5                   jne    401244 <_strvis+0x17>
       40124f:       48 89 d7                mov    %rdx,%rdi
       401252:       48 81 ef e0 15 40 00    sub    $0x4015e0,%rdi
       401259:       e8 86 f6 ff ff          callq  4008e4 <malloc@plt>
       40125e:       48 85 c0                test   %rax,%rax
       401261:       74 6f                   je     4012d2 <_strvis+0xa5>
       401263:       48 89 c5                mov    %rax,%rbp
       401266:       48 89 c2                mov    %rax,%rdx
     enami@quasiquote% objdump -j .rodata -s /tmp/bug

     /tmp/bug:     file format elf64-x86-64

     Contents of section .rodata:
      401470 436f7272 75707420 4f626a5f 456e7472  Corrupt Obj_Entr
      401480 7920706f 696e7465 7220696e 20474f54  y pointer in GOT
      401490 0a000000 00000000 44796e61 6d696320  ........Dynamic 
      4014a0 6c696e6b 65722076 65727369 6f6e206d  linker version m
      4014b0 69736d61 7463680a 00000000 00000000  ismatch.........
      4014c0 970c4000 00000000 c00c4000 00000000  ..@.......@.....
      4014d0 c00c4000 00000000 c00c4000 00000000  ..@.......@.....
      4014e0 c00c4000 00000000 c00c4000 00000000  ..@.......@.....
      4014f0 c00c4000 00000000 420c4000 00000000  ..@.....B.@.....
      401500 310c4000 00000000 640c4000 00000000  1.@.....d.@.....
      401510 0f0c4000 00000000 530c4000 00000000  ..@.....S.@.....
      401520 750c4000 00000000 200c4000 00000000  u.@..... .@.....
      401530 c00c4000 00000000 c00c4000 00000000  ..@.......@.....
      401540 c00c4000 00000000 c00c4000 00000000  ..@.......@.....
      401550 c00c4000 00000000 c00c4000 00000000  ..@.......@.....
      401560 c00c4000 00000000 c00c4000 00000000  ..@.......@.....
      401570 c00c4000 00000000 c00c4000 00000000  ..@.......@.....
      401580 c00c4000 00000000 c00c4000 00000000  ..@.......@.....
      401590 c00c4000 00000000 c00c4000 00000000  ..@.......@.....
      4015a0 c00c4000 00000000 c00c4000 00000000  ..@.......@.....
      4015b0 c00c4000 00000000 c00c4000 00000000  ..@.......@.....
      4015c0 860c4000 00000000 242d5f2e 2b212a27  ..@.....$-_.+!*'
      4015d0 28292c00 30313233 34353637 38396162  (),.0123456789ab
      4015e0 63646566 00616263 0025642c 2025730a  cdef.abc.%d, %s.
      4015f0 00                                   .               
     enami@quasiquote% 

 Now, $0x4015d3 points `00' which is terminating byte of sting
 "$-_.+!*'()," while $0x4015e0 still points same `63'.

 So, $.LC2 - ($.LC2 - 5) becomes negative number and for malloc() it is
 considered as very large number and it fails.

 enami.

From: enami tsugutomo <tsugutomo.enami@jp.sony.com>
To: tsutsui@ceres.dti.ne.jp, gnats-bugs@NetBSD.org
Cc: toolchain-manager@NetBSD.org, gnats-admin@NetBSD.org,
        netbsd-bugs@NetBSD.org, skrll@NetBSD.org, matt@NetBSD.org
Subject: Re: toolchain/42479: netbsd-5-0 tools config(1) generates bad 
	config_file.h on i386 5.99.22
Date: Sun, 27 Dec 2009 20:16:35 +0900 (JST)

 > >Number:         42479
 > >Category:       toolchain
 > >Synopsis:       netbsd-5-0 tools config(1) generates bad config_file.h on i386 5.99.22

 	:

 > >Description:
 > When I tried to build netbsd-5-0's NetBSD/arc ISO image by
 > "build.sh -m arc -U -u release iso-image" command on
 > NetBSD/i386 5.99.22 host, it failed during compiling GENERIC kernel:

 Backing out rev. 1.2 of external/gpl3/binutils/dist/gas/write.c fixes
 the problem.

 I suspect the original fix since the log messsage seems to say that it
 restict the case when reloc is adjusted but actually more reloc is
 adjusted than before (actually, the strvis case mentioned in the
 original pr is the case now reloc is adjuested and causes the problem).

 enami.

From: Izumi Tsutsui <tsutsui@ceres.dti.ne.jp>
To: tsugutomo.enami@jp.sony.com
Cc: gnats-bugs@NetBSD.org, toolchain-manager@NetBSD.org,
        gnats-admin@NetBSD.org, netbsd-bugs@NetBSD.org, skrll@NetBSD.org,
        matt@NetBSD.org, tsutsui@ceres.dti.ne.jp
Subject: Re: toolchain/42479: netbsd-5-0 tools config(1) generates bad config_file.h
	 on i386 5.99.22
Date: Sun, 27 Dec 2009 22:36:31 +0900

 > > >Description:
 > > When I tried to build netbsd-5-0's NetBSD/arc ISO image by
 > > "build.sh -m arc -U -u release iso-image" command on
 > > NetBSD/i386 5.99.22 host, it failed during compiling GENERIC kernel:
 > 
 > Backing out rev. 1.2 of external/gpl3/binutils/dist/gas/write.c fixes
 > the problem.

 Hmm, should we backout this change for now?
 IMO config(1) is one of the most important tools for our build system.

 ---
 Izumi Tsutsui

From: David Holland <dholland-bugs@netbsd.org>
To: gnats-bugs@NetBSD.org
Cc: tsutsui@ceres.dti.ne.jp
Subject: Re: toolchain/42479: netbsd-5-0 tools config(1) generates bad
	config_file.h on i386 5.99.22
Date: Sat, 2 Jan 2010 00:53:41 +0000

 On Sun, Dec 27, 2009 at 01:40:03PM +0000, Izumi Tsutsui wrote:
  > > > When I tried to build netbsd-5-0's NetBSD/arc ISO image by
  > > > "build.sh -m arc -U -u release iso-image" command on
  > > > NetBSD/i386 5.99.22 host, it failed during compiling GENERIC kernel:
  > > 
  > > Backing out rev. 1.2 of external/gpl3/binutils/dist/gas/write.c fixes
  > > the problem.
  >  
  >  Hmm, should we backout this change for now?
  >  IMO config(1) is one of the most important tools for our build system.

 Something else was done about this, right? Does it work now? (Can the
 PR be closed?)

 -- 
 David A. Holland
 dholland@netbsd.org

From: Izumi Tsutsui <tsutsui@ceres.dti.ne.jp>
To: dholland-bugs@NetBSD.org
Cc: gnats-bugs@NetBSD.org, tsutsui@ceres.dti.ne.jp
Subject: Re: toolchain/42479: netbsd-5-0 tools config(1) generates badconfig_file.h
	 on i386 5.99.22
Date: Sat, 2 Jan 2010 10:13:38 +0900

 >  > > > When I tried to build netbsd-5-0's NetBSD/arc ISO image by
 >  > > > "build.sh -m arc -U -u release iso-image" command on
 >  > > > NetBSD/i386 5.99.22 host, it failed during compiling GENERIC kernel:
 >  > > 
 >  > > Backing out rev. 1.2 of external/gpl3/binutils/dist/gas/write.c fixes
 >  > > the problem.
 >  >  
 >  >  Hmm, should we backout this change for now?
 >  >  IMO config(1) is one of the most important tools for our build system.
 > 
 > Something else was done about this, right? Does it work now? (Can the
 > PR be closed?)

 config(1) problem was workarounded, but actual problem in toolchain
 is still under discussion, so PR should not be closed, IMO.
 http://mail-index.NetBSD.org/tech-toolchain/2010/01/01/msg000967.html

 Comments?
 ---
 Izumi Tsutsui

From: David Holland <dholland-bugs@netbsd.org>
To: gnats-bugs@NetBSD.org
Cc: 
Subject: Re: toolchain/42479: netbsd-5-0 tools config(1) generates
	badconfig_file.h on i386 5.99.22
Date: Sat, 2 Jan 2010 01:34:56 +0000

 On Sat, Jan 02, 2010 at 01:15:03AM +0000, Izumi Tsutsui wrote:
  >  config(1) problem was workarounded, but actual problem in toolchain
  >  is still under discussion, so PR should not be closed, IMO.
  >  http://mail-index.NetBSD.org/tech-toolchain/2010/01/01/msg000967.html

 ah, I didn't read it carefully enough on the first pass; it looked
 like it was resolved.

 -- 
 David A. Holland
 dholland@netbsd.org

State-Changed-From-To: open->closed
State-Changed-By: tsutsui@NetBSD.org
State-Changed-When: Fri, 29 Jan 2010 20:22:00 +0900
State-Changed-Why:
A change that causes this has been revered.


>Unformatted:

NetBSD Home
NetBSD PR Database Search

(Contact us) $NetBSD: query-full-pr,v 1.39 2013/11/01 18:47:49 spz Exp $
$NetBSD: gnats_config.sh,v 1.8 2006/05/07 09:23:38 tsutsui Exp $
Copyright © 1994-2007 The NetBSD Foundation, Inc. ALL RIGHTS RESERVED.