Skip site navigation (1)Skip section navigation (2)
Date:      Tue, 11 May 2010 20:49:21 +0400
From:      pluknet <pluknet@gmail.com>
To:        freebsd general questions <freebsd-questions@freebsd.org>
Subject:   is it safe to crossbuild 6.4 i386 on 7.3 amd64 box?
Message-ID:  <AANLkTikDkyevgk0_RftzlOYmvnKAvQX33tse7hnrdPXJ@mail.gmail.com>

next in thread | raw e-mail | index | archive | help
Hi,

That's sort of "for the record".
I faced with issue where I wasn't able to boot a box w/ kernel built
with subj scheme.

On build box with 7.3-amd64 installed:
1. prepare world/kernel in an existing chrooted 6.4-S environment =>
doesn't work (see below)
2. prepare world/kernel just cd'ing to 6.4-S src & change
MAKEOBJDIRPREFIX => PROFIT!
Both built with equal config and source.

Next, what does not work in 1.
System stops after printing "point_to_point" in /etc/rc.d/initrandom:
               # XXX temporary until we can improve the entropy
                # harvesting rate.
                # Entropy below is not great, but better than nothing.
                # This unblocks the generator at startup
                ( ps -fauxww; sysctl -a; date; df -ib; dmesg; ps -fauxww ) \
                    | dd of=/dev/random bs=8k 2>/dev/null

Here sysctl -a queries dev.cpu.0.freq -> cpufreq_curr_sysctl@/kern/kern_cpu.c
and locks up. As I understand, CPU doesn't return from sched_switch().

<118> ethernet
<118> point_to_point
KDB: enter: Line break on console

db> ps
  pid  ppid  pgrp   uid   state   wmesg     wchan    cmd
   68    66    51     0  R+      CPU 255             sysctl
   66    64    51     0  S+      wait     0xc82e6648 sh
   65    59    51     0  S+      piperd   0xc853f4c8 dd
   64    59    51     0  S+      wait     0xc82e6218 sh
   59    51    51     0  S+      wait     0xc82e6a78 sh
   51     1    51     0  Ss+     wait     0xc852ec90 sh

db> bt 68
Tracing pid 68 tid 100076 td 0xc8551820
sched_switch(c8551820,0,1) at sched_switch+0x143
mi_switch(1,0,c8551980,0,c0adf560,...) at mi_switch+0x1ba
sched_bind(c8551820,0) at sched_bind+0x52
cpu_est_clockrate(0,eebeead4,c84f3400,3,c84f3400,...) at cpu_est_clockrate+0xc1
cf_levels_method(c8214900,c85da000,eebeeb48) at cf_levels_method+0x303
cf_get_method(c8214900,c85cb000) at cf_get_method+0x12b
cpufreq_curr_sysctl(c8218cc0,c81ea000,0,eebeec04,c8218cc0,...) at cpufreq_curr_s
sysctl_root(0,eebeec74,4,eebeec04) at sysctl_root+0x107
userland_sysctl(c8551820,eebeec74,4,0,bfbfdbdc,0,0,0,eebeec70,0) at userland_sys
__sysctl(c8551820,eebeed04) at __sysctl+0x93
syscall(3b,3b,3b,4,bfbfdbdc,...) at syscall+0x2bf
Xint0x80_syscall() at Xint0x80_syscall+0x1f
--- syscall (202, FreeBSD ELF32, __sysctl), eip = 0x2812650b, esp = 0xbfbfdb4c,

-- 
wbr,
pluknet



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