[Info-vax] Error using fibre channel target on FreeBSD from OpenVMS
Matthew R. Wilson
mwilson at mattwilson.org
Sun Apr 24 02:18:04 EDT 2022
This could be a long shot, but I'm hoping to experiment with OpenVMS
clustering using a shared system disk over fibre channel.
My two VMS systems are Integrity rx1600s. I'm trying to use a system
running FreeBSD as the target. After much experimentation and
troubleshooting, I've gotten pretty far, but the volumes are still stuck
"offline" in OpenVMS.
I just got the latest hobbyist kit from VSI and installed a fresh copy
of OpenVMS IA64 V8.4-2L3 on the server's internal hard drive.
In the two rx1600 servers, I'm using fibre channel HBAs with the QLogic
QLA2342 chip. From the EFI shell I've installed the latest EFI driver
and RISC firmware I could find:
<https://support.hpe.com/connect/s/softwaredetails?language=en_US&softwa
reId=ux_36358_2>
The card appears to be working properly from OpenVMS:
$ show dev /full fga0
Device FGA0:, device type QLogic ISP23xx FibreChannel, is online, shareable,
error logging is enabled.
Error count 0 Operations completed 12
Owner process "" Owner UIC [SYSTEM]
Owner process ID 00000000 Dev Prot S:RWPL,O:RWPL,G,W
Reference count 0 Default buffer size 0
Current preferred CPU Id 1 Fastpath 1
Current Interrupt CPU Id 1
FC Port Name 2100-00E0-8B09-B261 FC Node Name 2100-00E0-8B09-B261
I've been able to set up the target LUNs in FreeBSD with the "device-id"
option, which seems to satisfy OpenVMS's need for the UDID value; e.g.
if I set the device-id to 0x00000001, the device shows up as $1$DGA1 in
VMS, if I set it so 0x00000002, it shows up as $1$DGA2, etc.
The two LUNs appears as follows:
$ show dev dga
Device Device Error Volume Free Trans Mnt
Name Status Count Label Blocks Count Cnt
$1$DGA1: (IVMS1) Offline 1
$1$DGA2: (IVMS1) Offline 1
Or one of them in more detail:
$ show dev /full dga1
Disk $1$DGA1: (IVMS1), device type unknown, is offline, file-oriented device,
shareable, available to cluster, error logging is enabled.
Error count 1 Operations completed 0
Owner process "" Owner UIC [SYSTEM]
Owner process ID 00000000 Dev Prot S:RWPL,O:RWPL,G:R,W
Reference count 0 Default buffer size 512
WWID 01000010:6008-05F3-0012-00F0-0000-0000-0375-0000
Allocation class 1
So VMS knows the LUNs are there, but something still seems to be missing
to make VMS happy, and the devices just stay "Offline" with 1 in the
Error Count.
For lack of knowing what else to do, I ended up "faking" MSA1000
volumes, in case VMS was sensitive to particular devices. But I don't
think VMS really cares what the devices identify themselves as.
In any case, SYS$ETC:FIBRE_SCAN doesn't reveal any errors or problems.
The target and LUNs show up as I'd expect:
$ run sys$etc:fibre_scan
[...]
Probing Target 1 ==========================================================
Port WWID: 5001-4380-28CC-9A38
Node WWID: 5001-4380-28CC-9A38
Target = 1. LUN = 0.
----------------------
Devname: $1$DGA1:
Vendor ID: COMPAQ
Product ID: MSA1000 VOLUME
Devtype: 0 (Disk)
Rev Level: 4.32
WWID: 01000010:6008-05F3-0012-00F0-0000-0000-0375-0000
Reported LUN count = 2. at target 1.
Target = 1. LUN = 1.
----------------------
Devname: $1$DGA2:
Vendor ID: COMPAQ
Product ID: MSA1000 VOLUME
Devtype: 0 (Disk)
Rev Level: 4.32
WWID: 01000010:6008-05F3-0012-00F0-0000-0000-0375-0001
[...]
Here's an example of how I have one of the LUNs configure on the FreeBSD
side. Mostly made-up/faked values for the serial, vendor, product,
revision, just based on some working system in the wild in case there is
anything magical about needing to be a "COMPAQ" vendor or something. The
ident_info seems to be the magic that maps to UDID:
lun 0 {
backend block
device-id "600805f3001200f00000000003750000"
serial "MGKSERIAL0000"
option vendor "COMPAQ"
option product "MSA1000 VOLUME"
option revision "4.32"
option scsiname "0001"
option ident_info 0x00000001
option naa 600805f3001200f00000000003750000
path /dev/zvol/zroot/fc/vms00
}
Obviously this isn't a supported configuration by any means, but I'm
wondering if anyone has gone down this path before, or has any hints as
to determine what the error is, or if there's anything in the above
setup that looks like it might cause a problem?
Thanks,
Matthew
More information about the Info-vax
mailing list