This is the mail archive of the cygwin mailing list for the Cygwin project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: 1.5.10-3 + mt 2.3 scsi tape problems


Corinna Vinschen wrote:

On Aug 17 17:42, Pim Zandbergen wrote:


I'm using a cygwin script as a wrapper around ntbackup on a number
of servers, running windows 2000 and 2003 server.

Basically, the script does

mt -f /dev/st0 status
dd if=labelfile of=/dev/st0
ntbackup  [ lots of options ]
mt -f /dev/st0 offline

After doing cygwin updates, backups started failing.
mt and/or dd would hang, ntbackup wouldn't detect the tape drive

This usually happened the second day. One day everything would
work, the next day, the backup would hang. Rebooting would be
the only way to get a good backup the next day. On one server,
a cold reboot was always necessary to release the tape.



A cold reboot shouldn't be necessary@all. After the last Cygwin process on the machine has stopped, there's nothing in Cygwin left which could block the tape device.

No, it shouldn't. In fact cygwin itself has left, as there's not a single cygwin
process inbetween the backups. The script is started from the Windows Task
Scheduler.


But I did see the write LED burning, so the hardware thinks something still is writing.

Reverting back to cygwin 1.5.9 and mt 2.1 resolved my problems.



That's not exactly helpful.


OK, I upgraded one server again and did some more testing.

Do mt or dd hang when called from the
command line, too?

Yes.

What does an strace of mt or dd show?


They dump core when strace'd.

Anyway, I think I've found the problem. When the system boots, mt status
shows a tape block size of 0. ntbackup seems to change it to 16k. That makes
dd hang in the next script. using "mt setblk 0" before dd, and adding "bs=16k"
to the dd command line solves the problem.


Somehow, the old code would not hang in this situation, the new code does.

My problem seems solved now, but this should allow you to reproduce the
problem immediately:

mt -f /dev/st0 setblk 16384
dd if=/dev/zero of=/dev/st0 bs=16k count=1

Thanks,
Pim



--
Unsubscribe info:      http://cygwin.com/ml/#unsubscribe-simple
Problem reports:       http://cygwin.com/problems.html
Documentation:         http://cygwin.com/docs.html
FAQ:                   http://cygwin.com/faq/


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]