Skip site navigation (1)Skip section navigation (2)
Date:      Fri, 26 Feb 2010 15:26:00 +0000
From:      Paul Wootton <paul@fletchermoorland.co.uk>
To:        Alexey Shuvaev <shuvaev@physik.uni-wuerzburg.de>
Cc:        current@freebsd.org
Subject:   Re: Can not boot after r203503. Unable to open /dev/ada(1/2)p3 for writing
Message-ID:  <4B87E808.2000803@fletchermoorland.co.uk>
In-Reply-To: <20100226151340.GB93856@wep4035.physik.uni-wuerzburg.de>
References:  <4B87DEEA.5070808@fletchermoorland.co.uk> <20100226151340.GB93856@wep4035.physik.uni-wuerzburg.de>

next in thread | previous in thread | raw e-mail | index | archive | help
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



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