OS2 World Community Forum

OS/2, eCS & ArcaOS - Technical => Hardware => Topic started by: Remy on November 20, 2021, 11:25:59 pm

Title: New ArcaOS USB driver.
Post by: Remy on November 20, 2021, 11:25:59 pm
I just installed the new available USB driver from ArcaOS.
At end of WPS start, my system got a TRAP 000D in module OS2DASD
(all time).
After investifation and because it is into OS2DASD, I remember having left my USB key plugged into my USB3 port.
I unplugged it and ArcaOS started fine !
All drivers/modules/wps at latest level (no update available under ANPM) - ArcaOS 5.0.2

It looks like a new bug!

rem: About the usb key
        Patriot Supersonic Rage Prime 1Tb USB 3.2 key (NTFS formatted but NTFS driver not installed)

Any idea about the culprit ?
a/ New USB drivers
b/ OS2DASD

Regards.
Rémy   
Title: Re: New ArcaOS USB driver.
Post by: Dariusz Piatkowski on November 21, 2021, 12:21:44 am
Hi Remy,

Given that the trap occurs in DASD, could it be something related to the size of the USB3 attached volume, or perhpas even simpler like the returned device parameters that cause the OS2DASD driver to missinterpret and TRAP?
Title: Re: New ArcaOS USB driver.
Post by: Dave Yeo on November 21, 2021, 01:33:31 am
I just installed the new available USB driver from ArcaOS.
At end of WPS start, my system got a TRAP 000D in module OS2DASD
(all time).
After investifation and because it is into OS2DASD, I remember having left my USB key plugged into my USB3 port.
I unplugged it and ArcaOS started fine !
All drivers/modules/wps at latest level (no update available under ANPM) - ArcaOS 5.0.2

It looks like a new bug!

rem: About the usb key
        Patriot Supersonic Rage Prime 1Tb USB 3.2 key (NTFS formatted but NTFS driver not installed)

Any idea about the culprit ?
a/ New USB drivers
b/ OS2DASD

Regards.
Rémy

File an issue at Arca Noae as that sounds like a show stopper, at least assuming you have the stock OS2DASD.
Title: Re: New ArcaOS USB driver.
Post by: Remy on November 23, 2021, 01:33:59 am
I opened a ticket.
After more test, the trap occurs only at end of wps with my usb key plugged in.
When starting without this key and putting it in after the boot ended and wps is fully up, no trap and the usb key is mounted...
It looks like something else could be culprit... investigating more with support... 
Title: Re: New ArcaOS USB driver.
Post by: Lars on November 24, 2021, 08:52:21 am
What version is "the new USB driver"?
Title: Re: New ArcaOS USB driver.
Post by: Mike Kölling on November 24, 2021, 11:10:26 am
What version is "the new USB driver"?
Hello Lars,

version is 12.10

Regards
Mike
Title: Re: New ArcaOS USB driver.
Post by: Lars on November 24, 2021, 03:47:51 pm
Yes, I saw that 12.10 is out. Ok, let's assume that is the version that Remy is talking about ...

I am just too lazy to update stuff that still does not work reliably. But maybe I'll give it a try in a VM (ArcaOS guest) and see if it solves that problems that I have in a VM.
Title: Re: New ArcaOS USB driver.
Post by: Remy on November 24, 2021, 07:34:53 pm
Yes, I saw that 12.10 is out. Ok, let's assume that is the version that Remy is talking about ...

I am just too lazy to update stuff that still does not work reliably. But maybe I'll give it a try in a VM (ArcaOS guest) and see if it solves that problems that I have in a VM.

Yes,
v12.10
Title: Re: New ArcaOS USB driver.
Post by: Lars on November 25, 2021, 01:19:14 am
The error happens here in OS2DASD.DMD, in routine "VOID _loadds FAR NotifyDoneIORB (fpIORB)":

...
   if ( ((PRPH)pDMWork->pRequest)->Cmd == PB_REQ_LIST)
      NotifyDoneIORB_RLE(pIORB, (PPB_Read_Write) pDMWork->pRequest, pUnitCB);
   else
   {
      NotifyDoneIORB_RP (pIORB, (PBYTE) pDMWork->pRequest, pUnitCB);
   }
...

It happens because "pDMWork->pRequest" is NULL. This is an error within OS2DASD.DMD because it should itself save a request packet pointer to "pRequest" (it is not the ADD [USBMSD.ADD in this case] calling into OS2DASD.DMD, invoking this routine, that sets this pointer, but rather OS2DASD.DMD itself).

The only fix I see is to update OS2DASD.DMD to check if that pointer has a valid value:

if ((PRPH)pDMWork->pRequest)
{
   if ( ((PRPH)pDMWork->pRequest)->Cmd == PB_REQ_LIST)
      NotifyDoneIORB_RLE(pIORB, (PPB_Read_Write) pDMWork->pRequest, pUnitCB);
   else
   {
      NotifyDoneIORB_RP (pIORB, (PBYTE) pDMWork->pRequest, pUnitCB);
   }
}

One of the gazillion bugs that still linger in OS/2 code ...

Cheers,
Lars
Title: Re: New ArcaOS USB driver.
Post by: Remy on November 25, 2021, 02:47:48 am
The error happens here in OS2DASD.DMD, in routine "VOID _loadds FAR NotifyDoneIORB (fpIORB)":

...
   if ( ((PRPH)pDMWork->pRequest)->Cmd == PB_REQ_LIST)
      NotifyDoneIORB_RLE(pIORB, (PPB_Read_Write) pDMWork->pRequest, pUnitCB);
   else
   {
      NotifyDoneIORB_RP (pIORB, (PBYTE) pDMWork->pRequest, pUnitCB);
   }
...

It happens because "pDMWork->pRequest" is NULL. This is an error within OS2DASD.DMD because it should itself save a request packet pointer to "pRequest" (it is not the ADD [USBMSD.ADD in this case] calling into OS2DASD.DMD, invoking this routine, that sets this pointer, but rather OS2DASD.DMD itself).

The only fix I see is to update OS2DASD.DMD to check if that pointer has a valid value:

if ((PRPH)pDMWork->pRequest)
{
   if ( ((PRPH)pDMWork->pRequest)->Cmd == PB_REQ_LIST)
      NotifyDoneIORB_RLE(pIORB, (PPB_Read_Write) pDMWork->pRequest, pUnitCB);
   else
   {
      NotifyDoneIORB_RP (pIORB, (PBYTE) pDMWork->pRequest, pUnitCB);
   }
}

One of the gazillion bugs that still linger in OS/2 code ...

Cheers,
Lars

Great Lars,

I checked OS2DASD.DMD bldlevel and it is the same under ArcaOS 5.0.2 or 5.0.6
| Build Level Display Facility Version 6.12.675 Sep 25 2001
| (C) Copyright IBM Corporation 1993-2001
| Signature:       @#IBM:14.105#@ IBM DASD Manager
| Vendor:          IBM
| Revision:        14.105
| File Version:    14.105
| Description:     IBM DASD Manager

Regards
Rémy
Title: Re: New ArcaOS USB driver.
Post by: Lars on November 25, 2021, 12:59:42 pm
I can build a test version of OS2DASD.DMD to prove that the error can at least be circumvented in the described way (it's a good question what consequences this error has on system behaviour as it should not occur in the first place).

However, there is the other problem that ArcaNoae will likely not be able to distribute a fixed version of OS2DASD.DMD due to legal reasons.

But maybe you can add this info to your ticket and AN can deduce what they need to do so that this error will never occur.
Title: Re: New ArcaOS USB driver.
Post by: Remy on November 25, 2021, 08:29:06 pm
I can build a test version of OS2DASD.DMD to prove that the error can at least be circumvented in the described way (it's a good question what consequences this error has on system behaviour as it should not occur in the first place).

However, there is the other problem that ArcaNoae will likely not be able to distribute a fixed version of OS2DASD.DMD due to legal reasons.

But maybe you can add this info to your ticket and AN can deduce what they need to do so that this error will never occur.

Hi Lars,
If could you provide a test build, I agree to give it a try.

AN informed.
Regards
Rémy
Title: Re: New ArcaOS USB driver.
Post by: Lars on November 25, 2021, 10:48:11 pm
I'll try and knock it together. As time permits.
Title: Re: New ArcaOS USB driver.
Post by: Lars on November 27, 2021, 03:40:49 pm
I have that test version ready. Bumped up the version number to 14.106 so as to avoid confusion.
Where do you want me to send it to ?

Lars
Title: Re: New ArcaOS USB driver.
Post by: Remy on November 27, 2021, 08:58:52 pm
I have that test version ready. Bumped up the version number to 14.106 so as to avoid confusion.
Where do you want me to send it to ?

Lars

Hi Lars, nice
You can use my email (PM sent)
Regards

Rémy
Title: Re: New ArcaOS USB driver.
Post by: Lars on November 28, 2021, 02:43:58 pm
Sent to your private email.
Title: Re: New ArcaOS USB driver.
Post by: Remy on November 30, 2021, 01:58:42 pm
Received.

Thanks,
My internet optical fiber is currently down (broken) until 7 december !

Regards
Title: Re: New ArcaOS USB driver.
Post by: Remy on December 10, 2021, 06:08:13 pm
Hi Lars,

Your driver resolves the trap 000D
Fine.

Regards
Rémy
Title: Re: New ArcaOS USB driver.
Post by: Lars on December 11, 2021, 12:34:02 pm
Hi Lars,

Your driver resolves the trap 000D
Fine.

Regards
Rémy

Thanks for the feedback. as I had written to you, for as long as you use the test driver, keep an eye on your system behaviour. OS2DASD.DMD is a critical system driver.

Lars