Operating System - OpenVMS
1752664 Members
5437 Online
108788 Solutions
New Discussion юеВ

Re: %TIE-W-PSIG_WRONG and %TIE-W-PSIG_ADDR errors

 

%TIE-W-PSIG_WRONG and %TIE-W-PSIG_ADDR errors

Hi!
OVMS 8.3 + update 0300 on Itanium.

I converted an image from Alpha to I64. When I run it I receive then following message:

%TIE-W-PSIG_WRONG, Wrong PSIG [000000007B2D0540] for SECURESHRP_AV[12]
%TIE-W-PSIG_ADDR, PSIG invalid address : 000000007B2D0540

The image SECURESHRP_AV doesn┬┤t exist on my system, I don┬┤t know what is happening.

Any help?
Thanks,
Mario Antunes
18 REPLIES 18
John Gillings
Honored Contributor

Re: %TIE-W-PSIG_WRONG and %TIE-W-PSIG_ADDR errors

Mario,

The _AV image should be a translated shareable image referenced from your program, just like the _TV images going from VAX to Alpha. I don't have an IA64 system to check on, so make sure you have SOME images with names ending in _AV in SYS$SHARE to make sure the translation environment is correctly installed.

That it's SECURESHRP is a bit suspicious. Is the program you're translating privileged in any way? If it is, you're unlikely to be able to successfully translate it.

What shareable images does the Alpha image reference?
A crucible of informative mistakes
Volker Halle
Honored Contributor

Re: %TIE-W-PSIG_WRONG and %TIE-W-PSIG_ADDR errors

Mario Antunes,

welcome to the OpenVMS ITRC forum.

Did you get any warning messages, when translating the Alpha image with AEST ?

On our OpenVMS I64 V8.2 system (with TIE V1.0 installed), there is no SYS$SHARE:SECURESHRP_AV.EXE, which may lead to the conclusion, that this shareable library is not being provided by the OpenVMS TIE environment.

To search for shareable iamges linked to your Alpha program, use:

$ PIPE ANAL/IMA imagename.exe | SEARCH SYS$PIPE "global section name"

Volker.

Re: %TIE-W-PSIG_WRONG and %TIE-W-PSIG_ADDR errors

John, Volker.

Thank you for the replies.

My program translates without errors:

IA64_sys> aest/list/exec=PNS37002.EXE PNS37002.EXE;3
IA64_sys> dir/since/date/size=all

Directory DISCO00:[NEW.EXE]

PNS37002.EXE;7 906/912 23-JAN-2008 10:40:13.33
PNS37002_AV.LIS;2 0/0 23-JAN-2008 10:40:08.78

>>> what shareable images does the Alpha image reference?

Alpha_sys> ANAL/IMAGE PNS37002.EXE/OUT=LOG.TXT
Alpha_sys> search log.txt "global section name"
global section name: "DEC$COBRTL_001"
global section name: "LIBRTL_001"
global section name: "LIBOTS2_001"
global section name: "LIBOTS_001"
global section name: "SMGSHR_001"
global section name: "SECURESHRP_001"
global section name: "SYS$BASE_IMAGE_001"
global section name: "SYS$PUBLIC_VECTORS_001"

(From the output of $ ANAL/IMAGE):

Shareable Image List

0) "DEC$COBRTL"
1) "LIBRTL"
2) "LIBOTS2"
3) "LIBOTS"
4) "SMGSHR"
5) "SECURESHRP"
6) "SYS$BASE_IMAGE"
7) "SYS$PUBLIC_VECTORS"

As you two suspected, my program calls a shareable image (SYS$LIBRARY:SECURESHRP.EXE) that has no _AV equivalent on the IA64 system.

Although *THERE IS* a SECURESHRP.EXE image on the IA64 system, I think it would be used if my program were compiled/linked instead of translated. Since my program was translated, the TIE environment looks for SECURESHRP_AV.EXE shareable image, right?


-Mario


Volker Halle
Honored Contributor

Re: %TIE-W-PSIG_WRONG and %TIE-W-PSIG_ADDR errors

Mario,

on our OpenVMS I64 V8.2 system (with TIE V1.0 installed), there are logicals for SECURESHRP_AV:

I64VMS $ sho log secure*

(LNM$PROCESS_TABLE)

"SECURESHRP_AV" = "SECURESHRP"
"SECURESHR_AV" = "SECURESHR"
"SECURESHR_TV_AV" = "SECURESHR_JACKET_AV"

...
(LNM$SYSTEM_TABLE)

"SECURESHRP_AV" = "SECURESHRP"
"SECURESHR_AV" = "SECURESHR"

SYLOGIN.COM invokes SYS$STARTUP:TIE$STARTUP to define the process logicals. The system-wide logicals are defined in VMS$INITIAL-050_VMS.COM.

Please check on your system.

Volker.
John Gillings
Honored Contributor

Re: %TIE-W-PSIG_WRONG and %TIE-W-PSIG_ADDR errors

Mario,

>global section name: "SECURESHRP_001"
>global section name: "SYS$BASE_IMAGE_001"

Your image is linked against SYS$BASE_IMAGE which might preclude it from being translated.

You need to check exactly how the original image was linked, and why it's linked against the base image. Then check the AEST documentation to make sure the image is eligible for translation.
A crucible of informative mistakes

Re: %TIE-W-PSIG_WRONG and %TIE-W-PSIG_ADDR errors

John,

Yes, the image was linked agaist SYS$BASE_IMAGE.

I re-linked it without /SYSEXE:
Alpha>LINK/nosysexe PNS37002,SNS37012,SNS37016

The shareable image list changed to:

Shareable Image List

0) "DEC$COBRTL"
1) "LIBRTL"
2) "LIBOTS2"
3) "LIBOTS"
4) "SMGSHR"
5) "SECURESHRP"
6) "SYS$PUBLIC_VECTORS"

Then, re-converted it on the IA64 system:

Alpha> copy PNS37002.EXE IA64_SYS::

IA64_SYS> aest/exe=PNS37002.EXE PNS37002.EXE;4
IA64_SYS> run PNS37002.EXE


%TIE-W-PSIG_WRONG, Wrong PSIG [000000007B2D0540] for SECURESHRP_AV[12]
%TIE-W-PSIG_ADDR, PSIG invalid address : 000000007B2D0540

John Gillings
Honored Contributor

Re: %TIE-W-PSIG_WRONG and %TIE-W-PSIG_ADDR errors

Mario,

Dumb question time...

> re-linked it without /SYSEXE:
>Alpha>LINK/nosysexe PNS37002,SNS37012,SNS37016

If you can relink this, does that mean you can recompile it?

If so, you should forget about converting the image, instead you should port it to IA64. Translating is really only for last-ditch-no-other-possibilities-exist situations.

However, if that's really not possible, we havn't yet worked out why your SECURESHRP_AV logical names aren't set correctly. Are you sure you've executed SYS$STARTUP:TIE$STARTUP ?

Have you successfully translated any other images?

Do you know what & why your program is accessing in SECURESHRP?
A crucible of informative mistakes
Hoff
Honored Contributor

Re: %TIE-W-PSIG_WRONG and %TIE-W-PSIG_ADDR errors

An even dumber dumb question: do you have the application source code?

If you do have the source code, then AEST and TIE are usually not the best approach. The results of AEST and TIE are supportable and sustainable without substantial investments; if the translated image contains one or more latent bugs and tips over for whatever the particular trigger, all (supportability) bets are somewhere between "off" and "really expensive."

Given that the image is linked against the OpenVMS executive, AEST and TIE are not likely even going to be an option here.
Tim E. Sneddon
Occasional Advisor

Re: %TIE-W-PSIG_WRONG and %TIE-W-PSIG_ADDR errors

I know this reply is a little late, but I was snooping around for something and noticed this is a problem I came across too.

The problem is actually with the I64 linker. It doesn't generate TIE signatures correctly due to some bad pointer arithmetic. So, SECURESHRP has bad argument signatures. TIE uses these to pass arguments back and forward between translated code.

If you're interested in all the gory details and/or a linker that works then let me know and I can post it.

Tim.