Skip site navigation (1)Skip section navigation (2)
Date:      Thu, 6 Jun 2002 12:13:20 -0700
From:      Marcel Moolenaar <marcel@xcllnt.net>
To:        "K.Sumitani" <ksumitani@mui.biglobe.ne.jp>
Cc:        ia64@FreeBSD.ORG
Subject:   Re: ia64 kernel does not boot SKI ?
Message-ID:  <20020606191320.GA2738@dhcp01.pn.xcllnt.net>
In-Reply-To: <20020606212522.VANVC0A8274D.C79F0C8A@mail.biglobe.ne.jp>
References:  <20020605212856.GA47618@dhcp01.pn.xcllnt.net> <20020606212522.VANVC0A8274D.C79F0C8A@mail.biglobe.ne.jp>

next in thread | previous in thread | raw e-mail | index | archive | help
On Thu, Jun 06, 2002 at 09:25:06PM +0900, K.Sumitani wrote:
> 
> If filesystem exists, clock(RTC or TOD) is read in mountroot-
> path as:
>     vfs_mountroot() -> inittodr -> ski_fake_efi_get_time()

Hmm... That one. We were bitten by this before...

> ski_fake_efi_get_time() calles ssc() and it executes break
> instruction to get RTC from ski. When execute break, some 
> address range on ski's data window become 'xxxx' and after
> then, the value of such address is read as ZERO. This ZERO
> cause unaligned access in binuptime() later.

The problem is a bug in the Linux port of ski. If you look
closely at PSR.dt before and after the SSC call you'll see
that PSR.dt gets destroyed.

> I looked into Linux kernel source and found that Linux does 
> not use SSC_GET_RTC. It use SSC_GET_TOD instead.

The bug appears to be specific to SSC_GET_RTC. I'll apply your
patch,

> So, I modified ski_fake_efi_get_time() to use SSC_GET_TOD 
> as Linux and get another panic at start_init.
> Below is console message and stack-trace.

This one is known too. Disable WITNESS for now.

> BTW, ia64 cross(?) buildworld is broken after May 31.

Apply the following patch (possibly whitespace corruption):

\begin{patch}
--- /usr/src/gnu/lib/libstdc++/Makefile	Sun Jun  2 20:22:24 2002
+++ Makefile	Tue Jun  4 15:04:58 2002
@@ -16,6 +16,7 @@
  
 CFLAGS+=	-DIN_GLIBCPP_V3 -DHAVE_CONFIG_H
 CFLAGS+=	-I${.CURDIR} -I${SUPDIR} -I${GCCDIR}
+CFLAGS+=	-I${GCCDIR}/config/${MACHINE_ARCH}
 CXXFLAGS+=	-fno-implicit-templates -ffunction-sections -fdata-sections -Wno-deprecated
 #LDFLAGS+=	-Wl,-version-info,4:0:0 -Wl,--version-script=${SRCDIR}/src/linker.map
  
\end{patch}

-- 
 Marcel Moolenaar	  USPA: A-39004		 marcel@xcllnt.net

To Unsubscribe: send mail to majordomo@FreeBSD.org
with "unsubscribe freebsd-ia64" in the body of the message




Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20020606191320.GA2738>