Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Cannot mount the tape on QUANTUM ' / 'ULTRIUM-HH9' #382

Open
piste-jp opened this issue Dec 19, 2022 · 14 comments
Open

Cannot mount the tape on QUANTUM ' / 'ULTRIUM-HH9' #382

piste-jp opened this issue Dec 19, 2022 · 14 comments
Assignees

Comments

@piste-jp
Copy link
Member

    We are seeing a similar issue, but I believe a different result.
/usr/local/bin/ltfs -o devname=/dev/sg2 /mnt/lto9-2
134a LTFS14000I LTFS starting, LTFS version 2.5.0.0 (Prelim), log level 2.
134a LTFS14058I LTFS Format Specification version 2.4.0.
134a LTFS14104I Launched by "/usr/local/bin/ltfs -o devname=/dev/sg2 /mnt/lto9-2".
134a LTFS14105I This binary is built for Linux (x86_64).
134a LTFS14106I GCC version is 8.5.0 20210514 (Red Hat 8.5.0-4).
134a LTFS17087I Kernel version: Linux version 4.18.0-372.19.1.el8_6.x86_64 ([[email protected]](mailto:[email protected])) (gcc version 8.5.0 20210514 (Red Hat 8.5.0-10) (GCC)) #1 SMP Tue Aug 2 16:19:42 UTC 2022 i386.
134a LTFS17089I Distribution: Rocky Linux release 8.6 (Green Obsidian).
134a LTFS17089I Distribution: NAME="Rocky Linux".
134a LTFS17089I Distribution: Rocky Linux release 8.6 (Green Obsidian).
134a LTFS17089I Distribution: Rocky Linux release 8.6 (Green Obsidian).
134a LTFS17089I Distribution: Rocky Linux release 8.6 (Green Obsidian).
134a LTFS14063I Sync type is "time", Sync time is 300 sec.
134a LTFS17085I Plugin: Loading "sg" tape backend.
134a LTFS17085I Plugin: Loading "unified" iosched backend.
134a LTFS14095I Set the tape device write-anywhere mode to avoid cartridge ejection.
134a LTFS30209I Opening a device through sg-ibmtape driver (/dev/sg2).
134a LTFS30213I Unsupported Drive 'QUANTUM ' / 'ULTRIUM-HH9     '.
134a LTFS12012E Cannot open device: failed backend open call.
134a LTFS10004E Cannot open device '/dev/sg2'.

Originally posted by @alatteri in #371 (comment)

@piste-jp piste-jp self-assigned this Dec 19, 2022
@piste-jp
Copy link
Member Author

piste-jp commented Dec 19, 2022

@alatteri

LTFS doesn't support Quantum LTO9 at all yet. Because I don't have any tape Quantum drives and I cannot try it at all.

Please add your drive in the table below, recompile and try it. And please give us the feedback it can work correctly. I will add it once you confirm it works.

struct supported_device *quantum_supported_drives[] = {
TAPEDRIVE( QUANTUM_VENDOR_ID, "ULTRIUM-HH5", VENDOR_QUANTUM, DRIVE_LTO5_HH, "[ULTRIUM-HH5]" ), /* QUANTUM Ultrium Gen 5 Half-High */
TAPEDRIVE( QUANTUM_VENDOR_ID, "ULTRIUM-HH6", VENDOR_QUANTUM, DRIVE_LTO6_HH, "[ULTRIUM-HH6]" ), /* QUANTUM Ultrium Gen 6 Half-High */
TAPEDRIVE( QUANTUM_VENDOR_ID, "ULTRIUM-HH7", VENDOR_QUANTUM, DRIVE_LTO7_HH, "[ULTRIUM-HH7]" ), /* QUANTUM Ultrium Gen 7 Half-High */
TAPEDRIVE( QUANTUM_VENDOR_ID, "ULTRIUM-HH8", VENDOR_QUANTUM, DRIVE_LTO8_HH, "[ULTRIUM-HH8]" ), /* QUANTUM Ultrium Gen 8 Half-High */
TAPEDRIVE( QUANTUM_VENDOR_ID, "ULTRIUM 5", VENDOR_QUANTUM_B, DRIVE_LTO5_HH, "[ULTRIUM-5]" ), /* Another QUANTUM Ultrium Gen 5 Half-High */
TAPEDRIVE( QUANTUM_VENDOR_ID, "ULTRIUM 6", VENDOR_QUANTUM_B, DRIVE_LTO6_HH, "[ULTRIUM-6]" ), /* Another QUANTUM Ultrium Gen 6 Half-High */
/* End of supported_devices */
NULL
};

@alatteri
Copy link

Thank you. I will give it a try tomorrow. Is there any data I can provide you to incorporate into the code?

@alatteri

LTFS didn't support Quantum LTO9 at all yet. Because I don't have any tape Quantum drives and I cannot try it at all.

Please add your drive in the table below, recompile and try it. And please give us the feedback it can work correctly. I will add it once you confirm it works.

struct supported_device *quantum_supported_drives[] = {
TAPEDRIVE( QUANTUM_VENDOR_ID, "ULTRIUM-HH5", VENDOR_QUANTUM, DRIVE_LTO5_HH, "[ULTRIUM-HH5]" ), /* QUANTUM Ultrium Gen 5 Half-High */
TAPEDRIVE( QUANTUM_VENDOR_ID, "ULTRIUM-HH6", VENDOR_QUANTUM, DRIVE_LTO6_HH, "[ULTRIUM-HH6]" ), /* QUANTUM Ultrium Gen 6 Half-High */
TAPEDRIVE( QUANTUM_VENDOR_ID, "ULTRIUM-HH7", VENDOR_QUANTUM, DRIVE_LTO7_HH, "[ULTRIUM-HH7]" ), /* QUANTUM Ultrium Gen 7 Half-High */
TAPEDRIVE( QUANTUM_VENDOR_ID, "ULTRIUM-HH8", VENDOR_QUANTUM, DRIVE_LTO8_HH, "[ULTRIUM-HH8]" ), /* QUANTUM Ultrium Gen 8 Half-High */
TAPEDRIVE( QUANTUM_VENDOR_ID, "ULTRIUM 5", VENDOR_QUANTUM_B, DRIVE_LTO5_HH, "[ULTRIUM-5]" ), /* Another QUANTUM Ultrium Gen 5 Half-High */
TAPEDRIVE( QUANTUM_VENDOR_ID, "ULTRIUM 6", VENDOR_QUANTUM_B, DRIVE_LTO6_HH, "[ULTRIUM-6]" ), /* Another QUANTUM Ultrium Gen 6 Half-High */
/* End of supported_devices */
NULL
};

@piste-jp
Copy link
Member Author

The LTFS said the tape drive below is not supported by LTFS30213I.

  • Vendor ID: QUANTUM
  • Drive ID: ULTRIUM-HH9
134a LTFS30213I Unsupported Drive 'QUANTUM ' / 'ULTRIUM-HH9     '.

You need to add the line below into quantum_supported_drives[] as the start point.

TAPEDRIVE( QUANTUM_VENDOR_ID, "ULTRIUM-HH9",  VENDOR_QUANTUM,   DRIVE_LTO9_HH, "[ULTRIUM-HH9]" ),  /* QUANTUM Ultrium Gen 9 Half-High */ 

@alatteri
Copy link

I've added this line:
TAPEDRIVE( QUANTUM_VENDOR_ID, "ULTRIUM-HH9", VENDOR_QUANTUM, DRIVE_LTO9_HH, "[ULTRIUM-HH9]" ), /* QUANTUM Ultrium Gen 9 Half-High */ to quantum_tape.c , recompiled, installed and rebooted.

We are getting the following error from both a Quantum and IBM LTO-9.

Quantum:

ltfs -o devname=/dev/sg2 /mnt/ltfs9-2/
4461 LTFS14000I LTFS starting, LTFS version 2.5.0.0 (Prelim), log level 2.
4461 LTFS14058I LTFS Format Specification version 2.4.0.
4461 LTFS14104I Launched by "ltfs -o devname=/dev/sg2 /mnt/ltfs9-2/".
4461 LTFS14105I This binary is built for Linux (x86_64).
4461 LTFS14106I GCC version is 8.5.0 20210514 (Red Hat 8.5.0-15).
4461 LTFS17087I Kernel version: Linux version 4.18.0-425.3.1.el8.x86_64 ([email protected]) (gcc version 8.5.0 20210514 (Red Hat 8.5.0-15) (GCC)) #1 SMP Wed Nov 9 20:13:27 UTC 2022 i386.
4461 LTFS17089I Distribution: Rocky Linux release 8.7 (Green Obsidian).
4461 LTFS17089I Distribution: NAME="Rocky Linux".
4461 LTFS17089I Distribution: Rocky Linux release 8.7 (Green Obsidian).
4461 LTFS17089I Distribution: Rocky Linux release 8.7 (Green Obsidian).
4461 LTFS17089I Distribution: Rocky Linux release 8.7 (Green Obsidian).
4461 LTFS14063I Sync type is "time", Sync time is 300 sec.
4461 LTFS17085I Plugin: Loading "sg" tape backend.
4461 LTFS17085I Plugin: Loading "unified" iosched backend.
4461 LTFS14095I Set the tape device write-anywhere mode to avoid cartridge ejection.
4461 LTFS30209I Opening a device through sg-ibmtape driver (/dev/sg2).
4461 LTFS30250I Opened the SCSI tape device 0.0.28.0 (/dev/sg2).
4461 LTFS30207I Vendor ID is QUANTUM .
4461 LTFS30208I Product ID is ULTRIUM-HH9     .
4461 LTFS30214I Firmware revision is N9B1.
4461 LTFS30215I Drive serial is 1097000849.
4461 LTFS30285I The reserved buffer size of /dev/sg2 is 262144.
4461 LTFS30294I Setting up timeout values from RSOC.
4461 LTFS17160I Maximum device block size is 1048576.
4461 LTFS11330I Loading cartridge.
4461 LTFS11332I Load successful.
4461 LTFS17157I Changing the drive setting to write-anywhere mode.
4461 LTFS11005I Mounting the volume from device.
4461 LTFS30216W Length mismatch is detected. (Act = 4096, resid = 0, resid_sense = 4016).
4461 LTFS12049E Cannot read: backend call failed (-21716).
4461 LTFS11174E Cannot read ANSI label: read failed (-21716).
4461 LTFS11170E Failed to read label (-21716) from partition 0.
4461 LTFS11009E Cannot read volume: failed to read partition labels.
4461 LTFS14013E Cannot mount the volume from device.
4461 LTFS30252I Logical block protection is disabled.

IBM:

ltfs -o devname=/dev/sg0 /mnt/ltfs9-2/  
445a LTFS14000I LTFS starting, LTFS version 2.5.0.0 (Prelim), log level 2.
445a LTFS14058I LTFS Format Specification version 2.4.0.
445a LTFS14104I Launched by "ltfs -o devname=/dev/sg0 /mnt/ltfs9-2/".
445a LTFS14105I This binary is built for Linux (x86_64).
445a LTFS14106I GCC version is 8.5.0 20210514 (Red Hat 8.5.0-15).
445a LTFS17087I Kernel version: Linux version 4.18.0-425.3.1.el8.x86_64 ([email protected]) (gcc version 8.5.0 20210514 (Red Hat 8.5.0-15) (GCC)) #1 SMP Wed Nov 9 20:13:27 UTC 2022 i386.
445a LTFS17089I Distribution: Rocky Linux release 8.7 (Green Obsidian).
445a LTFS17089I Distribution: NAME="Rocky Linux".
445a LTFS17089I Distribution: Rocky Linux release 8.7 (Green Obsidian).
445a LTFS17089I Distribution: Rocky Linux release 8.7 (Green Obsidian).
445a LTFS17089I Distribution: Rocky Linux release 8.7 (Green Obsidian).
445a LTFS14063I Sync type is "time", Sync time is 300 sec.
445a LTFS17085I Plugin: Loading "sg" tape backend.
445a LTFS17085I Plugin: Loading "unified" iosched backend.
445a LTFS14095I Set the tape device write-anywhere mode to avoid cartridge ejection.
445a LTFS30209I Opening a device through sg-ibmtape driver (/dev/sg0).
445a LTFS30250I Opened the SCSI tape device 0.0.27.0 (/dev/sg0).
445a LTFS30207I Vendor ID is IBM     .
445a LTFS30208I Product ID is ULTRIUM-HH9     .
445a LTFS30214I Firmware revision is P371.
445a LTFS30215I Drive serial is 10WT002618.
445a LTFS30285I The reserved buffer size of /dev/sg0 is 262144.
445a LTFS30294I Setting up timeout values from RSOC.
445a LTFS17160I Maximum device block size is 1048576.
445a LTFS11330I Loading cartridge.
445a LTFS30252I Logical block protection is disabled.
445a LTFS11332I Load successful.
445a LTFS17157I Changing the drive setting to write-anywhere mode.
445a LTFS11005I Mounting the volume from device.
445a LTFS30252I Logical block protection is disabled.
445a LTFS30216W Length mismatch is detected. (Act = 4096, resid = 0, resid_sense = 4016).
445a LTFS12049E Cannot read: backend call failed (-21716).
445a LTFS11174E Cannot read ANSI label: read failed (-21716).
445a LTFS11170E Failed to read label (-21716) from partition 0.
445a LTFS11009E Cannot read volume: failed to read partition labels.
445a LTFS14013E Cannot mount the volume from device.
445a LTFS30252I Logical block protection is disabled.

@alatteri
Copy link

I recompiled with buggy-ifs and still fails:

e82 LTFS14000I LTFS starting, LTFS version 2.5.0.0 (Prelim), log level 2.
e82 LTFS14058I LTFS Format Specification version 2.4.0.
e82 LTFS14104I Launched by "/usr/local/bin/ltfs -o devname=/dev/sg0 /mnt/lto9-1".
e82 LTFS14105I This binary is built for Linux (x86_64).
e82 LTFS14106I GCC version is 8.5.0 20210514 (Red Hat 8.5.0-15).
e82 LTFS17087I Kernel version: Linux version 4.18.0-425.3.1.el8.x86_64 ([[email protected]](mailto:[email protected])) (gcc version 8.5.0 20210514 (Red Hat 8.5.0-15) (GCC)) #1 SMP Wed Nov 9 20:13:27 UTC 2022 i386.
e82 LTFS17089I Distribution: Rocky Linux release 8.7 (Green Obsidian).
e82 LTFS17089I Distribution: NAME="Rocky Linux".
e82 LTFS17089I Distribution: Rocky Linux release 8.7 (Green Obsidian).
e82 LTFS17089I Distribution: Rocky Linux release 8.7 (Green Obsidian).
e82 LTFS17089I Distribution: Rocky Linux release 8.7 (Green Obsidian).
e82 LTFS14063I Sync type is "time", Sync time is 300 sec.
e82 LTFS17085I Plugin: Loading "sg" tape backend.
e82 LTFS17085I Plugin: Loading "unified" iosched backend.
e82 LTFS14095I Set the tape device write-anywhere mode to avoid cartridge ejection.
e82 LTFS30209I Opening a device through sg-ibmtape driver (/dev/sg0).
e82 LTFS30250I Opened the SCSI tape device 0.0.27.0 (/dev/sg0).
e82 LTFS30207I Vendor ID is IBM     .
e82 LTFS30208I Product ID is ULTRIUM-HH9     .
e82 LTFS30214I Firmware revision is P371.
e82 LTFS30215I Drive serial is 10WT002618.
e82 LTFS30285I The reserved buffer size of /dev/sg0 is 262144.
e82 LTFS30294I Setting up timeout values from RSOC.
e82 LTFS17160I Maximum device block size is 1048576.
e82 LTFS11330I Loading cartridge.
e82 LTFS30252I Logical block protection is disabled.
e82 LTFS11332I Load successful.
e82 LTFS17157I Changing the drive setting to write-anywhere mode.
e82 LTFS11005I Mounting the volume from device.
e82 LTFS30252I Logical block protection is disabled.
e82 LTFS30820I (no message found).
e82 LTFS30263I READ returns No Additional Sense Information (-20002) /dev/sg0.
e82 LTFS12049E Cannot read: backend call failed (-20002).
e82 LTFS11174E Cannot read ANSI label: read failed (-20002).
e82 LTFS11170E Failed to read label (-20002) from partition 0.
e82 LTFS11009E Cannot read volume: failed to read partition labels.
e82 LTFS14013E Cannot mount the volume from device.
e82 LTFS30252I Logical block protection is disabled.

@rmocster
Copy link

rmocster commented Mar 8, 2023

Any update with lto9 and ltfs? Thanks.

@rmocster
Copy link

What is the hold up on the resolution of ltfs working with lto9 drive?

@piste-jp
Copy link
Member Author

@alatteri

It looks the behavior of your HBA is incorrect against length-mismatch case. I guess the HBA doesn't support tape device correctly.

LTFS intensionally tries to read 80-byte length the ANSI label with under-length condition to confirm the HBA can handle it correctly or not. Because under-length condition sometimes happens in LTFS. (On the other hand, the length-mismatch condition never happens on disk access normally. )

@piste-jp
Copy link
Member Author

@rmocster

At least, IBM LTO9 is already supported on the code and IBM confirms that on the IBM Spectrum Archive SDE.

This is the issue related HBA. This issue doesn't say LTFS doesn't support LTO9.

@alatteri
Copy link

Hi @piste-jp-ibm ,

Is there a recommended HBA list? I believe we are using an LSI.

It looks the behavior of your HBA is incorrect against length-mismatch case. I guess the HBA doesn't support tape device correctly.

LTFS intensionally tries to read 80-byte length the ANSI label with under-length condition to confirm the HBA can handle it correctly or not. Because under-length condition sometimes happens in LTFS. (On the other hand, the length-mismatch condition never happens on disk access normally. )

@piste-jp
Copy link
Member Author

Is there a recommended HBA list? I believe we are using an LSI.

I think it's not an objective of this project.

IBM is providing a list into SSIC. Please check this.

@alatteri
Copy link

Can this be added to master code. It works perfectly when done manually.

The LTFS said the tape drive below is not supported by LTFS30213I.

  • Vendor ID: QUANTUM
  • Drive ID: ULTRIUM-HH9
134a LTFS30213I Unsupported Drive 'QUANTUM ' / 'ULTRIUM-HH9     '.

You need to add the line below into quantum_supported_drives[] as the start point.

TAPEDRIVE( QUANTUM_VENDOR_ID, "ULTRIUM-HH9",  VENDOR_QUANTUM,   DRIVE_LTO9_HH, "[ULTRIUM-HH9]" ),  /* QUANTUM Ultrium Gen 9 Half-High */ 

@alatteri
Copy link

We switched to an ATTO 12G SAS card, and no longer have any errors.

Is there a recommended HBA list? I believe we are using an LSI.

I think it's not an objective of this project.

IBM is providing a list into SSIC. Please check this.

@jmclaug
Copy link

jmclaug commented Jun 18, 2023

I can confirm that I added the TAPEDRIVE( QUANTUM_VENDOR_ID, "ULTRIUM-HH9", VENDOR_QUANTUM, DRIVE_LTO9_HH, "[ULTRIUM-HH9]" ), /* QUANTUM Ultrium Gen 9 Half-High */
to my TEST code and it worked
Brand new to this github stuff and Thanks !!!!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

4 participants