Suspend operation failed on Solaris 9
i recently upgraded a Sun ULTRA 60 from Solaris 8 to Solaris 9.
now my daily suspend operation does not work anymore. every evening i do a backup and once that is finished i do a "/usr/openwin/bin/sys-suspend -nxd xxx". under Solaris 8 it worked just fine but now i get the following error:Oct 21 16:20:13 obelix cpr: [ID 535284 kern.notice] System is being suspended
Oct 21 16:20:24 obelix cpr: [ID 122848 kern.warning] WARNING: Unable to suspend device st@4,0.
Oct 21 16:20:24 obelix cpr: [ID 537702 kern.warning] WARNING: Device is busy or does not support suspend/resume.
Oct 21 16:20:30 obelix hme: [ID 517527 kern.info] SUNW,hme0 : Internal Transceiver Selected.
Oct 21 16:20:30 obelix hme: [ID 517527 kern.info] SUNW,hme0 :100 Mbps Full-Duplex Link Up
Oct 21 16:20:30 obelix cpr: [ID 457896 kern.notice] NOTICE: Suspend operation failed.
Oct 21 16:20:30 obelix cpr: [ID 583038 kern.notice] System has been resumed.
and the system is not suspended.
is there anything i am missing on Solaris 9?
thomas
[1080 byte] By [
kloeber] at [2007-11-26 10:59:59]

# 1
It's claiming the tape drive is busy. Any chance that is true?Are you waiting a bit after the backup is complete before scheduling the suspend? Just before doing the suspend, you might run 'fuser' on the tape drive to see if it's in use.-- Darren
# 2
Darren,thanx for your suggestion.yes, it is possible that the tape drive is busy. but i already a 'sleep 900' at the end of my backup script. i would have thought, that 15min should be sufficient to rewind the tape.i will try your fuser suggestion...thomas
# 3
i'm not sure if the fuser works in my case. the problem is, that the backup is done but the tape drive does a rewind offline...
anyway, i tried your suggestion and now i get the following error:Oct 25 11:34:07 obelix cpr: System is being suspended
Oct 25 11:36:04 obelix cpr: WARNING: Could not stop "unmount_tree" kernel thread. Please try again later.
Oct 25 11:36:10 obelix cpr: NOTICE: Suspend operation failed.
Oct 25 11:36:10 obelix cpr: System has been resumed.
any ideas, what that means?
thomas
# 4
> i'm not sure if the fuser works in my case. the
> problem is, that the backup is done but the tape
> drive does a rewind offline...
What do you mean by you're not sure if it works? Running fuser on the same device you use for backups should show any processes that have it open. If nothing has it open, you just have the device...
# fuser /dev/rmt/0cbn
/dev/rmt/0cbn:
> anyway, i tried your suggestion and now i get the
Fuser is just another diagnostic. It's not going to help anything on its own.
> following error:> Oct 25 11:34:07 obelix cpr: System is being
> suspended
> Oct 25 11:36:04 obelix cpr: WARNING: Could not stop
> "unmount_tree" kernel thread. Please try again
> later.
> Oct 25 11:36:10 obelix cpr: NOTICE: Suspend operation
> failed.
> Oct 25 11:36:10 obelix cpr: System has been
> resumed.
> any ideas, what that means?
Nope.
It's possible that you could use 'modinfo' and 'modunload' to unload the 'st' module.... but if you can actually unload it, I'd be surprised that it couldn't be suspended as well.
--
Darren
# 5
Darren,
> > i'm not sure if the fuser works in my case. the
> > problem is, that the backup is done but the tape
> > drive does a rewind offline...
>
> What do you mean by you're not sure if it works?
> Running fuser on the same device you use for backups
> should show any processes that have it open. If
> nothing has it open, you just have the device...
what i mean by 'not sure if it works' is as described above: once the backup is finished the device does a rewind operation whereby the backup process does not wait until it is finished, ie the tape drive does the rewind 'offline'. so when i do an 'fuser /dev/tape' i will have no process that has the device open, even so the physical device is still busy doing the rewind and thus, maybe, refusing to be suspended.
next thing i'll try, is to do the backup to the non-rewinding tape to see if that helps.
thanx for your help anayways,
thomas
# 6
> what i mean by 'not sure if it works' is as described
> above: once the backup is finished the device does a
> rewind operation whereby the backup process does not
> wait until it is finished, ie the tape drive does the
> rewind 'offline'. so when i do an 'fuser /dev/tape' i
> will have no process that has the device open, even
> so the physical device is still busy doing the rewind
> and thus, maybe, refusing to be suspended.
If you're doing an actual rewind (rather than just closing an auto-rewind device), then the process should be waiting for the rewind to complete.
You can make it do so by doing a 'mt -f <tape> rewind' and a 'mt -f <tape> status'. You won't get the status until the tape has finished.
But even so, with a long sleep, I can't imagine that the rewind wouldn't have completed.
> next thing i'll try, is to do the backup to the
> non-rewinding tape to see if that helps.
Yes, doing that and an explicit rewind following is usually best.
--
Darren
# 7
hmm, dumping to the non-rewinding tape did not work either...
still the same error message.
> But even so, with a long sleep, I can't imagine that the rewind wouldn't have completed.
yeah, i thought so myself, i had no other idea since
1. the whole procedure worked under Solaris 8
2. the suspend works when i do it 'manually', ie press the power button and select Suspend
lost,
thomas