Author Topic: nguest2.exe (netop) fails to start  (Read 17582 times)

Pete

  • Hero Member
  • *****
  • Posts: 1281
  • Karma: +9/-0
    • View Profile
nguest2.exe (netop) fails to start
« on: March 24, 2019, 06:28:23 pm »
Hi All

I have a "headless" server which I control using netop.

I am booted from ArcaOS5.0.0+ (+ = various updates applied).

I have not used the server for a couple of weeks but last time I used it there was no problem running nguest2.exe to shutdown the server.

Today I booted the server to play a couple of media files (films). When I had watched the films I clicked on the nguest2 icon so that I could shutdown the "headless" server.

Nothing happened.

I opened a command window in \programs\netop and entered nguest2. The command window flashed - tried opening nguest2.exe I think - and that was it. No indication why nguest2.exe will not start...

After a couple more attempts and a bit of head scratching I had a look at popuplog.os2. I see a lot of these entries for nguest2.exe:-


03-24-2019  04:47:07  SYS3175  PID 0032  TID 0001  Slot 0065
J:\PROGRAMS\NETOP\NGUEST2.EXE
c0000005
d708e800
P1=00000001  P2=d708e800  P3=XXXXXXXX  P4=XXXXXXXX 
EAX=000e005b  EBX=000d0037  ECX=00000008  EDX=e3980000
ESI=00000077  EDI=d708e800 
DS=0053  DSACC=f0f3  DSLIM=ffffffff 
ES=0053  ESACC=f0f3  ESLIM=ffffffff 
FS=150b  FSACC=00f3  FSLIM=00000030
GS=0000  GSACC=****  GSLIM=********
CS:EIP=005b:d708e800  CSACC=f0df  CSLIM=ffffffff
SS:ESP=0053:000eff08  SSACC=f0f3  SSLIM=ffffffff
EBP=0000ff1a  FLG=00010212

------------------------------------------------------------

03-24-2019  05:01:01  SYS3175  PID 0031  TID 0001  Slot 0062
J:\PROGRAMS\NETOP\NGUEST2.EXE
c0000005
d708e800
P1=00000001  P2=d708e800  P3=XXXXXXXX  P4=XXXXXXXX 
EAX=000e005b  EBX=000d0037  ECX=00000008  EDX=e3980000
ESI=00000077  EDI=d708e800 
DS=0053  DSACC=f0f3  DSLIM=ffffffff 
ES=0053  ESACC=f0f3  ESLIM=ffffffff 
FS=150b  FSACC=00f3  FSLIM=00000030
GS=0000  GSACC=****  GSLIM=********
CS:EIP=005b:d708e800  CSACC=f0df  CSLIM=ffffffff
SS:ESP=0053:000eff08  SSACC=f0f3  SSLIM=ffffffff
EBP=0000ff1a  FLG=00010212

------------------------------------------------------------

03-24-2019  17:13:50  SYS3175  PID 0032  TID 0001  Slot 0017
J:\PROGRAMS\NETOP\NGUEST2.EXE
c0000005
d708e800
P1=00000001  P2=d708e800  P3=XXXXXXXX  P4=XXXXXXXX 
EAX=000e005b  EBX=000d0037  ECX=00000008  EDX=e3980000
ESI=00000077  EDI=d708e800 
DS=0053  DSACC=f0f3  DSLIM=ffffffff 
ES=0053  ESACC=f0f3  ESLIM=ffffffff 
FS=150b  FSACC=00f3  FSLIM=00000030
GS=0000  GSACC=****  GSLIM=********
CS:EIP=005b:d708e800  CSACC=f0df  CSLIM=ffffffff
SS:ESP=0053:000eff08  SSACC=f0f3  SSLIM=ffffffff
EBP=0000ff1a  FLG=00010212


Anyone have any idea why a program that used to run fine now throws a sys3175 instead?


Out of interest I booted my eCS2.2b2 installation. No problems running nguest2.exe from there.

There are very few differences between eCS2.2b2 and ArcaOS5.0.0+ - just a couple of "ArcaOS only" drivers. I modified eCS2.2b2 by adding those restricted drivers and rebooting. No change, nguest2.exe runs fine, so it it not a "acpi/snap/other restricted drivers" problem.

Any thoughts?


Regards

Pete
« Last Edit: March 24, 2019, 06:37:05 pm by Pete »

Lars

  • Hero Member
  • *****
  • Posts: 1271
  • Karma: +65/-0
    • View Profile
Re: nguest2.exe (netop) fails to start
« Reply #1 on: March 24, 2019, 07:27:41 pm »
One thing that looks really odd is that the CS,DS,ES,SS limits are 0xFFFFFFFF.
Can you crosscheck the values for VIRTUALADDRESSLIMIT that you have set for your ArcaOS and eCS installations ?
You might need to lower these values from say 3072 to 2048 or so.
I have set it to 2048 which results in a limit of 0x7FFFFFFF. If you set it to 3072 that should result in a limit of 0xBFFFFFFF and I think that is the maximum allowed value.

Pete

  • Hero Member
  • *****
  • Posts: 1281
  • Karma: +9/-0
    • View Profile
Re: nguest2.exe (netop) fails to start
« Reply #2 on: March 24, 2019, 09:00:51 pm »
Hi Lars

The above popuplog entries are with VIRTUALADDRESSLIMIT=2048

Changing that to 3072 - value used by eCS2.2b2 - and rebooting results in

03-24-2019  19:49:19  SYS3175  PID 0031  TID 0001  Slot 0066
J:\PROGRAMS\NETOP\NGUEST2.EXE
c0000005
d708e800
P1=00000001  P2=d708e800  P3=XXXXXXXX  P4=XXXXXXXX 
EAX=000e005b  EBX=000d0037  ECX=00000008  EDX=e3980000
ESI=00000077  EDI=d708e800 
DS=0053  DSACC=f0f3  DSLIM=ffffffff 
ES=0053  ESACC=f0f3  ESLIM=ffffffff 
FS=150b  FSACC=00f3  FSLIM=00000030
GS=0000  GSACC=****  GSLIM=********
CS:EIP=005b:d708e800  CSACC=f0df  CSLIM=ffffffff
SS:ESP=0053:000eff08  SSACC=f0f3  SSLIM=ffffffff
EBP=0000ff1a  FLG=00010212


Looks pretty much the same as when using VIRTUALADDRESSLIMIT=2048

It is a long time since I installed netop and I cannot find the cd at the moment otherwise I would try a reinstall and see if that changes anything.


Regards

Pete

Lars

  • Hero Member
  • *****
  • Posts: 1271
  • Karma: +65/-0
    • View Profile
Re: nguest2.exe (netop) fails to start
« Reply #3 on: March 25, 2019, 07:50:50 am »
Then there must be a bug in the ArcaOS kernel. The limit for DS,ES,SS,CS in user mode should NEVER EVER cover the whole possible address space. There always has to be some address space for PCI bus and video aperture and kernel data structures.

The only GDT descriptors that have a limit across the whole address range are the DS and CS flat descriptors used in kernel mode.

As a test you could try the eCS kernel (14.106 SMP) on the ArcaOS installation.

What you could also do is install Theseus and have a look at the GDT. If the limits are plausible, that is, far below 0xFFFFFFFF (don't forget that you need to append FFF to the limit for any GDT selector marked with G=1) then the formatting of the trap screen register contents would be wrong but I doubt that.
« Last Edit: March 25, 2019, 08:05:17 am by Lars »

Lars

  • Hero Member
  • *****
  • Posts: 1271
  • Karma: +65/-0
    • View Profile
Re: nguest2.exe (netop) fails to start
« Reply #4 on: March 25, 2019, 01:32:29 pm »
There is another issue that is extremely odd:

EDI contains the same address as EIP. Obviously there was a function call via a function pointer (saved in EDI).
But the address of 0xd708e800 looks like complete bogus (it is located outside of the normal private or shared memory regions, even the high memory regions would not cover that address).

Looks like the OS memory management is completely screwed up.

Pete

  • Hero Member
  • *****
  • Posts: 1281
  • Karma: +9/-0
    • View Profile
Re: nguest2.exe (netop) fails to start
« Reply #5 on: March 25, 2019, 04:26:54 pm »
Hi Lars

As an experiment I have already installed the ArcaOS kernel 14.201, acpi 3.23.06 and SNAP to the eCS2.2b2 installation to test if any of those are involved.
Result: No problems running nguest2.

The problem seems to be fairly recent in that nguest2 has previously worked on the ArcaOS installation although I cannot state exactly how long ago I last ran nguest2 on ArcaOS - could be a couple of months.

In that time the only real changes that I can remember are installing the latest AOO release, updating sane, updating Seamonkey and, of course, all the "nixy" library bits required.

As netop does not use the "nixy bits" none of those updates should cause problems directly.

When it comes to using Thesus4 I must admit to being fairly ignorant. There are a few G=1 lines, here is a small block

GDT(004A) Data    Base=00000000 Limit=FFFFF DPL=2 ED=0  W=1 A=1 P=1 G=1 B=1 Alias
GDT(0053) Data    Base=00000000 Limit=FFFFF DPL=3 ED=0  W=1 A=1 P=1 G=1 B=1 Alias
GDT(005A) Code    Base=00000000 Limit=FFFFF DPL=2 CF=1  R=1 A=1 P=1 G=1 D=1 Alias
GDT(0063) Data    Base=00000000 Limit=FFFFF DPL=3 ED=0  W=1 A=0 P=1 G=1 B=1 Alias
GDT(006B) Data    Base=00000000 Limit=FFFFF DPL=3 ED=0  W=1 A=1 P=1 G=1 B=1 Alias

There are several other G=1 lines  with Base=00000000 Limit=FFFFF

Does the above tell us anything important?


Regards

Pete




Lars

  • Hero Member
  • *****
  • Posts: 1271
  • Karma: +65/-0
    • View Profile
Re: nguest2.exe (netop) fails to start
« Reply #6 on: March 25, 2019, 04:51:38 pm »
Yes, it tells us that indeed the trap register display is in line with what Theseus reports for the descriptors in use by DS,ES,SS,CS (you picked the correct ones).
However, as I said, these limit values should NEVER appear.

The only thing I can think of is QSINIT or ArcaOS'es equivalent thereof. With the original QSINIT (that I use under eComStation) I still do not see these weird values.

Have you checked what the eCS installation will tell you when you run Theseus ?

Roderick Klein

  • Hero Member
  • *****
  • Posts: 655
  • Karma: +14/-0
    • View Profile
Re: nguest2.exe (netop) fails to start
« Reply #7 on: March 25, 2019, 05:31:09 pm »
I can hardly imagen this is the kernel it starts here on ArcaOS nguest 6.5. What version of nguest are you running 6.5 ? And you have the driver installed in the config.sys ?

Roderick

Pete

  • Hero Member
  • *****
  • Posts: 1281
  • Karma: +9/-0
    • View Profile
Re: nguest2.exe (netop) fails to start
« Reply #8 on: March 25, 2019, 06:01:03 pm »
Hi Roderick

Netop 6.5, yes nguest2.sys is in config.sys and reports as loading successfully during boot, nguest2 has previously worked on this system.

Out of interest I have tried running nhost2 - after adding the driver to config.sys and rebooting - which also fails to start with this in popuplog:-

J:\PROGRAMS\NETOP\NHOST2.EXE
c0000005
d708e800
P1=00000001  P2=d708e800  P3=XXXXXXXX  P4=XXXXXXXX 
EAX=000f005b  EBX=000a0037  ECX=00000008  EDX=e3980000
ESI=0000007f  EDI=d708e800 
DS=0053  DSACC=f0f3  DSLIM=ffffffff 
ES=0053  ESACC=f0f3  ESLIM=ffffffff 
FS=150b  FSACC=00f3  FSLIM=00000030
GS=0000  GSACC=****  GSLIM=********
CS:EIP=005b:d708e800  CSACC=f0df  CSLIM=ffffffff
SS:ESP=0053:000fe604  SSACC=f0f3  SSLIM=ffffffff
EBP=0000e614  FLG=00010216


That looks the same as the nguest2 popuplog entries - except for the EAX value as nguest2 shows EAX=000e005b.

I am wondering if netop has lost Registration details... but, if it had then I am sure it would not work from the eCS2.2b2 installation. I am not aware how netop stores Registration details but guess it must be internal as there does not seem to be any file containing the details. I installed netop to eCS1.2 many years ago and have not needed to Register again when eCS was updated - several times - and do not remember having to Register again to use netop with ArcaOS.


Regards

Pete
« Last Edit: March 25, 2019, 06:08:40 pm by Pete »

Pete

  • Hero Member
  • *****
  • Posts: 1281
  • Karma: +9/-0
    • View Profile
Re: nguest2.exe (netop) fails to start
« Reply #9 on: March 25, 2019, 06:18:00 pm »
Hi Lars

Booted from ecs2.2b2

Here is the Thesus output which looks the same to me - presuming I have selected the correct lines

GDT(004A) Data    Base=00000000 Limit=FFFFF DPL=2 ED=0  W=1 A=1 P=1 G=1 B=1 Alias
GDT(0053) Data    Base=00000000 Limit=FFFFF DPL=3 ED=0  W=1 A=1 P=1 G=1 B=1 Alias
GDT(005A) Code    Base=00000000 Limit=FFFFF DPL=2 CF=1  R=1 A=1 P=1 G=1 D=1 Alias
GDT(0063) Data    Base=00000000 Limit=FFFFF DPL=3 ED=0  W=1 A=0 P=1 G=1 B=1 Alias
GDT(006B) Data    Base=00000000 Limit=FFFFF DPL=3 ED=0  W=1 A=1 P=1 G=1 B=1 Alias



Is QSINIT some sort of boot loader? - I remember seeing the name floating around but have not tried it.


Regards

Pete



Roderick Klein

  • Hero Member
  • *****
  • Posts: 655
  • Karma: +14/-0
    • View Profile
Re: nguest2.exe (netop) fails to start
« Reply #10 on: March 25, 2019, 07:34:56 pm »
Hi Roderick

Netop 6.5, yes nguest2.sys is in config.sys and reports as loading successfully during boot, nguest2 has previously worked on this system.

Out of interest I have tried running nhost2 - after adding the driver to config.sys and rebooting - which also fails to start with this in popuplog:-

J:\PROGRAMS\NETOP\NHOST2.EXE
c0000005
d708e800
P1=00000001  P2=d708e800  P3=XXXXXXXX  P4=XXXXXXXX 
EAX=000f005b  EBX=000a0037  ECX=00000008  EDX=e3980000
ESI=0000007f  EDI=d708e800 
DS=0053  DSACC=f0f3  DSLIM=ffffffff 
ES=0053  ESACC=f0f3  ESLIM=ffffffff 
FS=150b  FSACC=00f3  FSLIM=00000030
GS=0000  GSACC=****  GSLIM=********
CS:EIP=005b:d708e800  CSACC=f0df  CSLIM=ffffffff
SS:ESP=0053:000fe604  SSACC=f0f3  SSLIM=ffffffff
EBP=0000e614  FLG=00010216


That looks the same as the nguest2 popuplog entries - except for the EAX value as nguest2 shows EAX=000e005b.

I am wondering if netop has lost Registration details... but, if it had then I am sure it would not work from the eCS2.2b2 installation. I am not aware how netop stores Registration details but guess it must be internal as there does not seem to be any file containing the details. I installed netop to eCS1.2 many years ago and have not needed to Register again when eCS was updated - several times - and do not remember having to Register again to use netop with ArcaOS.


Regards

Pete

1. Reinstalling will most likely not resolve the issue as OS/2 a lot of OS/2 software has its set of INI files or store very little settings.

2. I used to sell and support Netop on OS/2 at Mensys. One thing I do remember is that your registration code is stored in NGUEST2.CFG. Since it only reads the file chances are it being damaged are very small.

Roderick

Pete

  • Hero Member
  • *****
  • Posts: 1281
  • Karma: +9/-0
    • View Profile
Re: nguest2.exe (netop) fails to start
« Reply #11 on: March 25, 2019, 09:09:08 pm »
Hi Roderick

I thought the *.cfg files, which are generated when nguest2 or nhost2 are run the 1st time, stored only the guest and host configuration data. Difficult to tell as it is encoded.

I copied nguest2.cfg to nguest2.cfg.old and then deleted nguest2.cfg.

No problem starting nguest2 (booted from eCS2.2b2), no request for Registration details - and no existing connection details. I think nguest2.cfg just stores connection data not Registration details.


As eCS2.2b2 is using the same kernel, os2ldr, acpi and snap packages as ArcaOS it seems to rule those out as a source of the problem. Not sure what else to try...


Regards

Pete

Lars

  • Hero Member
  • *****
  • Posts: 1271
  • Karma: +65/-0
    • View Profile
Re: nguest2.exe (netop) fails to start
« Reply #12 on: March 26, 2019, 04:06:27 pm »
Have you (accidentally or intentionally) marked the executable (nguest2 or nhost2) to load into high memory ?
If yes, you shouldn't. Never. That will only ever work for DLLs. But in your case, also check what DLLs are loaded by nguest2 / nhost2 and make sure for now that these DO NOT load into high memory. Neither the data segments nor the code segments.

As I said, the EIP of the trap location looks extremely weird. In fact, it makes no sense at all.

Pete

  • Hero Member
  • *****
  • Posts: 1281
  • Karma: +9/-0
    • View Profile
Re: nguest2.exe (netop) fails to start
« Reply #13 on: March 26, 2019, 10:35:56 pm »
Hi Lars

No, none of the netop files are marked to load into high memory.

Looking at the output of PMDll there is no problem running nguest2.exe - apart from 1 netop supplied dll all support files involved are standard OS/2 dll files which I certainly have not marked to load high.

Guess I can work through the list of dlls involved and see whether some of them have changed between eCS2.2b2 and ArcaOS.


Regards

Pete



Lars

  • Hero Member
  • *****
  • Posts: 1271
  • Karma: +65/-0
    • View Profile
Re: nguest2.exe (netop) fails to start
« Reply #14 on: March 27, 2019, 09:10:01 am »
ok, I'll take it.
I am beginning to believe that the SMP kernel has at least one massive bug in the memory management (and another one we know already: shared high memory space allocated by DLLs is not freed if the DLLs are unloaded).
Probably introduced when high memory support was added. And the more applications make use of high memory (like Thunderbird and Firefox, to name just the most prominent) the more likely these errors pop up.

Unfortunately, Windows 10 is a lot more stable than OS/2 these days.
Of course, that does not help ...
« Last Edit: March 27, 2019, 03:05:41 pm by Lars »