-
Notifications
You must be signed in to change notification settings - Fork 1
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
rtape: implement rewind-unload command #19
Comments
Please elaborate? I just tried making a partial backup of CDR, resulting in 9.8M. |
I get this very consitently and can't backup more than about 5MiB. |
Output from RTAPE server:
|
That's a crucial clue. Operation 8 is "rewind-unload" which I haven't implemented. The elegant error handling consists of calling |
How would we want this to work? Just continue with the same file, or do -.tap kinda thing where |
But isn't it still strange that the tape size is just ~5MiB? That would take lots of tapes to just backup 135MiB which is the System tree. |
Yes, it's strange that you get an End-of-tape. I don't see how you set up your tape device, your transcript just says "Setting host..." and "Setting device unit...". Did you do (tape:select-device ...) before the call to tape:backup-files? I don't get an end-of-tape, and thus the :unload method isn't called, and the backup finishes happily. Could it be something happening on the rtape server host, like the disk getting full? Or could it be related to differences in offsets between rtape.c and rtape-device.lisp? What's the value of tape:rtape-dlen (should be 16), and at what index are flags put in send_status in rtape.c (should be 34, 35)?
backup-files calls prompt-for-new-tape which will call rtape :set-options which will pop up a tv:choose-variable-values window. If you give the same unit name, you'll overwrite the last tape. How you want it to work: like for me, i.e., don't get an end-of-tape? |
Is there a possibility that you are setting the tape density/length (or there is a default value) that causes the LM client software to only write 5M before “wanting a new tape”? |
I'm not setting anything special, just MAKE-SYSTEM on TAPE, and then (tape:backup-files ...) which asks me about the host. The RTAPE host has plenty of disk left. @eswenson1 Not setting anything, so I'm confused why @bictorv is getting a different result, and why he has a rtape-dlen of 16..
@bictorv Doesn't tape:select-device do the same as the :tape-name ? As for how this should work, I think 'infinite' tape would be the best? Getting asked for new tapes constantly would be annoying. As for operation 8, should it really be rewind-unload -- and not offline?
|
You have an old version of rtape-device - but setting rtape-DLEN to 16 should suffice for now. Perhaps you also have an old version of rtape.c, which would make things work, but if they mismatch you will get problems - you could randomly get an EOF flag, perhaps. Check your rtape.c (send_status should put flags at offset 34+35, and the last four lines (after buf[34] |= FLG_STRG) should use 36 as constant instead of 35. rewind-unload of a real tape would put the tape offline, so probably means the same as offline. |
It essentially does, if selected-device is an RTAPE device. :tape-name sets the unit only. |
I'll double check .. I don't think I have an old version of rtape-device.lisp (version 4) -- rtape.c is definitely from master. Though I see that I have this going on, it is possible that I maybe messed up something.
|
I'll send you my latest, version 9. Or you can pick it up from CDR:BV.TAPE; yourself. As for the problem of getting an end-of-tape: the next time you get it, try |
We need better ways of syncing these hacks. |
I suspect after rewind-unloading, the operator is supposed to mount another reel? |
I would assume so, yes. At least that is the behaviour Tape currently expects. |
So it seems "rewind-unload" should close the current tape image file, and possibly prepare to open another. I suppose the backup program will send a new mount command after rewind-unload. |
That would be very reasonable. |
I cannot backup more than about 5MiB of data on the Lisp Machine.
The tape driver gets a end of tape encountered, and then poops.
The text was updated successfully, but these errors were encountered: