Operating System - OpenVMS
cancel
Showing results for 
Search instead for 
Did you mean: 

how can i stop a process which is in RWAST state

Mrityunjoy Kundu
Frequent Advisor

how can i stop a process which is in RWAST state

Today,when customer initiated a backup on DLT drive ,they noticed the backup not completed even after more than 2 hours,which normally takes 10 to 15 minutes.The proceess went to RWAST state and the process could not be stopped by stop/id=process id. and the volume could not be dismounted and when i wanted to dismount the volume by dismount/nounload command ,the terminal from which I executed the command went to hung state and I could not get system prompt from that terminal by pressing +.

what is the remedy to dismount the volume ,what could be the reason the proceess went to RWAST state...
7 REPLIES
Karl Rohwedder
Honored Contributor

Re: how can i stop a process which is in RWAST state

The process is waiting for something to complete (probably an IO) and blocks everything, e.g. your terminal trying to dismount the tape. You may try to find out the reason, but the easiest and sometimes only way is a reboot. The FAQ as some info on this:
http://h71000.www7.hp.com/faq/vmsfaq.html

regards Kalle
Kris Clippeleyr
Honored Contributor

Re: how can i stop a process which is in RWAST state

Hi,
It's just like Karl said. Unless you can take away the reason for the RWAST, you're stuck. A reboot is the fastest way to remedy this situation.
Regards,
Kris (aka Qkcl)
I'm gonna hit the highway like a battering ram on a silver-black phantom bike...
Steven Schweda
Honored Contributor

Re: how can i stop a process which is in RWAST state

You can try DISMOUNT /ABORT, but don't expect
too much.
Jur van der Burg
Respected Contributor

Re: how can i stop a process which is in RWAST state

People always seem to want to stop an RWAST process, given the frequency of this question. But you can't do that safely, not even with kernel mode hacks. You need to take away the cause of the problem, and not attack the result, otherwise you may risk serious system instability (look at other operating systems....) There's always a reason for RWAST, and that is in 99% of the case a driver that does not complete an I/O request. Not because it does not want to, but because of something that's blocking it. In the case of tapes there can be very long timeouts involved, and until these expire the driver will wait. An erase or space command for example has a timeout of 5 hours enforced by MKdriver. Many other commands like read and write 10 minutes. So depending on what the unit was doing at the time of an error you might need to wait for 5 hours. If the drive has a hardware failure and stops responding it will take time to recover. And from a driver perspective, you can't predict all hardware failure scenarios, so it can always be a bug in the driver, from which I've seen my fair share. Notice that it can also be a problem in the portdriver (below MKdriver) that talks directly to the hardware.

Fwiw,

Jur.
Ian Miller.
Honored Contributor

Re: how can i stop a process which is in RWAST state

there are multiple reasons why a process enters RWAST state. Trying to STOP the process rarely succeeds and just complicates finding out why the process is in that state.

If you do
$ ANALYZE/SYSTEM
SDA> SHOW PROCESS/ID=pid
post the results here it may be possible to find out more. However at this stage scheduling a reboot may be your best option.

If a reboot is not possible at this time then it is sometimes possible to change the SCSI id of the tape drive (so the device name changes) and perform another backup. This is if the tape drive is working and you know why the problem occurred in the first place.
____________________
Purely Personal Opinion
comarow
Trusted Contributor

Re: how can i stop a process which is in RWAST state


Stopping a RWAST process is probably the worst thing one can do. That said, we've all done it plenty of times.

As said, it's probably an I/O that failed to complete. It could be a symptom of a problem.

One thing you can recover from is a byte limit shortage. You can fix that using the availability manager or some tools you can get from Colorado Support.

They can help look at your RWAST, but don't bother them if someone tried to kill it.
GuentherF
Trusted Contributor

Re: how can i stop a process which is in RWAST state

Typically a process gets stuck with some device I/O. Check with SDA> SHOW PROC/CHANN for a busy channel. The process is most likely in LEF state. Now someone does either a STOP/ID or DCL-EXIT which ultimately does a cancel I/O request in the image rundown call. If the the outstanding I/O count for this channel is non-zero the process is put into RWAST. It is assumed that the outstanding I/O is completed/returned via a kernel AST. That's all a process excepts in this state.

Sometimes power cycling the drive or the controller causes enough action so that the device driver resumes and returns the I/O.

This is a (close to) day one weakness in VMS. Having to reboot a system because some I/O is stuck? That should not be needed for a mature OS.

/Guenther