NDIS Miniports and INF versioning

Hey all,

I took a look through our NDIS miniport drivers today and I noticed a
difference in the versioning scheme. One of the drivers’ INF file looks like
this:

DriverVer = 08/05/2008,1.0.0.2

and another like this:

DriverVer = 11/01/2008,6.0.0.1

I seem to recall that the documentation at one point said that Microsoft had
reserved all version numbers below 6.x.x.x, but when trying to find proof in
the latest WDK docs I wound up with nothing.

Does anybody remember if there’s any specific rule to this?

Thanks,

Soren

MSFT has no business with your driver’s version, nor do they care. It does have requirement on driver date to be later than certain.

Yeah, that makes sense. I wonder where I got that idea from then :S

What will happen if I change the driver with the 6.x.x.x version number to a
1.x.x.x number and I want to upgrade an existing installation? Will Windows
consider the driver with the most recent timestamp the newest driver despite
it having a lower version number than the driver that’s already installed?

/ Soren

-----Original Message-----
From: xxxxx@lists.osr.com
[mailto:xxxxx@lists.osr.com] On Behalf Of xxxxx@yahoo.ca
Sent: Thursday, June 03, 2010 11:52 PM
To: Windows System Software Devs Interest List
Subject: RE:[ntdev] NDIS Miniports and INF versioning

MSFT has no business with your driver’s version, nor do they care. It does
have requirement on driver date to be later than certain.


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

The date part of the version field will first be used to determine newer vs
older drivers. The version number will then be used for driver with the same
date (like two builds done during development). During development, it’s
useful to use the stampinf option to set the version number to a timestamp,
as those will increment. For a release to customers (and QA) the version is
often built from something related to your source code revision system
version.

Jan

-----Original Message-----
From: xxxxx@lists.osr.com [mailto:bounce-413547-
xxxxx@lists.osr.com] On Behalf Of Soren Dreijer
Sent: Friday, June 04, 2010 7:40 AM
To: Windows System Software Devs Interest List
Subject: RE: [ntdev] NDIS Miniports and INF versioning

Yeah, that makes sense. I wonder where I got that idea from then :S

What will happen if I change the driver with the 6.x.x.x version number
to a
1.x.x.x number and I want to upgrade an existing installation? Will
Windows
consider the driver with the most recent timestamp the newest driver
despite
it having a lower version number than the driver that’s already
installed?

/ Soren

-----Original Message-----
From: xxxxx@lists.osr.com
[mailto:xxxxx@lists.osr.com] On Behalf Of
xxxxx@yahoo.ca
Sent: Thursday, June 03, 2010 11:52 PM
To: Windows System Software Devs Interest List
Subject: RE:[ntdev] NDIS Miniports and INF versioning

MSFT has no business with your driver’s version, nor do they care. It
does
have requirement on driver date to be later than certain.


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


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

Got it! Sounds like I’d better get those version numbers fixed then! :slight_smile:

Thanks all.

-----Original Message-----
From: xxxxx@lists.osr.com
[mailto:xxxxx@lists.osr.com] On Behalf Of Jan Bottorff
Sent: Friday, June 04, 2010 10:05 AM
To: Windows System Software Devs Interest List
Subject: RE: [ntdev] NDIS Miniports and INF versioning

The date part of the version field will first be used to determine newer vs
older drivers. The version number will then be used for driver with the same
date (like two builds done during development). During development, it’s
useful to use the stampinf option to set the version number to a timestamp,
as those will increment. For a release to customers (and QA) the version is
often built from something related to your source code revision system
version.

Jan

-----Original Message-----
From: xxxxx@lists.osr.com [mailto:bounce-413547-
xxxxx@lists.osr.com] On Behalf Of Soren Dreijer
Sent: Friday, June 04, 2010 7:40 AM
To: Windows System Software Devs Interest List
Subject: RE: [ntdev] NDIS Miniports and INF versioning

Yeah, that makes sense. I wonder where I got that idea from then :S

What will happen if I change the driver with the 6.x.x.x version
number to a 1.x.x.x number and I want to upgrade an existing
installation? Will Windows consider the driver with the most recent
timestamp the newest driver despite it having a lower version number
than the driver that’s already installed?

/ Soren

-----Original Message-----
From: xxxxx@lists.osr.com
[mailto:xxxxx@lists.osr.com] On Behalf Of
xxxxx@yahoo.ca
Sent: Thursday, June 03, 2010 11:52 PM
To: Windows System Software Devs Interest List
Subject: RE:[ntdev] NDIS Miniports and INF versioning

MSFT has no business with your driver’s version, nor do they care. It
does have requirement on driver date to be later than certain.


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


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


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

Soren Dreijer wrote:

I took a look through our NDIS miniport drivers today and I noticed a
difference in the versioning scheme. One of the drivers’ INF file
looks like this:

DriverVer = 08/05/2008,1.0.0.2

and another like this:

DriverVer = 11/01/2008,6.0.0.1

I seem to recall that the documentation at one point said that
Microsoft had reserved all version numbers below 6.x.x.x, but when
trying to find proof in the latest WDK docs I wound up with nothing.

Does anybody remember if there’s any specific rule to this?

There is (or was) a rather complicated rule for the version numbering of
display drivers, to indicate which Direct3D version they support. None
of the other device classes have rules.


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

The documentation isn’t so bad too :slight_smile:
http://msdn.microsoft.com/en-us/library/ff547394(VS.85).aspx

(Note that the above doc is generic across all device classes - some classes, like Audio, have more specific requirements here http://msdn.microsoft.com/en-us/library/ff538722(VS.85).aspx).

BTW, much to some people’s surprise, the version and date are only considered as a last resort when evaluating which driver to install. For example, a better-matching PNPID will always trump a higher version number. The evaluation algorithm is documented in overwhelming detail here: http://msdn.microsoft.com/en-us/library/ff549553(v=VS.85).aspx.

-----Original Message-----
From: xxxxx@lists.osr.com [mailto:xxxxx@lists.osr.com] On Behalf Of Soren Dreijer
Sent: Friday, June 04, 2010 8:16 AM
To: Windows System Software Devs Interest List
Subject: RE: [ntdev] NDIS Miniports and INF versioning

Got it! Sounds like I’d better get those version numbers fixed then! :slight_smile:

Thanks all.

-----Original Message-----
From: xxxxx@lists.osr.com
[mailto:xxxxx@lists.osr.com] On Behalf Of Jan Bottorff
Sent: Friday, June 04, 2010 10:05 AM
To: Windows System Software Devs Interest List
Subject: RE: [ntdev] NDIS Miniports and INF versioning

The date part of the version field will first be used to determine newer vs older drivers. The version number will then be used for driver with the same date (like two builds done during development). During development, it’s useful to use the stampinf option to set the version number to a timestamp, as those will increment. For a release to customers (and QA) the version is often built from something related to your source code revision system version.

Jan

-----Original Message-----
From: xxxxx@lists.osr.com [mailto:bounce-413547-
xxxxx@lists.osr.com] On Behalf Of Soren Dreijer
Sent: Friday, June 04, 2010 7:40 AM
To: Windows System Software Devs Interest List
Subject: RE: [ntdev] NDIS Miniports and INF versioning

Yeah, that makes sense. I wonder where I got that idea from then :S

What will happen if I change the driver with the 6.x.x.x version
number to a 1.x.x.x number and I want to upgrade an existing
installation? Will Windows consider the driver with the most recent
timestamp the newest driver despite it having a lower version number
than the driver that’s already installed?

/ Soren

-----Original Message-----
From: xxxxx@lists.osr.com
[mailto:xxxxx@lists.osr.com] On Behalf Of
xxxxx@yahoo.ca
Sent: Thursday, June 03, 2010 11:52 PM
To: Windows System Software Devs Interest List
Subject: RE:[ntdev] NDIS Miniports and INF versioning

MSFT has no business with your driver’s version, nor do they care. It
does have requirement on driver date to be later than certain.


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


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


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


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

Jeffrey,

As I wrote in my initial post, I had already looked through the docs and
hadn’t been able to find anything that supported the memory I seemed to have
gathered from somewhere, hence why I turned to NTDEV to make sure I just
wasn’t browsing the docs incorrectly.

Soren

-----Original Message-----
From: xxxxx@lists.osr.com
[mailto:xxxxx@lists.osr.com] On Behalf Of Jeffrey Tippet
Sent: Friday, June 04, 2010 6:44 PM
To: Windows System Software Devs Interest List
Subject: RE: [ntdev] NDIS Miniports and INF versioning

The documentation isn’t so bad too :slight_smile:
http://msdn.microsoft.com/en-us/library/ff547394(VS.85).aspx

(Note that the above doc is generic across all device classes - some
classes, like Audio, have more specific requirements here
http://msdn.microsoft.com/en-us/library/ff538722(VS.85).aspx).

BTW, much to some people’s surprise, the version and date are only
considered as a last resort when evaluating which driver to install. For
example, a better-matching PNPID will always trump a higher version number.
The evaluation algorithm is documented in overwhelming detail here:
http://msdn.microsoft.com/en-us/library/ff549553(v=VS.85).aspx.

-----Original Message-----
From: xxxxx@lists.osr.com
[mailto:xxxxx@lists.osr.com] On Behalf Of Soren Dreijer
Sent: Friday, June 04, 2010 8:16 AM
To: Windows System Software Devs Interest List
Subject: RE: [ntdev] NDIS Miniports and INF versioning

Got it! Sounds like I’d better get those version numbers fixed then! :slight_smile:

Thanks all.

-----Original Message-----
From: xxxxx@lists.osr.com
[mailto:xxxxx@lists.osr.com] On Behalf Of Jan Bottorff
Sent: Friday, June 04, 2010 10:05 AM
To: Windows System Software Devs Interest List
Subject: RE: [ntdev] NDIS Miniports and INF versioning

The date part of the version field will first be used to determine newer vs
older drivers. The version number will then be used for driver with the same
date (like two builds done during development). During development, it’s
useful to use the stampinf option to set the version number to a timestamp,
as those will increment. For a release to customers (and QA) the version is
often built from something related to your source code revision system
version.

Jan

-----Original Message-----
From: xxxxx@lists.osr.com [mailto:bounce-413547-
xxxxx@lists.osr.com] On Behalf Of Soren Dreijer
Sent: Friday, June 04, 2010 7:40 AM
To: Windows System Software Devs Interest List
Subject: RE: [ntdev] NDIS Miniports and INF versioning

Yeah, that makes sense. I wonder where I got that idea from then :S

What will happen if I change the driver with the 6.x.x.x version
number to a 1.x.x.x number and I want to upgrade an existing
installation? Will Windows consider the driver with the most recent
timestamp the newest driver despite it having a lower version number
than the driver that’s already installed?

/ Soren

-----Original Message-----
From: xxxxx@lists.osr.com
[mailto:xxxxx@lists.osr.com] On Behalf Of
xxxxx@yahoo.ca
Sent: Thursday, June 03, 2010 11:52 PM
To: Windows System Software Devs Interest List
Subject: RE:[ntdev] NDIS Miniports and INF versioning

MSFT has no business with your driver’s version, nor do they care. It
does have requirement on driver date to be later than certain.


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


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


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


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


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