WDF co-installer v1.9 has dependencies on Vista OS.

> Can I ask why KMDF seems to be in some sort of different category than other

driver run-time DLL’s like storport or ndis? Since as IHV’s, we don’t get
any control over what version of KMDF our driver will be executing under, I
don’t know why you just don’t roll it into a critical update and service
pack.

Well, this is really a good idea.

It has its drawbacks though - if you will write the driver to a new framework, then you will need the particular WU patch to be installed before installing a driver, which is not always good.

The design goals under MS’s decision on KMDF versioning are 1) easy patching of KMDF issues, including security ones, with static linking this would be impossible 2) the ability for a driver written for new KMDF to install on a machine with the old KMDF.

As about SxS KMDF - Doron have explained everything.

with special driver J fixes). SxS also solves the issue of I plug in a new
USB device, that requires 1.9, but 1.7 is in use, so a reboot would be
required.

Probably MS will solve this issue by rolling the Windows Update patch which will upgrade all KMDF binaries in all Windows versions in the world to 1.9.

After such a thing, the installation of 1.9 driver will not require a reboot.

Probably such an idea would be even better then to ship the KMDF install package (in a coinstaller DLL) with each driver. Probably it would be better to ship the WU package with a KMDF update instead of such a DLL.


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

> Answer: Some administrators just don’t want to have it enabled…

I don’t think MS will really introduce any effort to solve the bug which only occurs on machines where one of the essential OS’s service is disabled, be it WU, VSS or VDS or such.

It is a common notion that the bizarre tastes are the problems of the taster, not of the world or of a major corporation which produces commodity software targeted to satisfy the “generic user” or “generic admin”.

no installation failure happens? I know that con-installer v1.9 is in the system already, but then if
another v1.9+1 comes up, the same error will happen if WU is disabled?

I think so.


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

> Administrative Templates\Windows Components\Windows Update

Specify Intranet Microsoft Update Service Location

Dumb deployment of “squid” HTTP proxy is easier then SUS deployment and also helps to reduce the WU-generated traffic in the company a lot. This is a practical fact.

It also does not require any settings on client machines.

Any other HTTP proxy will also suite (forgot the current name of MS’s product of such, it was ISA Server once).


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

>This part is interesting. My old WDM driver release binary size is about

50 kB. Do you want to say WDF driver would be 10 times larger?

With statically linked framework? why not?


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

Do you mean blocking access to WU with the proxy, or redirection to a local
server?
–pa

“Maxim S. Shatskih” wrote in message
news:xxxxx@ntdev…
>> Administrative Templates\Windows Components\Windows Update
>> Specify Intranet Microsoft Update Service Location
>
> Dumb deployment of “squid” HTTP proxy is easier then SUS deployment and
> also helps to reduce the WU-generated traffic in the company a lot. This
> is a practical fact.
>
> It also does not require any settings on client machines.
>
> Any other HTTP proxy will also suite (forgot the current name of MS’s
> product of such, it was ISA Server once).
>
> –
> Maxim S. Shatskih
> Windows DDK MVP
> xxxxx@storagecraft.com
> http://www.storagecraft.com
>
>

“Maxim S. Shatskih” wrote in message
news:xxxxx@ntdev…
>> Can I ask why KMDF seems to be in some sort of different category than
>> other
>> driver run-time DLL’s like storport or ndis? Since as IHV’s, we don’t get
>> any control over what version of KMDF our driver will be executing under,
>> I
>> don’t know why you just don’t roll it into a critical update and service
>> pack.
>
> Well, this is really a good idea.
>
> It has its drawbacks though - if you will write the driver to a new
> framework, then you will need the particular WU patch to be installed
> before installing a driver, which is not always good.

>
> Probably such an idea would be even better then to ship the KMDF install
> package (in a coinstaller DLL) with each driver. Probably it would be
> better to ship the WU package with a KMDF update instead of such a DLL.
>

+1

IIRC, there was some reason (unknown to us mere mortals) why MS does not
want to
release standalone KMDF updates or distribute them thru WU, like other OS
patches.
The dependency of v 1.9 on WU could be a step to that direction.

Oh well. Any admin can make such a KMDF install/upgrade,
and push to their users, together with other numerous patches.
“Software first” driver & apps installers can check that the needed KMDF
version is
present. If not, they can tell the user that update and reboot is needed,
ok/cancel.

Regards,
–pa

> Do you mean blocking access to WU with the proxy, or redirection to a local

server?

Local file cache.


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

The statically linked size of KMDF is around 500 KB, so when you link against it, you get all of KMDF in your binary (and since there is a lot of dependencies (soft, but still there) between pieces of kmdf, the linker keeps it all). And now multiply that by every statically linked kmdf driver and you get a whole lot of code page usage

d

-----Original Message-----
From: xxxxx@lists.osr.com [mailto:xxxxx@lists.osr.com] On Behalf Of Michal Vodicka
Sent: Monday, December 21, 2009 4:23 PM
To: Windows System Software Devs Interest List
Subject: RE: [ntdev] WDF co-installer v1.9 has dependencies on Vista OS.

-----Original Message-----
From: xxxxx@lists.osr.com
[mailto:xxxxx@lists.osr.com] On Behalf Of Brandon Wilson
Sent: Monday, December 21, 2009 6:14 PM
To: Windows System Software Devs Interest List
Subject: RE: [ntdev] WDF co-installer v1.9 has dependencies on Vista
OS.

While static linking would solve some problems, it creates other
problems as well. This includes making patching any bugs in WDF much
harder

Well, I still believe it should be driver developer’s decision when his driver should be patched but it was discussed in the past as Peter W.
pointed out.

and increasing the in-memory size of
the kernel. While a single driver statically linked will only add ~.5
MB, this can quickly add up and there is a very real pressure to
reduce the memory footprint of windows, especially for netbooks and VM
server environments.

This part is interesting. My old WDM driver release binary size is about
50 kB. Do you want to say WDF driver would be 10 times larger?

Best regards,

Michal Vodicka
UPEK, Inc.
[xxxxx@upek.com, http://www.upek.com]


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

Has any kmdf release changed an interface? I thought the point was bug
fixes. New interfaces should follow the windows release model and be
restricted to major releases. Developers would and should develop for
kmdf as they do for os releases. Separating kmdf from os releases was
and is problematic.

On Monday, December 21, 2009, Maxim S. Shatskih wrote:
>> Can I ask why KMDF seems to be in some sort of different category than other
>> driver run-time DLL’s like storport or ndis? Since as IHV’s, we don’t get
>> any control over what version of KMDF our driver will be executing under, I
>> don’t know why you just don’t roll it into a critical update and service
>> pack.
>
> Well, this is really a good idea.
>
> It has its drawbacks though - if you will write the driver to a new framework, then you will need the particular WU patch to be installed before installing a driver, which is not always good.
>
> The design goals under MS’s decision on KMDF versioning are 1) easy patching of KMDF issues, including security ones, with static linking this would be impossible 2) the ability for a driver written for new KMDF to install on a machine with the old KMDF.
>
> As about SxS KMDF - Doron have explained everything.
>
>> with special driver J fixes). SxS also solves the issue of I plug in a new
>> USB device, that requires 1.9, but 1.7 is in use, so a reboot would be
>> required.
>
> Probably MS will solve this issue by rolling the Windows Update patch which will upgrade all KMDF binaries in all Windows versions in the world to 1.9.
>
> After such a thing, the installation of 1.9 driver will not require a reboot.
>
> Probably such an idea would be even better then to ship the KMDF install package (in a coinstaller DLL) with each driver. Probably it would be better to ship the WU package with a KMDF update instead of such a DLL.
>
> –
> Maxim S. Shatskih
> Windows DDK MVP
> xxxxx@storagecraft.com
> http://www.storagecraft.com
>
>
> —
> 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
>


Mark Roddy

Tim, if I understand correctly, the OP is bothered by:

KMDF update on Vista -> no reboot

KMDF update on Win7 -> reboot necessary

(Original question muddled by discussion why/if/how to disable WU.)

Of course Ilias needs to see the OPs Vista logs to check why Vista did
not require a reboot - it should probably have required one, too.

> Has any kmdf release changed an interface?
Define change ;). There have been bugfixes where we tightened the contract and we felt it was OK to do so after extensive testing and review. We have extended what objects can do (counted and fwd progress queues for instance) which also are interface changes. In general, once created, the implementations stay the same over time, we aggressively try to avoid wholesale rewrites underneath the covers. Too much risk for changing the contracts accidentally when doing that. Imho, If we were to go down the rewrite path for whatever reason, that would be cause for a new major version number so that we do not adversely affect existing client drivers in the field.

New interfaces should follow the windows release model and be restricted to major releases.
Major releases of what? The OS? The framework? Wdf treats the major number as the compatible line in the sand. If we want to change the way things work wholesale, we would change the major version number. Minor version numbers are used to define new objects and new behaviors that are backwards compatible with existing ones in the same major version

Developers would and should develop for kmdf as they do for os releases. Separating kmdf from os releases was and is problematic.
Why? That is not what our customers are telling us through surveys and in person interviews (and this is with 100s of data points, so it is not like I am cherry picking results). We get overwhelmingly positive feedback that a dev can use new features downlevel and have one programming model across OS releases, rather than attempting to avoid features based on the OS you are running on

d

-----Original Message-----
From: xxxxx@lists.osr.com [mailto:xxxxx@lists.osr.com] On Behalf Of Mark Roddy
Sent: Tuesday, December 22, 2009 1:50 AM
To: Windows System Software Devs Interest List
Subject: Re: [ntdev] WDF co-installer v1.9 has dependencies on Vista OS.

Has any kmdf release changed an interface? I thought the point was bug
fixes. New interfaces should follow the windows release model and be
restricted to major releases. Developers would and should develop for
kmdf as they do for os releases. Separating kmdf from os releases was
and is problematic.

On Monday, December 21, 2009, Maxim S. Shatskih wrote:
>> Can I ask why KMDF seems to be in some sort of different category than other
>> driver run-time DLL’s like storport or ndis? Since as IHV’s, we don’t get
>> any control over what version of KMDF our driver will be executing under, I
>> don’t know why you just don’t roll it into a critical update and service
>> pack.
>
> Well, this is really a good idea.
>
> It has its drawbacks though - if you will write the driver to a new framework, then you will need the particular WU patch to be installed before installing a driver, which is not always good.
>
> The design goals under MS’s decision on KMDF versioning are 1) easy patching of KMDF issues, including security ones, with static linking this would be impossible 2) the ability for a driver written for new KMDF to install on a machine with the old KMDF.
>
> As about SxS KMDF - Doron have explained everything.
>
>> with special driver J fixes). SxS also solves the issue of I plug in a new
>> USB device, that requires 1.9, but 1.7 is in use, so a reboot would be
>> required.
>
> Probably MS will solve this issue by rolling the Windows Update patch which will upgrade all KMDF binaries in all Windows versions in the world to 1.9.
>
> After such a thing, the installation of 1.9 driver will not require a reboot.
>
> Probably such an idea would be even better then to ship the KMDF install package (in a coinstaller DLL) with each driver. Probably it would be better to ship the WU package with a KMDF update instead of such a DLL.
>
> –
> Maxim S. Shatskih
> Windows DDK MVP
> xxxxx@storagecraft.com
> http://www.storagecraft.com
>
>
> —
> 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
>


Mark Roddy


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

What I am saying is that your decision to separate KMDF from OS
releases just complicates things.

Why not have all the other container drivers, scsiport, storport,
ndis, etc also have their own coinstallers, independent releases,
etc.?

Mark Roddy

On Tue, Dec 22, 2009 at 1:48 PM, Doron Holan wrote:
>> Has any kmdf release changed an interface?
> Define change ;). ?There have been bugfixes where we tightened the contract ?and we felt it was OK to do so after extensive testing and review. ?We have extended what objects can do (counted and fwd progress queues for instance) which also are interface changes. ?In general, once created, the implementations stay the same over time, we aggressively try to avoid wholesale rewrites underneath the covers. ?Too much risk for changing the contracts accidentally when doing that. Imho, If we were to go down the rewrite path for whatever reason, that would be cause for a new major version number so that we do not adversely affect existing client drivers in the field.
>
>> New interfaces should follow the windows release model and be restricted to major releases.
> Major releases of what? The OS? The framework? ?Wdf treats the major number as the compatible line in the sand. ?If we want to change the way things work wholesale, we would change the major version number. Minor version numbers are used to define new objects and new behaviors that are backwards compatible with existing ones in the same major version
>
>> Developers would and should develop for kmdf as they do for os releases. Separating kmdf from os releases was and is problematic.
> Why? ?That is not what our customers are telling us through surveys and in person interviews (and this is with 100s of data points, so it is not like I am cherry picking results). ?We get overwhelmingly positive feedback that a dev can use new features downlevel and have one programming model across OS releases, rather than attempting to avoid features based on the OS you are running on
>
> d
>
>
> -----Original Message-----
> From: xxxxx@lists.osr.com [mailto:xxxxx@lists.osr.com] On Behalf Of Mark Roddy
> Sent: Tuesday, December 22, 2009 1:50 AM
> To: Windows System Software Devs Interest List
> Subject: Re: [ntdev] WDF co-installer v1.9 has dependencies on Vista OS.
>
> Has any kmdf release changed an interface? I thought the point was bug
> fixes. New interfaces should follow the windows release model and be
> restricted to major releases. Developers would and should develop for
> kmdf as they do for os releases. Separating kmdf from os releases was
> and is problematic.
>
> On Monday, December 21, 2009, Maxim S. Shatskih wrote:
>>> Can I ask why KMDF seems to be in some sort of different category than other
>>> driver run-time DLL’s like storport or ndis? Since as IHV’s, we don’t get
>>> any control over what version of KMDF our driver will be executing under, I
>>> don’t know why you just don’t roll it into a critical update and service
>>> pack.
>>
>> Well, this is really a good idea.
>>
>> It has its drawbacks though - if you will write the driver to a new framework, then you will need the particular WU patch to be installed before installing a driver, which is not always good.
>>
>> The design goals under MS’s decision on KMDF versioning are 1) easy patching of KMDF issues, including security ones, with static linking this would be impossible 2) the ability for a driver written for new KMDF to install on a machine with the old KMDF.
>>
>> As about SxS KMDF - Doron have explained everything.
>>
>>> with special driver J fixes). SxS also solves the issue of I plug in a new
>>> USB device, that requires 1.9, but 1.7 is in use, so a reboot would be
>>> required.
>>
>> Probably MS will solve this issue by rolling the Windows Update patch which will upgrade all KMDF binaries in all Windows versions in the world to 1.9.
>>
>> After such a thing, the installation of 1.9 driver will not require a reboot.
>>
>> Probably such an idea would be even better then to ship the KMDF install package (in a coinstaller DLL) with each driver. Probably it would be better to ship the WU package with a KMDF update instead of such a DLL.
>>
>> –
>> Maxim S. Shatskih
>> Windows DDK MVP
>> xxxxx@storagecraft.com
>> http://www.storagecraft.com
>>
>>
>> —
>> 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
>>
>
> –
> Mark Roddy
>
> —
> 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
>

It is really each team’s decision on how they deploy, release and test their driver models for each and across OSs and really, the biggest determining factor, their business models. That is part of the reason why we created WDF, which was to unify some of these models over time and when new device silos were created, standardize on WDF. I still don’t understand the argument. Are you saying that just b/c that is the way it was before KMDF arrived, we should have kept with tradition? Or that once we broke with tradition everyone should have followed WDF?

-----Original Message-----
From: xxxxx@lists.osr.com [mailto:xxxxx@lists.osr.com] On Behalf Of Mark Roddy
Sent: Tuesday, December 22, 2009 10:59 AM
To: Windows System Software Devs Interest List
Subject: Re: [ntdev] WDF co-installer v1.9 has dependencies on Vista OS.

What I am saying is that your decision to separate KMDF from OS
releases just complicates things.

Why not have all the other container drivers, scsiport, storport,
ndis, etc also have their own coinstallers, independent releases,
etc.?

Mark Roddy

On Tue, Dec 22, 2009 at 1:48 PM, Doron Holan wrote:
>> Has any kmdf release changed an interface?
> Define change ;). ?There have been bugfixes where we tightened the contract ?and we felt it was OK to do so after extensive testing and review. ?We have extended what objects can do (counted and fwd progress queues for instance) which also are interface changes. ?In general, once created, the implementations stay the same over time, we aggressively try to avoid wholesale rewrites underneath the covers. ?Too much risk for changing the contracts accidentally when doing that. Imho, If we were to go down the rewrite path for whatever reason, that would be cause for a new major version number so that we do not adversely affect existing client drivers in the field.
>
>> New interfaces should follow the windows release model and be restricted to major releases.
> Major releases of what? The OS? The framework? ?Wdf treats the major number as the compatible line in the sand. ?If we want to change the way things work wholesale, we would change the major version number. Minor version numbers are used to define new objects and new behaviors that are backwards compatible with existing ones in the same major version
>
>> Developers would and should develop for kmdf as they do for os releases. Separating kmdf from os releases was and is problematic.
> Why? ?That is not what our customers are telling us through surveys and in person interviews (and this is with 100s of data points, so it is not like I am cherry picking results). ?We get overwhelmingly positive feedback that a dev can use new features downlevel and have one programming model across OS releases, rather than attempting to avoid features based on the OS you are running on
>
> d
>
>
> -----Original Message-----
> From: xxxxx@lists.osr.com [mailto:xxxxx@lists.osr.com] On Behalf Of Mark Roddy
> Sent: Tuesday, December 22, 2009 1:50 AM
> To: Windows System Software Devs Interest List
> Subject: Re: [ntdev] WDF co-installer v1.9 has dependencies on Vista OS.
>
> Has any kmdf release changed an interface? I thought the point was bug
> fixes. New interfaces should follow the windows release model and be
> restricted to major releases. Developers would and should develop for
> kmdf as they do for os releases. Separating kmdf from os releases was
> and is problematic.
>
> On Monday, December 21, 2009, Maxim S. Shatskih wrote:
>>> Can I ask why KMDF seems to be in some sort of different category than other
>>> driver run-time DLL’s like storport or ndis? Since as IHV’s, we don’t get
>>> any control over what version of KMDF our driver will be executing under, I
>>> don’t know why you just don’t roll it into a critical update and service
>>> pack.
>>
>> Well, this is really a good idea.
>>
>> It has its drawbacks though - if you will write the driver to a new framework, then you will need the particular WU patch to be installed before installing a driver, which is not always good.
>>
>> The design goals under MS’s decision on KMDF versioning are 1) easy patching of KMDF issues, including security ones, with static linking this would be impossible 2) the ability for a driver written for new KMDF to install on a machine with the old KMDF.
>>
>> As about SxS KMDF - Doron have explained everything.
>>
>>> with special driver J fixes). SxS also solves the issue of I plug in a new
>>> USB device, that requires 1.9, but 1.7 is in use, so a reboot would be
>>> required.
>>
>> Probably MS will solve this issue by rolling the Windows Update patch which will upgrade all KMDF binaries in all Windows versions in the world to 1.9.
>>
>> After such a thing, the installation of 1.9 driver will not require a reboot.
>>
>> Probably such an idea would be even better then to ship the KMDF install package (in a coinstaller DLL) with each driver. Probably it would be better to ship the WU package with a KMDF update instead of such a DLL.
>>
>> –
>> Maxim S. Shatskih
>> Windows DDK MVP
>> xxxxx@storagecraft.com
>> http://www.storagecraft.com
>>
>>
>> —
>> 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
>>
>
> –
> Mark Roddy
>
> —
> 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

ILIAS,

This is a part of the %windir%\setupact.log that shows an update from KMDF 1.5 to KMDF 1.7 in Vista SP2 32-bit, where I have disabled the WU service and there is no need for reboot:


WdfCoInstaller: [12/22/2009 12:58.57.980] DIF_INSTALLDEVICE: Pre-Processing
WdfCoInstaller: [12/22/2009 12:58.58.183] ReadComponents: WdfSection for Driver Service TI3410 using KMDF lib version Major 0x1, minor 0x5
WdfCoInstaller: [12/22/2009 12:59.03.543] DIF_INSTALLDEVICE: Post-Processing
WdfCoInstaller: [12/22/2009 12:59.03.590] BootApplication: could not open service TI3410, error error(1060) The specified service does not exist as an installed service.
WdfCoInstaller: [12/22/2009 12:59.03.621] BootApplication: GetStartType error error(87) The parameter is incorrect.
Driver Service name TI3410
WdfCoInstaller: [12/22/2009 12:59.03.933] GetServiceKeyHandle: RegOpenKeyEx(HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\TI3410)
WdfCoInstaller: [12/22/2009 12:59.03.949] GetServiceKeyHandle failed: error(2) The system cannot find the file specified.
WdfCoInstaller: [12/22/2009 12:59.03.980] GetDriverImageNameFromServiceName : GetServiceKeyHandle failed error: error(87) The parameter is incorrect. serviceName TI3410
WdfCoInstaller: [12/22/2009 12:59.03.996] GenerateDriverServiceMarker: GetDriverImageNameFromServiceName failed: error(87) The parameter is incorrect. for service TI3410
WdfCoInstaller: [12/22/2009 12:59.04.011] GetServiceKeyHandle: RegOpenKeyEx(HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\TI3410)
WdfCoInstaller: [12/22/2009 12:59.04.043] GetServiceKeyHandle failed: error(2) The system cannot find the file specified.
WdfCoInstaller: [12/22/2009 12:59.04.058] SetCoinstallerVersion: GetServiceKeyHandle failed: for service TI3410
WdfCoInstaller: [12/22/2009 13:00.28.902] DIF_INSTALLDEVICE: Pre-Processing
WdfCoInstaller: [12/22/2009 13:00.29.136] ReadComponents: WdfSection for Driver Service umpusbvista using KMDF lib version Major 0x1, minor 0x5
WdfCoInstaller: [12/22/2009 13:00.29.261] DIF_INSTALLDEVICE: Coinstaller version: 1.7.6001
WdfCoInstaller: [12/22/2009 13:00.29.340] DIF_INSTALLDEVICE: KMDF in-memory version: 1.7.6001
WdfCoInstaller: [12/22/2009 13:00.29.418] DIF_INSTALLDEVICE: KMDF on-disk version: 1.7.6001
WdfCoInstaller: [12/22/2009 13:00.29.511] Service Wdf01000 is running
WdfCoInstaller: [12/22/2009 13:00.29.558] DIF_INSTALLDEVICE: On-disk KMDF version is newer than or same as the version of the coinstaller. Update is not required
WdfCoInstaller: [12/22/2009 13:00.31.652] DIF_INSTALLDEVICE: Post-Processing


Thanks for the help,

Ismael

Vista sp2 ships with KMDF v1.7 so there is nothing being upgraded in this case. The log tells you as much

WdfCoInstaller: [12/22/2009 13:00.29.340] DIF_INSTALLDEVICE: KMDF in-memory version: 1.7.6001
WdfCoInstaller: [12/22/2009 13:00.29.418] DIF_INSTALLDEVICE: KMDF on-disk version: 1.7.6001

d

-----Original Message-----
From: xxxxx@lists.osr.com [mailto:xxxxx@lists.osr.com] On Behalf Of iduron@ti.com
Sent: Tuesday, December 22, 2009 12:28 PM
To: Windows System Software Devs Interest List
Subject: RE:[ntdev] WDF co-installer v1.9 has dependencies on Vista OS.

ILIAS,

This is a part of the %windir%\setupact.log that shows an update from KMDF 1.5 to KMDF 1.7 in Vista SP2 32-bit, where I have disabled the WU service and there is no need for reboot:


WdfCoInstaller: [12/22/2009 12:58.57.980] DIF_INSTALLDEVICE: Pre-Processing
WdfCoInstaller: [12/22/2009 12:58.58.183] ReadComponents: WdfSection for Driver Service TI3410 using KMDF lib version Major 0x1, minor 0x5
WdfCoInstaller: [12/22/2009 12:59.03.543] DIF_INSTALLDEVICE: Post-Processing
WdfCoInstaller: [12/22/2009 12:59.03.590] BootApplication: could not open service TI3410, error error(1060) The specified service does not exist as an installed service.
WdfCoInstaller: [12/22/2009 12:59.03.621] BootApplication: GetStartType error error(87) The parameter is incorrect.
Driver Service name TI3410
WdfCoInstaller: [12/22/2009 12:59.03.933] GetServiceKeyHandle: RegOpenKeyEx(HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\TI3410)
WdfCoInstaller: [12/22/2009 12:59.03.949] GetServiceKeyHandle failed: error(2) The system cannot find the file specified.
WdfCoInstaller: [12/22/2009 12:59.03.980] GetDriverImageNameFromServiceName : GetServiceKeyHandle failed error: error(87) The parameter is incorrect. serviceName TI3410
WdfCoInstaller: [12/22/2009 12:59.03.996] GenerateDriverServiceMarker: GetDriverImageNameFromServiceName failed: error(87) The parameter is incorrect. for service TI3410
WdfCoInstaller: [12/22/2009 12:59.04.011] GetServiceKeyHandle: RegOpenKeyEx(HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\TI3410)
WdfCoInstaller: [12/22/2009 12:59.04.043] GetServiceKeyHandle failed: error(2) The system cannot find the file specified.
WdfCoInstaller: [12/22/2009 12:59.04.058] SetCoinstallerVersion: GetServiceKeyHandle failed: for service TI3410
WdfCoInstaller: [12/22/2009 13:00.28.902] DIF_INSTALLDEVICE: Pre-Processing
WdfCoInstaller: [12/22/2009 13:00.29.136] ReadComponents: WdfSection for Driver Service umpusbvista using KMDF lib version Major 0x1, minor 0x5
WdfCoInstaller: [12/22/2009 13:00.29.261] DIF_INSTALLDEVICE: Coinstaller version: 1.7.6001
WdfCoInstaller: [12/22/2009 13:00.29.340] DIF_INSTALLDEVICE: KMDF in-memory version: 1.7.6001
WdfCoInstaller: [12/22/2009 13:00.29.418] DIF_INSTALLDEVICE: KMDF on-disk version: 1.7.6001
WdfCoInstaller: [12/22/2009 13:00.29.511] Service Wdf01000 is running
WdfCoInstaller: [12/22/2009 13:00.29.558] DIF_INSTALLDEVICE: On-disk KMDF version is newer than or same as the version of the coinstaller. Update is not required
WdfCoInstaller: [12/22/2009 13:00.31.652] DIF_INSTALLDEVICE: Post-Processing


Thanks for the help,

Ismael


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

> -----Original Message-----

From: xxxxx@lists.osr.com
[mailto:xxxxx@lists.osr.com] On Behalf Of Doron Holan
Sent: Tuesday, December 22, 2009 7:37 AM
To: Windows System Software Devs Interest List
Subject: RE: [ntdev] WDF co-installer v1.9 has dependencies
on Vista OS.

The statically linked size of KMDF is around 500 KB, so when
you link against it, you get all of KMDF in your binary (and
since there is a lot of dependencies (soft, but still there)
between pieces of kmdf, the linker keeps it all). And now
multiply that by every statically linked kmdf driver and you
get a whole lot of code page usage

Seems pretty big to me. The functionality is rather similar to PnP/power
code within WDM driver which is 10 times smaller. I know it is more
complex and there is additional functionality but still, 10 times more?

Best regards,

Michal Vodicka
UPEK, Inc.
[xxxxx@upek.com, http://www.upek.com]

It is just not a pnp/power impl, you also get all of the objects (queue, request, target, dma, string, collection, etc) as well.

d

-----Original Message-----
From: Michal Vodicka
Sent: Tuesday, December 22, 2009 1:15 PM
To: Windows System Software Devs Interest List
Subject: RE: [ntdev] WDF co-installer v1.9 has dependencies on Vista OS.

> -----Original Message-----
> From: xxxxx@lists.osr.com
> [mailto:xxxxx@lists.osr.com] On Behalf Of Doron Holan
> Sent: Tuesday, December 22, 2009 7:37 AM
> To: Windows System Software Devs Interest List
> Subject: RE: [ntdev] WDF co-installer v1.9 has dependencies
> on Vista OS.
>
> The statically linked size of KMDF is around 500 KB, so when
> you link against it, you get all of KMDF in your binary (and
> since there is a lot of dependencies (soft, but still there)
> between pieces of kmdf, the linker keeps it all). And now
> multiply that by every statically linked kmdf driver and you
> get a whole lot of code page usage

Seems pretty big to me. The functionality is rather similar to PnP/power
code within WDM driver which is 10 times smaller. I know it is more
complex and there is additional functionality but still, 10 times more?

Best regards,

Michal Vodicka
UPEK, Inc.
[xxxxx@upek.com, http://www.upek.com]


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

I know but still… Isn’t it the price for C++? Normally linker would be
able to eliminate unused code.

Best regards,

Michal Vodicka
UPEK, Inc.
[xxxxx@upek.com, http://www.upek.com]

-----Original Message-----
From: xxxxx@lists.osr.com
[mailto:xxxxx@lists.osr.com] On Behalf Of Doron Holan
Sent: Tuesday, December 22, 2009 10:27 PM
To: Windows System Software Devs Interest List
Subject: RE: [ntdev] WDF co-installer v1.9 has dependencies
on Vista OS.

It is just not a pnp/power impl, you also get all of the
objects (queue, request, target, dma, string, collection,
etc) as well.

d

-----Original Message-----
From: Michal Vodicka
> Sent: Tuesday, December 22, 2009 1:15 PM
> To: Windows System Software Devs Interest List
> Subject: RE: [ntdev] WDF co-installer v1.9 has dependencies
> on Vista OS.
>
>
> > -----Original Message-----
> > From: xxxxx@lists.osr.com
> > [mailto:xxxxx@lists.osr.com] On Behalf Of Doron Holan
> > Sent: Tuesday, December 22, 2009 7:37 AM
> > To: Windows System Software Devs Interest List
> > Subject: RE: [ntdev] WDF co-installer v1.9 has dependencies
> > on Vista OS.
> >
> > The statically linked size of KMDF is around 500 KB, so when
> > you link against it, you get all of KMDF in your binary (and
> > since there is a lot of dependencies (soft, but still there)
> > between pieces of kmdf, the linker keeps it all). And now
> > multiply that by every statically linked kmdf driver and you
> > get a whole lot of code page usage
>
> Seems pretty big to me. The functionality is rather similar
> to PnP/power
> code within WDM driver which is 10 times smaller. I know it is more
> complex and there is additional functionality but still, 10
> times more?
>
> Best regards,
>
> Michal Vodicka
> UPEK, Inc.
> [xxxxx@upek.com, http://www.upek.com]
>
>
> —
> 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
>

C++ itself does not contribute to the size. All of these object have weak references to each other, esp via the power state machine which turns them all on/off, so the linker can’t throw away the code.

d

-----Original Message-----
From: Michal Vodicka
Sent: Tuesday, December 22, 2009 1:29 PM
To: Windows System Software Devs Interest List
Subject: RE: [ntdev] WDF co-installer v1.9 has dependencies on Vista OS.

I know but still… Isn’t it the price for C++? Normally linker would be
able to eliminate unused code.

Best regards,

Michal Vodicka
UPEK, Inc.
[xxxxx@upek.com, http://www.upek.com]

> -----Original Message-----
> From: xxxxx@lists.osr.com
> [mailto:xxxxx@lists.osr.com] On Behalf Of Doron Holan
> Sent: Tuesday, December 22, 2009 10:27 PM
> To: Windows System Software Devs Interest List
> Subject: RE: [ntdev] WDF co-installer v1.9 has dependencies
> on Vista OS.
>
> It is just not a pnp/power impl, you also get all of the
> objects (queue, request, target, dma, string, collection,
> etc) as well.
>
> d
>
>
>
> -----Original Message-----
> From: Michal Vodicka
> Sent: Tuesday, December 22, 2009 1:15 PM
> To: Windows System Software Devs Interest List
> Subject: RE: [ntdev] WDF co-installer v1.9 has dependencies
> on Vista OS.
>
>
> > -----Original Message-----
> > From: xxxxx@lists.osr.com
> > [mailto:xxxxx@lists.osr.com] On Behalf Of Doron Holan
> > Sent: Tuesday, December 22, 2009 7:37 AM
> > To: Windows System Software Devs Interest List
> > Subject: RE: [ntdev] WDF co-installer v1.9 has dependencies
> > on Vista OS.
> >
> > The statically linked size of KMDF is around 500 KB, so when
> > you link against it, you get all of KMDF in your binary (and
> > since there is a lot of dependencies (soft, but still there)
> > between pieces of kmdf, the linker keeps it all). And now
> > multiply that by every statically linked kmdf driver and you
> > get a whole lot of code page usage
>
> Seems pretty big to me. The functionality is rather similar
> to PnP/power
> code within WDM driver which is 10 times smaller. I know it is more
> complex and there is additional functionality but still, 10
> times more?
>
> Best regards,
>
> Michal Vodicka
> UPEK, Inc.
> [xxxxx@upek.com, http://www.upek.com]
>
>
> —
> 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

Exactly.

Ismael,
You can also look at Tim’s previous email, where he explains that you only need to update, if KMDF is not already installed in your system. And if you need to update, then you also need to have the Windows Update service running.
However, in your scenario the system already had KMDF 1.7 and no update was required (i.e. the was also no need for Windows Update to be running).

Ilias

-----Original Message-----
From: xxxxx@lists.osr.com [mailto:xxxxx@lists.osr.com] On Behalf Of Doron Holan
Sent: Tuesday, December 22, 2009 12:47 PM
To: Windows System Software Devs Interest List
Subject: RE: RE:[ntdev] WDF co-installer v1.9 has dependencies on Vista OS.

Vista sp2 ships with KMDF v1.7 so there is nothing being upgraded in this case. The log tells you as much

WdfCoInstaller: [12/22/2009 13:00.29.340] DIF_INSTALLDEVICE: KMDF in-memory version: 1.7.6001
WdfCoInstaller: [12/22/2009 13:00.29.418] DIF_INSTALLDEVICE: KMDF on-disk version: 1.7.6001

d

-----Original Message-----
From: xxxxx@lists.osr.com [mailto:xxxxx@lists.osr.com] On Behalf Of iduron@ti.com
Sent: Tuesday, December 22, 2009 12:28 PM
To: Windows System Software Devs Interest List
Subject: RE:[ntdev] WDF co-installer v1.9 has dependencies on Vista OS.

ILIAS,

This is a part of the %windir%\setupact.log that shows an update from KMDF 1.5 to KMDF 1.7 in Vista SP2 32-bit, where I have disabled the WU service and there is no need for reboot:


WdfCoInstaller: [12/22/2009 12:58.57.980] DIF_INSTALLDEVICE: Pre-Processing
WdfCoInstaller: [12/22/2009 12:58.58.183] ReadComponents: WdfSection for Driver Service TI3410 using KMDF lib version Major 0x1, minor 0x5
WdfCoInstaller: [12/22/2009 12:59.03.543] DIF_INSTALLDEVICE: Post-Processing
WdfCoInstaller: [12/22/2009 12:59.03.590] BootApplication: could not open service TI3410, error error(1060) The specified service does not exist as an installed service.
WdfCoInstaller: [12/22/2009 12:59.03.621] BootApplication: GetStartType error error(87) The parameter is incorrect.
Driver Service name TI3410
WdfCoInstaller: [12/22/2009 12:59.03.933] GetServiceKeyHandle: RegOpenKeyEx(HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\TI3410)
WdfCoInstaller: [12/22/2009 12:59.03.949] GetServiceKeyHandle failed: error(2) The system cannot find the file specified.
WdfCoInstaller: [12/22/2009 12:59.03.980] GetDriverImageNameFromServiceName : GetServiceKeyHandle failed error: error(87) The parameter is incorrect. serviceName TI3410
WdfCoInstaller: [12/22/2009 12:59.03.996] GenerateDriverServiceMarker: GetDriverImageNameFromServiceName failed: error(87) The parameter is incorrect. for service TI3410
WdfCoInstaller: [12/22/2009 12:59.04.011] GetServiceKeyHandle: RegOpenKeyEx(HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\TI3410)
WdfCoInstaller: [12/22/2009 12:59.04.043] GetServiceKeyHandle failed: error(2) The system cannot find the file specified.
WdfCoInstaller: [12/22/2009 12:59.04.058] SetCoinstallerVersion: GetServiceKeyHandle failed: for service TI3410
WdfCoInstaller: [12/22/2009 13:00.28.902] DIF_INSTALLDEVICE: Pre-Processing
WdfCoInstaller: [12/22/2009 13:00.29.136] ReadComponents: WdfSection for Driver Service umpusbvista using KMDF lib version Major 0x1, minor 0x5
WdfCoInstaller: [12/22/2009 13:00.29.261] DIF_INSTALLDEVICE: Coinstaller version: 1.7.6001
WdfCoInstaller: [12/22/2009 13:00.29.340] DIF_INSTALLDEVICE: KMDF in-memory version: 1.7.6001
WdfCoInstaller: [12/22/2009 13:00.29.418] DIF_INSTALLDEVICE: KMDF on-disk version: 1.7.6001
WdfCoInstaller: [12/22/2009 13:00.29.511] Service Wdf01000 is running
WdfCoInstaller: [12/22/2009 13:00.29.558] DIF_INSTALLDEVICE: On-disk KMDF version is newer than or same as the version of the coinstaller. Update is not required
WdfCoInstaller: [12/22/2009 13:00.31.652] DIF_INSTALLDEVICE: Post-Processing


Thanks for the help,

Ismael


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