Can not boot after r203503. Unable to open /dev/ada(1/2)p3 for
writing
Paul Wootton
paul at fletchermoorland.co.uk
Fri Feb 26 15:28:51 UTC 2010
Alexey Shuvaev wrote:
> On Fri, Feb 26, 2010 at 02:47:06PM +0000, Paul Wootton wrote:
>
>> Hi,
>>
>> I have an unusual problem. Last night I tried updating from my
>> old-ish kernel/world to an up to date version. I had been using
>> 202500-ish successfully. I can build and install the newer world and
>> kernel fine, but when I reboot I get the following
>>
>> Trying to mount root from zfs:raid250/root
>> ZFS WARNING: Unable to open /dev/ada1p3 for writing (error=1). ZFS
>> WARNING: Unable to open /dev/ada2p3 for writing (error=1). ROOT
>> MOUNT ERROR.
>> If you have invalid mount options, reboot, and first try the
>> following from the loader prompt:
>> set vfs.root.mountfrom.options=rw
>> and then remove the invalid options from /etc/fstab
>> loader variables:
>> vfs.root.mountfrom=zfs:raid250/root
>> vfs.root.mountfrom.options=rw
>>
>>
>> Im using 2 drives in a ZFS mirror configuration (ada1 and ada2
>> making raid250)
>>
>> I tried going back over the older revisions, and the last kernel
>> that I can build and boot is 203503. It seems the changes in 203504
>> are what cause me the problems.
>>
>> Now for the weird bit, I took a friends kernel (204324) and that
>> boots fine. I pulled his kernel configuration and built against that
>> (I had decided to remake my kernel configuration just before I tried
>> updating). Still I get the same error. I have checked my
>> /etc/make.conf and that looks right.
>>
>> I attached my /etc/fstab and /etc/make.conf. Im using an Intel
>> Q8300 running amd64.
>>
>> Anyone have any ideas? This is my work computer, so unfortunately I
>> wont have access to it over the weekend but will be able to give
>> more information if required on monday
>>
>> Cheers
>>
>> Paul
>>
>>
>
>
>> # Device Mountpoint FStype Options Dump Pass#
>> raid250/root / zfs rw 0 0
>> raid250/usr /usr zfs rw 0 0
>> raid250/var /var zfs rw 0 0
>> raid250/tmp /tmp zfs rw,noatime 0 0
>> /dev/ada1p2 none swap sw 0 0
>> /dev/ada2p2 none swap sw 0 0
>> linproc /usr/compat/linux/proc linprocfs rw 0 0
>>
>
>
>> CPUTYPE?=core2
>>
>> CFLAGS= -msse3 -mmmx -O2 -fno-strict-aliasing -pipe -s
>>
> ^^^^^^^^^^^^^^^
> Are you sure you are allowed to use these flags to compile the kernel?
> I would try removing this line completely.
>
>
>> CXXFLAGS+= -fconserve-space
>>
>> #CFLAGS= -march=native -O2 -fno-strict-aliasing -pipe -s
>> #CXXFLAGS+= -fconserve-space -fpermissive -Wl,-rpath-link,/usr/local/lib/gcc44
>> #CC=gcc44
>> #CXX=g++44
>> #NO_CPU_CFLAGS= # Don't add -march=<cpu> to CFLAGS automatically
>> #NO_CPU_COPTFLAGS= # Don't add -march=<cpu> to COPTFLAGS automatically
>>
>>
>> KERNCONF=DEMOPHON
>>
>> MAKE_IDEA=YES
>> BATCH=YES
>> WITH_JADETEX=YES
>>
>> LOADER_ZFS_SUPPORT="YES"
>> # added by use.perl 2009-07-20 19:58:21
>> PERL_VERSION=5.8.9
>>
These options dont appear to be passed in when building a kernel. In
fact -mno-sse3 and -mno-mmx are passed in to make sure that these
options dont not get feed through. Here is a piece from a kernel build
with these options still in my make.conf
cc -c -O2 -frename-registers -pipe -fno-strict-aliasing -march=nocona
-std=c99 -Wall -Wredundant-decls -Wnested-externs -Wstrict-prototypes
-Wmissing-prototypes -Wpointer-arith -Winline -Wcast-qual -Wundef
-Wno-pointer-sign -fformat-extensions -nostdinc -I. -I/usr/src/sys
-I/usr/src/sys/contrib/altq -D_KERNEL -DHAVE_KERNEL_OPTION_HEADERS
-include opt_global.h -fno-common -finline-limit=8000 --param
inline-unit-growth=100 --param large-function-growth=1000
-fno-omit-frame-pointer -mcmodel=kernel -mno-red-zone -mfpmath=387
-mno-sse -mno-sse2 -mno-sse3 -mno-mmx -mno-3dnow -msoft-float
-fno-asynchronous-unwind-tables -ffreestanding -fstack-protector
-Werror /usr/src/sys/dev/pccbb/pccbb_isa.c
However, the world will include these options is there are in the make.conf
Paul
More information about the freebsd-current
mailing list