|
Description
|
This is found during snv_74 upgrade regression test on x86 when I try to verify a fix for upgrade.
This is the install that I did on a X2100 with sata disk:
OS: Solaris 10 update 4 FCS
Media: DVD net image
Cluster: SUNWCXall
Locales to install: All locales
After install, I setup one sparseroot zone and one wholeroot zone.
Then I upgrade to snv_74 as follow:
OS: snv_74
Media: DVD net image
Upgrade method: ttinstall
After upgrade, the system reboot fails due to the following error:
SunOS Release 5.11 Version snv_74 64-bit
Copyright 1983-2007 Sun Microsystems, Inc. All rights reserved.
Use is subject to license terms.
panic[cpu0]/thread=fffffffffbc25ce0: cannot mount root path /pci@0,0/pci-ide@7/ide@0/cmdk@0,0:a
fffffffffbc46d70 genunix:rootconf+112 ()
fffffffffbc46dc0 genunix:vfs_mountroot+65 ()
fffffffffbc46df0 genunix:main+ce ()
fffffffffbc46e00 unix:_locore_start+92 ()
skipping system dump - no dump device configured
rebooting...
I rebooted from net and mounted the root file system, I realized that the bootpath is not updated correctly as follow:
SunOS Release 5.11 Version snv_74 32-bit
Copyright 1983-2007 Sun Microsystems, Inc. All rights reserved.
Use is subject to license terms.
Configuring /dev
-
1. Solaris Interactive (default)
2. Custom JumpStart
3. Solaris Interactive Text (Desktop session)
4. Solaris Interactive Text (Console session)
5. Apply driver updates
6. Single user shell
Enter the number of your choice.
Selected: 6
Single user shell
Searching for installed OS instances...
Solaris Express Community Edition snv_74 X86 was found on /dev/dsk/c1t0d0s0.
Do you wish to have it mounted read-write on /a? [y,n,?] y
mounting /dev/dsk/c1t0d0s0 on /a
Starting shell.
#
# cd /a/boot/solaris/
# grep bootpath bootenv.rc
setprop bootpath '/pci@0,0/pci-ide@7/ide@0/cmdk@0,0:a'
# format
Searching for disks...done
AVAILABLE DISK SELECTIONS:
0. c1t0d0 <DEFAULT cyl 60797 alt 2 hd 255 sec 63>
/pci@0,0/pci108e,5348@7/disk@0,0
1. c1t1d0 <DEFAULT cyl 30391 alt 2 hd 255 sec 63>
/pci@0,0/pci108e,5348@7/disk@1,0
Specify disk (enter its number): ^D
#
Instead of:
setprop bootpath '/pci@0,0/pci-ide@7/ide@0/cmdk@0,0:a'
It should be updated to:
setprop bootpath '/pci@0,0/pci108e,5348@7/disk@0,0:a'
However, even if I change the bootpath, the system still cannot mount the file systems as follow:
SunOS Release 5.11 Version snv_74 64-bit
Copyright 1983-2007 Sun Microsystems, Inc. All rights reserved.
Use is subject to license terms.
Oct 3 10:39:30 svc.startd[7]: svc:/network/pfil:default: Method "/lib/svc/method/pfil start" failed with exit status 1.
Oct 3 10:39:30 svc.startd[7]: svc:/network/pfil:default: Method "/lib/svc/method/pfil start" failed with exit status 1.
Oct 3 10:39:30 svc.startd[7]: svc:/network/pfil:default: Method "/lib/svc/method/pfil start" failed with exit status 1.
Oct 3 10:39:30 svc.startd[7]: network/pfil:default failed: transitioned to maintenance (see 'svcs -xv' for details)
Hostname: line2-x2100
The / file system (/dev/rdsk/c1d0s0) is being checked.
WARNING - Unable to repair the / filesystem. Run fsck
manually (fsck -F ufs /dev/rdsk/c1d0s0).
Oct 3 10:39:32 svc.startd[7]: svc:/system/filesystem/usr:default: Method "/lib/svc/method/fs-usr" failed with exit status 95.
Oct 3 10:39:32 svc.startd[7]: system/filesystem/usr:default failed fatally: transitioned to maintenance (see 'svcs -xv' for details)
Requesting System Maintenance Mode
(See /lib/svc/share/README for more information.)
Console login service(s) cannot run
Root password for system maintenance (control-d to bypass):
single-user privilege assigned to /dev/console.
Entering System Maintenance Mode
Oct 3 10:39:44 su: 'su root' succeeded for root on /dev/console
Sun Microsystems Inc. SunOS 5.11 snv_74 October 2007
# fsck -F ufs /dev/rdsk/c1d0s0
fsck: could not stat /dev/rdsk/c1d0s0: No such file or directory
## cat /etc/vfstab
#device device mount FS fsck mount mount
#to mount to fsck point type pass at boot options
#
fd - /dev/fd fd - no -
/proc - /proc proc - no -
/dev/dsk/c1d0s1 - - swap - no -
/dev/dsk/c1d0s0 /dev/rdsk/c1d0s0 / ufs 1 no -
/dev/dsk/c1d0s7 /dev/rdsk/c1d0s7 /export/home ufs 2 yes -
/devices - /devices devfs - no -
ctfs - /system/contract ctfs - no -
objfs - /system/object objfs - no -
swap - /tmp tmpfs - yes -
sharefs - /etc/dfs/sharetab sharefs - no -
#
The SUNWnvsata postinstall script is not working properly in the case of upgrade in the miniroot as follow:
ROOT=/a
SYSTEM=/a/etc/system
BOOTENVRC=/a/boot/solaris/bootenv.rc
PATH_TO_INST=/a/etc/path_to_inst
POWER_CONF=/a/etc/power.conf
BAK=bak
TMP=/tmp
NV_SATA=nv_sata
NVSATA_TMP=/tmp/nv_sata
SYSTEM_BAK=/tmp/nv_sata/system.bak
BOOTENVRC_BAK=/tmp/nv_sata/bootenv.rc.bak
POWER_CONF_BAK=/tmp/nv_sata/power.conf.bak
UPGRADE_LOG=/a/var/sadm/system/logs/upgrade_log
LIVEUPGRADE_TMP_LOG=/tmp/.luupgrade.pfinstall.log.*
DEVMAP_TABLE=/tmp/devmap_table
DRIVER_ALIASES="pci10de,37f" "pci10de,55" "pci10de,54"
ETC_DEV_DIR=/a/etc/dev
ENUMERATE_RESERVED=/a/etc/dev/reserved_devnames
DEVLINK_DB=/a/etc/dev/.devlink_db
CP=/usr/bin/cp
MV=/usr/bin/mv
LN=/usr/bin/ln
LS=/usr/bin/ls
GREP=/usr/bin/grep
SED=/usr/bin/sed
CUT=/usr/bin/cut
CAT=/usr/bin/cat
NAWK=/usr/bin/nawk
RM=/usr/bin/rm
MKDIR=/usr/bin/mkdir
MOUNT=/usr/sbin/mount
MODINFO=/usr/sbin/modinfo
PRTCONF=/etc/prtconf
PRTCONF_OUT=/tmp/nv_sata/prtconf_vp.out
DEV_PROPS=/tmp/nv_sata/dev_props.out
+ check_add_drv -b /a -i "pci10de,37f" "pci10de,55" "pci10de,54" -m * 0644 root
sys nv_sata
+ [ /a = ]
alias=
class=
ADD_ALIAS=0
ADD_CLASS=0
ADD_MINOR=0
OPTIND=1
IS_NET_DRIVER=0
cmd=add_drv
NO_CMD=
+ getopts i:b:m:c:N opt
BASEDIR=/a
cmd=add_drv -b /a
+ getopts i:b:m:c:N opt
ADD_ALIAS=1
alias="pci10de,37f" "pci10de,55" "pci10de,54"
cmd=add_drv -b /a -i '"pci10de,37f" "pci10de,55" "pci10de,54"'
+ getopts i:b:m:c:N opt
ADD_MINOR=1
minor=* 0644 root sys
cmd=add_drv -b /a -i '"pci10de,37f" "pci10de,55" "pci10de,54"' -m '* 0644 root s
ys'
+ getopts i:b:m:c:N opt
+ /usr/bin/expr 7 - 1
+ shift 6
drvname=nv_sata
cmd=add_drv -b /a -i '"pci10de,37f" "pci10de,55" "pci10de,54"' -m '* 0644 root s
ys' nv_sata
+ /usr/bin/sed s;.*/;;g
+ echo nv_sata
drvname=nv_sata
+ /usr/bin/grep ^nv_sata[ ] /a/etc/name_to_major
+ [ = -a 1 -ne 0 ]
+ eval add_drv -b /a -i '"pci10de,37f" "pci10de,55" "pci10de,54"' -m '* 0644 roo
t sys' nv_sata
+ add_drv -b /a -i "pci10de,37f" "pci10de,55" "pci10de,54" -m * 0644 root sys nv
_sata
Reboot client to install driver.
+ [ ! -d /tmp/nv_sata ]
+ /usr/bin/mkdir /tmp/nv_sata
+ [ 0 -ne 0 ]
+ /usr/bin/grep /
+ /usr/sbin/mount
line=/ on /devices/ramdisk:a read/write/setuid/devices/intr/largefiles/logging/x
attr/onerror=panic/dev=1180001 on Tue Oct 2 09:00:34 2007
+ /usr/bin/nawk {print $1}
+ echo / on /devices/ramdisk:a read/write/setuid/devices/intr/largefiles/logging
/xattr/onerror=panic/dev=1180001 on Tue Oct 2 09:00:34 2007
first_field=/
+ /usr/bin/nawk {print $3}
+ echo / on /devices/ramdisk:a read/write/setuid/devices/intr/largefiles/logging
/xattr/onerror=panic/dev=1180001 on Tue Oct 2 09:00:34 2007
third_field=/devices/ramdisk:a
+ [ / = / -a /devices/ramdisk:a = /ramdisk:a ]
+ [ -f /tmp/.luupgrade.pfinstall.log.* ]
+ /usr/bin/rm -rf /tmp/nv_sata
+ exit 0
Installation of <SUNWnvsata> was successful.
|