Error Message (VIO):

$ lsmap -all -npiv

Name Physloc ClntID ClntName ClntOS
————- ———————————- —— ————– ——-
vfchost3 U8406.70Y.10821AN-V1-C412 2

Status:NOT_LOGGED_IN
FC name: FC loc code:
Ports logged in:0
Flags:1<NOT_MAPPED,NOT_CONNECTED>
VFC client name: VFC client DRC:

$

 

Solution :

On VIO:
Status: NOT_LOGGED_IN, Flags:1<NOT_MAPPED,NOT_CONNECTED>
-> The vfchost adapter is not mapped to a physical adapter

 

$ vfcmap -vadapter vfchost3 -fcp fcs3

 

$ lsmap -all -npiv

Name Physloc ClntID ClntName ClntOS
————- ———————————- —— ————– ——-
vfchost3 U8406.70Y.10821AN-V1-C412 2 testlpar AIX

Status:LOGGED_IN
FC name:fcs3 FC loc code:U78A5.001.WIHE25B-P1-C11-T2
Ports logged in:1
Flags:a<LOGGED_IN,STRIP_MERGE>
VFC client name:fcs3 VFC client DRC:U8406.70Y.10821AN-V2-C9

 

LPAR:

testlpar:/root # lspath | awk ‘{print $1,$NF}’ |sort |uniq -c
10 Enabled fscsi0
10 Enabled fscsi1
10 Enabled fscsi2
testlpar:/root #

testlpar:/root # cfgmgr

testlpar:/root # lspath | awk ‘{print $1,$NF}’ |sort |uniq -c
10 Enabled fscsi0
10 Enabled fscsi1
10 Enabled fscsi2
10 Enabled fscsi3
testlpar:/root #

 

scenario 1:

On LPAR:

 

lspath | awk '{print $1,$NF}' |sort |uniq -c

 

testlpar:/root # lspath | awk ‘{print $1,$NF}’ |sort |uniq -c
10 Enabled fscsi0
10 Enabled fscsi1
10 Enabled fscsi2
10 Missing fscsi3
testlpar:/root #

 

testlpar:/root # lspv
hdisk0 000746cb61604023 rootvg active
hdisk1 000746cb61c96941 None
hdisk2 000746cb61848de2 sysvg active
hdisk3 000746eb61bbb4ea caavg_private active
hdisk4 000746cb61a61f21 vg00 concurrent
testlpar:/root #

 

testlpar:/root # lspath -l hdisk2
Enabled hdisk2 fscsi0
Enabled hdisk2 fscsi0
Enabled hdisk2 fscsi2
Enabled hdisk2 fscsi2
Enabled hdisk2 fscsi1
Enabled hdisk2 fscsi1
Missing hdisk2 fscsi3
Missing hdisk2 fscsi3
testlpar:/root #

 

I used below script and removed the missing path

Script to create a file with commands to remove the missing paths
—————————————————————–

 

#!/bin/sh
# rmpaths
&gt;xrmpaths
echo "#!/bin/sh" &gt;&gt;xrmpaths
disks=$(lspv | awk '{print $1}')
for loop in $disks
do
lspath -l $loop -H -F "name:parent:connection:status" |grep Missing| awk -F: '{print "rmpath -dl",$1,"-p", $2, "-w", $3}'&gt;&gt;xrmpaths
done

 

Server Output
————-
testlpar:/root # cat >rmpath.sh
#!/bin/sh
# rmpaths
>xrmpaths
echo “#!/bin/sh” >>xrmpaths
disks=$(lspv | awk ‘{print $1}’)
for loop in $disks
do
lspath -l $loop -H -F “name:parent:connection:status” |grep Missing| awk -F: ‘{print “rmpath -dl”,$1,”-p”, $2, “-w”, $3}’>>xrmpaths
done
testlpar:/root #

testlpar:/root # sh rmpath.sh

testlpar:/root # cat xrmpaths
#!/bin/sh
rmpath -dl hdisk0 -p fscsi3 -w 50050768023099dc,0
rmpath -dl hdisk0 -p fscsi3 -w 50050768023099dd,0
rmpath -dl hdisk1 -p fscsi3 -w 50050768023099dc,1000000000000
rmpath -dl hdisk1 -p fscsi3 -w 50050768023099dd,1000000000000
rmpath -dl hdisk2 -p fscsi3 -w 50050768023099dc,2000000000000
rmpath -dl hdisk2 -p fscsi3 -w 50050768023099dd,2000000000000
rmpath -dl hdisk3 -p fscsi3 -w 50050768023099dc,3000000000000
rmpath -dl hdisk3 -p fscsi3 -w 50050768023099dd,3000000000000
rmpath -dl hdisk4 -p fscsi3 -w 50050768023099dc,4000000000000
rmpath -dl hdisk4 -p fscsi3 -w 50050768023099dd,4000000000000
testlpar:/root #

testlpar:/root # sh xrmpaths
path Deleted
path Deleted
path Deleted
path Deleted
path Deleted
path Deleted
path Deleted
path Deleted
path Deleted
path Deleted
testlpar:/root #

 

Ran cfgmgr -v and found fscsi3 not showing in lspath

testlpar:/root # lspath | awk ‘{print $1,$NF}’ |sort |uniq -c
10 Enabled fscsi0
10 Enabled fscsi1
10 Enabled fscsi2
10 Missing fscsi3
testlpar:/root #

 

for i in `lsdev -Cc adapter |grep -i fcs |awk '{print $1}'`
do
fc=`lscfg -vpl $i |grep Network |cut -c37- | sed 's/../&amp;:/g;s/:$//'`
fcloc=`lscfg -vpl $i |grep fcs |awk '{print $2}'`
pipe=`echo "|"`
echo $i $pipe $fc $pipe $fcloc
done

 

Server Output
————-
testlpar:/root # for i in `lsdev -Cc adapter |grep -i fcs |awk ‘{print $1}’`
> do
> fc=`lscfg -vpl $i |grep Network |cut -c37- | sed ‘s/../&:/g;s/:$//’`
> fcloc=`lscfg -vpl $i |grep fcs |awk ‘{print $2}’`
> pipe=`echo “|”`
> echo $i $pipe $fc $pipe $fcloc
> done
fcs0 | C0:50:76:05:DD:00:00:05 | U8406.70Y.10821AN-V2-C6-T1
fcs1 | C0:50:76:05:DD:00:00:07 | U8406.70Y.10821AN-V2-C7-T1
fcs2 | C0:50:76:05:DD:00:00:04 | U8406.70Y.10821AN-V2-C8-T1
fcs3 | C0:50:76:05:DD:00:00:03 | U8406.70Y.10821AN-V2-C9-T1
testlpar:/root #