From sa@alpha.svzserv.kemerovo.su  Tue Oct  1 08:29:45 2002
Return-Path: <sa@alpha.svzserv.kemerovo.su>
Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125])
	by hub.freebsd.org (Postfix) with ESMTP id 7D44537B401
	for <FreeBSD-gnats-submit@freebsd.org>; Tue,  1 Oct 2002 08:29:45 -0700 (PDT)
Received: from alpha.svzserv.kemerovo.su (alpha.svzserv.kemerovo.su [213.184.65.85])
	by mx1.FreeBSD.org (Postfix) with ESMTP id 421EE43E42
	for <FreeBSD-gnats-submit@freebsd.org>; Tue,  1 Oct 2002 08:29:43 -0700 (PDT)
	(envelope-from sa@alpha.svzserv.kemerovo.su)
Received: from alpha.svzserv.kemerovo.su (localhost [127.0.0.1])
	by alpha.svzserv.kemerovo.su (8.12.5/8.12.5) with ESMTP id g91FTSYk046586
	for <FreeBSD-gnats-submit@freebsd.org>; Tue, 1 Oct 2002 23:29:28 +0800 (NKZS)
	(envelope-from sa@alpha.svzserv.kemerovo.su)
Received: (from root@localhost)
	by alpha.svzserv.kemerovo.su (8.12.5/8.12.5/Submit) id g91FTRTT046585;
	Tue, 1 Oct 2002 23:29:27 +0800 (NKZS)
Message-Id: <200210011529.g91FTRTT046585@alpha.svzserv.kemerovo.su>
Date: Tue, 1 Oct 2002 23:29:27 +0800 (NKZS)
From: Eugene Grosbein <eugen@grosbein.pp.ru>
To: FreeBSD-gnats-submit@freebsd.org
Cc:
Subject: kern_shutdown.c uses time_t as 'long int' that's not true for alpha
X-Send-Pr-Version: 3.113
X-GNATS-Notify:

>Number:         43561
>Category:       alpha
>Synopsis:       kern_shutdown.c uses time_t as 'long int' that's not true for alpha
>Confidential:   no
>Severity:       non-critical
>Priority:       low
>Responsible:    jhb
>State:          closed
>Quarter:        
>Keywords:       
>Date-Required:  
>Class:          change-request
>Submitter-Id:   current-users
>Arrival-Date:   Tue Oct 01 08:30:04 PDT 2002
>Closed-Date:    Thu Dec 11 13:34:27 PST 2003
>Last-Modified:  Thu Dec 11 13:34:27 PST 2003
>Originator:     Eugene Grosbein
>Release:        FreeBSD 4.6-STABLE alpha
>Organization:
Svyaz Service JSC
>Environment:
System: FreeBSD alpha.svzserv.kemerovo.su 4.6-STABLE FreeBSD 4.6-STABLE #0: Tue Aug 20 11:41:08 NKZS 2002 sa@alpha.svzserv.kemerovo.su:/mnt/.2/obj/usr/src/sys/ALPHA alpha

>Description:
	print_uptime() in src/sys/kern/kern_shutdown.c uses %ld format
	string to print time_t, that's correct for i386 where
	time_t is long and incorrect for alpha where time_t is int.

>How-To-Repeat:
	Build kernel for alpha, watch warnings for kern_shutdown.c

>Fix:

	Apply next patch to src/sys/kern/kern_shutdown.c

--- kern_shutdown.c.orig	Tue Oct  1 22:50:38 2002
+++ kern_shutdown.c	Tue Oct  1 23:22:21 2002
@@ -172,6 +172,14 @@
 static int	waittime = -1;
 static struct pcb dumppcb;
 
+#ifndef TIME_T_FORMAT
+#ifdef __alpha__
+#define TIME_T_FORMAT "%d"
+#else
+#define TIME_T_FORMAT "%ld"
+#endif
+#endif
+
 static void
 print_uptime()
 {
@@ -182,21 +190,21 @@
 	printf("Uptime: ");
 	f = 0;
 	if (ts.tv_sec >= 86400) {
-		printf("%ldd", ts.tv_sec / 86400);
+		printf(TIME_T_FORMAT "d", ts.tv_sec / 86400);
 		ts.tv_sec %= 86400;
 		f = 1;
 	}
 	if (f || ts.tv_sec >= 3600) {
-		printf("%ldh", ts.tv_sec / 3600);
+		printf(TIME_T_FORMAT "h", ts.tv_sec / 3600);
 		ts.tv_sec %= 3600;
 		f = 1;
 	}
 	if (f || ts.tv_sec >= 60) {
-		printf("%ldm", ts.tv_sec / 60);
+		printf(TIME_T_FORMAT "m", ts.tv_sec / 60);
 		ts.tv_sec %= 60;
 		f = 1;
 	}
-	printf("%lds\n", ts.tv_sec);
+	printf(TIME_T_FORMAT "s\n", ts.tv_sec);
 }
 
 /*


Eugene Grosbein
>Release-Note:
>Audit-Trail:
Responsible-Changed-From-To: freebsd-alpha->jhb 
Responsible-Changed-By: mike 
Responsible-Changed-When: Tue Oct 1 16:42:55 PDT 2002 
Responsible-Changed-Why:  
jhb fixed this problem in rev 1.82.  Let's see if he wants to MFC it. 

http://www.freebsd.org/cgi/query-pr.cgi?pr=43561 
State-Changed-From-To: open->closed 
State-Changed-By: jhb 
State-Changed-When: Thu Dec 11 13:34:08 PST 2003 
State-Changed-Why:  
Fix from rev 1.82 merged to 4.x. 

http://www.freebsd.org/cgi/query-pr.cgi?pr=43561 
>Unformatted:
