[ofw] Vista supported?

Jan Bottorff jbottorff at xsigo.com
Fri May 25 12:20:34 PDT 2007


I know the WinIB source tree will not compile with the Vista (or later)
WDK (at least will not compile for checked 32-bit platforms). The
problem is the compiler aborts when processing __ptr64 pointers inside a
structure. The WinIB stack uses this in LOTS of places. 

I'm not super optimistic about Microsoft fixing the compiler anytime
soon, because I also see compiler bugs in the code generation for
InterlockedAnd (and other Interlocked functions) that have been know for
more than a year, are not fixed. The most recent WDK betas seems to have
a fix for InterlockedAnd in the debug build, but the free build still
gets it wrong.

The following will reproduce the __ptr64 bug:

---------------------------------------------------------------
#include <ntddk.h>

struct {
      void (* __ptr64 funcPtr)(long val);
} *var1;




void test(long val)
{
	if (val == 0)
		return;

	// the following line crashes the 6000/6001 WDK 32-bit compiler
with
	// error C1001: An internal error has occurred in the compiler.
	var1->funcPtr(0);
}

NTSTATUS DriverEntry(PDRIVER_OBJECT  DriverObject, PUNICODE_STRING
RegistryPath)
{
	var1->funcPtr = &test;
	test(1);
	return STATUS_SUCCESS;
}
--------------------------------------------------------------

The InterlockedAnd bug shows up in code like:

// atomic test and clear
If (InterlockedAnd(&flag, 0)) {
	// this code never executes
	// InterlockedAnd is documented to return the old value
	// but actually returns the modified value
}

Binaries compiled using the W2k3 SP1 DDK can run on Vista, but doing
development on the latest tools is a serious problem. I view it a
Microsoft problem, since it was something in the Vista (and later) WDK
compiler that broke.

- Jan


-----Original Message-----
From: ofw-bounces at lists.openfabrics.org
[mailto:ofw-bounces at lists.openfabrics.org] On Behalf Of Mirko Benz
Sent: Friday, May 25, 2007 1:38 AM
To: ofw at lists.openfabrics.org
Subject: [ofw] Vista supported?

Hi,

What is the status of support for Vista? Should SRP work?

Regards,
Mirko
_______________________________________________
ofw mailing list
ofw at lists.openfabrics.org
http://lists.openfabrics.org/cgi-bin/mailman/listinfo/ofw



More information about the ofw mailing list