Server 2003 Problems

I know that everyone’s probably battling with Windows 7 at the moment, but I’m having a problem with one of my SCSI tape drivers (for IBM3590) under Windows Server 2003 (4GB memory, PAE enabled). It works fine under NT4/XP/Vista but fails with Server 2003.

I allocate 4MB of contiguous memory (which is successfully allocated by a different driver at startup) prior to issuing a SCSI read. All SCSI reads fail if the read length is more than 65536 bytes (64KB) with “insufficient resources” status. I have tried the Adaptec 2944UW and the LSI logic 53C875 SCSI adapters. The IBM3590 device can handle up to 2MB block size.

Does anyone know of the significant differences between W2K/XP/Vista and Windows Server 2003, which might cause this tape driver or the adapter drivers to fail?
Does the PAE (PhysicalAddressExtension) affect the way drivers are written?

Regards, Richard.

xxxxx@compuserve.com wrote:

I know that everyone’s probably battling with Windows 7 at the moment, but I’m having a problem with one of my SCSI tape drivers (for IBM3590) under Windows Server 2003 (4GB memory, PAE enabled). It works fine under NT4/XP/Vista but fails with Server 2003.

I allocate 4MB of contiguous memory (which is successfully allocated by a different driver at startup) prior to issuing a SCSI read. All SCSI reads fail if the read length is more than 65536 bytes (64KB) with “insufficient resources” status. I have tried the Adaptec 2944UW and the LSI logic 53C875 SCSI adapters. The IBM3590 device can handle up to 2MB block size.

Does anyone know of the significant differences between W2K/XP/Vista and Windows Server 2003, which might cause this tape driver or the adapter drivers to fail?

Yes. W2K/XP/Vista will refuse to recognize any memory with a physical
address above the 4GB mark. Because there has to be an aperture below
4GB for PCI devices, if you have 4GB RAM, then you are guaranteed that
some of your physical RAM sits above 4GB. If you check the available
RAM in XP, you’ll see that it’s 3.5GB, or something like that.

WS2003, on the other hand, is happy to use memory above the 4GB mark.
That means that some memory has physical addresses larger than 32 bits.
DMA devices that do not handle 64-bit addresses need to use “jump
buffers”, where the data is copied to buffers below 4GB for transfer. I
believe the system only allocates 64k bytes of jump buffers, which looks
like a suspicious number. All 1394 drivers have this issue, but I had
not heard of this with SCSI before.

When you allocate your contiguous memory, are you asking for it below 4GB?


Tim Roberts, xxxxx@probo.com
Providenza & Boekelheide, Inc.

Yes - I’m allocating below 4GB:

PHYSICAL_ADDRESS highest;
highest.LowPart = 0xFFFFFFFF;
highest.HighPart = 0x00000000;
drvext->svaddr = MmAllocateContiguousMemory( drvext->svlen, highest );

> Yes. W2K/XP/Vista will refuse to recognize any memory with a physical

address above the 4GB mark.

w2k
XP 32bit
2003 Web Edition 32bit
Vista 32bit


Maxim S. Shatskih
Windows DDK MVP
xxxxx@storagecraft.com
http://www.storagecraft.com

What is the maximum transfer length reported by the adapter your tape driver is attaching to?

-p

-----Original Message-----
From: xxxxx@lists.osr.com [mailto:xxxxx@lists.osr.com] On Behalf Of xxxxx@compuserve.com
Sent: Monday, June 01, 2009 9:32 AM
To: Windows System Software Devs Interest List
Subject: [ntdev] Server 2003 Problems

I know that everyone’s probably battling with Windows 7 at the moment, but I’m having a problem with one of my SCSI tape drivers (for IBM3590) under Windows Server 2003 (4GB memory, PAE enabled). It works fine under NT4/XP/Vista but fails with Server 2003.

I allocate 4MB of contiguous memory (which is successfully allocated by a different driver at startup) prior to issuing a SCSI read. All SCSI reads fail if the read length is more than 65536 bytes (64KB) with “insufficient resources” status. I have tried the Adaptec 2944UW and the LSI logic 53C875 SCSI adapters. The IBM3590 device can handle up to 2MB block size.

Does anyone know of the significant differences between W2K/XP/Vista and Windows Server 2003, which might cause this tape driver or the adapter drivers to fail?
Does the PAE (PhysicalAddressExtension) affect the way drivers are written?

Regards, Richard.


NTDEV is sponsored by OSR

For our schedule of WDF, WDM, debugging and other seminars visit:
http://www.osr.com/seminars

To unsubscribe, visit the List Server section of OSR Online at http://www.osronline.com/page.cfm?name=ListServer

Device max is 2MB
Adapter max is 4GB-1
Adapter max pages 16