660135b59e
Make chg-chio wait for a tape to come ready after loading it. clean up $MT/@MT@ confusion in chg-chio Patch from Aaron Grier in PR pkg/35231. (This resolves issue #1 in the PR; issue #2 is unrelated.)
38 lines
1.3 KiB
Text
38 lines
1.3 KiB
Text
$NetBSD: patch-ap,v 1.1 2007/02/07 02:04:15 gdt Exp $
|
|
|
|
--- changer-src/chg-chio.pl.in.orig 2003-11-21 14:09:35.000000000 -0500
|
|
+++ changer-src/chg-chio.pl.in
|
|
@@ -281,6 +281,13 @@ sub Load {
|
|
print "$progname: cannot '@CHIO@ -f $changerDevice move' tape $tape into drive 0\n";
|
|
exit(2);
|
|
}
|
|
+
|
|
+ # wait for tape to load
|
|
+ do {
|
|
+ print LOG &do_time(), ": waiting for tape to load\n";
|
|
+ sleep 30;
|
|
+ } while ( system("$MT $MTF $tapeDevice status > /dev/null 2>&1" ) );
|
|
+
|
|
print LOG &do_time(), ": leave: Load\n";
|
|
}
|
|
|
|
@@ -302,8 +309,8 @@ sub Unload {
|
|
# firmware rev but for now it's safest to just explicitly eject
|
|
# the tape before moving the cartridge.
|
|
#
|
|
- if ( system ("@MT@ @MT_FILE_FLAG@ $tapeDevice offline") ) {
|
|
- print "$progname: Warning, failed to eject the tape with '@MT@ @MT_FILE_FLAG@ $tapeDevice offline'\n";
|
|
+ if ( system ("$MT $MTF $tapeDevice offline") ) {
|
|
+ print "$progname: Warning, failed to eject the tape with '$MT $MTF $tapeDevice offline'\n";
|
|
# NB: not fatal; let chio try it's thing
|
|
}
|
|
|
|
@@ -370,7 +377,7 @@ if (-x "$sbindir/ammt$SUF") {
|
|
print "<none> mt program not found\n";
|
|
exit(1);
|
|
}
|
|
-print LOG &do_time(), "MT -> $MT $MTF\n";
|
|
+print LOG &do_time(), ": MT -> $MT $MTF\n";
|
|
|
|
system ("$MT $MTF $tapeDevice rewind")
|
|
unless $currentTape == 0;
|