----- Original Message -----
From: "Amnon Ilan" <ailan(a)redhat.com>
To: "Vadim Rozenfeld" <vrozenfe(a)redhat.com>, "Li Jin"
<lijin(a)redhat.com>
Cc: "Richard W.M. Jones" <rjones(a)redhat.com>, "Roman Kagan"
<rkagan(a)virtuozzo.com>, libguestfs(a)redhat.com, "Jeff
Nelson" <jenelson(a)redhat.com>, "Yan Vugenfirer"
<yvugenfi(a)redhat.com>, "Denis Lunev" <den(a)virtuozzo.com>
Sent: Wednesday, November 18, 2015 6:29:11 PM
Subject: Re: [PATCH] v2v: virtio-win: include *.dll too
+Li Jin
----- Original Message -----
> From: "Vadim Rozenfeld" <vrozenfe(a)redhat.com>
> To: "Richard W.M. Jones" <rjones(a)redhat.com>
> Cc: "Roman Kagan" <rkagan(a)virtuozzo.com>, libguestfs(a)redhat.com,
"Amnon
> Ilan" <ailan(a)redhat.com>, "Jeff Nelson"
> <jenelson(a)redhat.com>, "Yan Vugenfirer" <yvugenfi(a)redhat.com>,
"Denis
> Lunev" <den(a)virtuozzo.com>
> Sent: Wednesday, November 18, 2015 6:00:12 AM
> Subject: Re: Fwd: [PATCH] v2v: virtio-win: include *.dll too
>
> On Tue, 2015-11-17 at 19:44 +0000, Richard W.M. Jones wrote:
> > I think one - maybe final? - problem. How can I tell the difference
> > between drivers for "client" versions of Windows (eg. Windows 7)
> > and server versions of Windows (eg. Windows 2008 Server)?
> >
> > It seems in many or most cases the drivers are identical, eg:
> >
> > $ md5sum viostor/2k12/amd64/* viostor/w8/amd64/*
> > bbe250c13bf891fd7292ccab9908a63a viostor/2k12/amd64/viostor.cat
> > c2fdfc6a47fdc9dd25242441cdf1a68e viostor/2k12/amd64/viostor.inf
> > 5ca2cadca2214b90196755dab06676f4 viostor/2k12/amd64/viostor.pdb
> > 80c5ea60a69f37e965cb277383abd067 viostor/2k12/amd64/viostor.sys
> > bbe250c13bf891fd7292ccab9908a63a viostor/w8/amd64/viostor.cat
> > c2fdfc6a47fdc9dd25242441cdf1a68e viostor/w8/amd64/viostor.inf
> > 5ca2cadca2214b90196755dab06676f4 viostor/w8/amd64/viostor.pdb
> > 80c5ea60a69f37e965cb277383abd067 viostor/w8/amd64/viostor.sys
> >
> > $ md5sum Balloon/2k12/amd64/* Balloon/w8/amd64/*
> > d4104f08e674ab9def49d086d960349d Balloon/2k12/amd64/balloon.cat
> > 0325b7e0552e1567292eb6c1068fee18 Balloon/2k12/amd64/balloon.inf
> > ac2116f04fd678d0e264f34e3bf90d1e Balloon/2k12/amd64/balloon.pdb
> > c975501dd5b43ade3717722b81acbc1f Balloon/2k12/amd64/balloon.sys
> > 56f63afdd992a5395a4d8da6a52e559e Balloon/2k12/amd64/blnsvr.exe
> > c539f2056fb196da377d14180fda195c Balloon/2k12/amd64/blnsvr.pdb
> > d10864c1730172780c2d4be633b9220a
> > Balloon/2k12/amd64/WdfCoInstaller01011.dll
> > d4104f08e674ab9def49d086d960349d Balloon/w8/amd64/balloon.cat
> > 0325b7e0552e1567292eb6c1068fee18 Balloon/w8/amd64/balloon.inf
> > ac2116f04fd678d0e264f34e3bf90d1e Balloon/w8/amd64/balloon.pdb
> > c975501dd5b43ade3717722b81acbc1f Balloon/w8/amd64/balloon.sys
> > 56f63afdd992a5395a4d8da6a52e559e Balloon/w8/amd64/blnsvr.exe
> > c539f2056fb196da377d14180fda195c Balloon/w8/amd64/blnsvr.pdb
> > d10864c1730172780c2d4be633b9220a
> > Balloon/w8/amd64/WdfCoInstaller01011.dll
> >
> > (completely identical)
> >
> > $ md5sum viostor/2k8/amd64/*
> > viostor/w7/amd64/*d1132fbd27c98f25ea71a6eb4037b2f8
> > viostor/2k8/amd64/viostor.cat
> > defccbe48aca1cd97fee4d7b16053b72 viostor/2k8/amd64/viostor.inf
> > 6da6120368c097806e4ac7fc6b940810 viostor/2k8/amd64/viostor.pdb
> > 63b05edfb75d9dc60e82ab3c0bfee701 viostor/2k8/amd64/viostor.sys
> > af0cca02244fcfedf3209aef56610464 viostor/w7/amd64/viostor.cat
> > defccbe48aca1cd97fee4d7b16053b72 viostor/w7/amd64/viostor.inf
> > 6da6120368c097806e4ac7fc6b940810 viostor/w7/amd64/viostor.pdb
> > 63b05edfb75d9dc60e82ab3c0bfee701 viostor/w7/amd64/viostor.sys
> >
> > (almost identical, *.cat files are different)
> >
> > In any case the *.inf files don't seem to have any distinguishing
> > feature which would allow us to check this.
> >
> > Maybe this doesn't matter?
> >
>
> Let me explain how it works:
> We don't make any difference between server or client platforms when
> building our drivers. Initially, all the files, mentioned above (inf,
> cat, sys, and pdb), are absolutely the same. Then the files go to QE for
> WHQL testing. QE tests the same drivers on both, desktop and server
> platforms, and creates two different submissions files for sending them
> to WHQL dashboard togather with the original "cat" file.
> As the result, we have two different cat files created from the same
> original one.
>
> As far as I remember, there shouldn't be any problem to swap these two
> cat files, and use them interchangeable. But it will be better get some
> conformation from QE team.
Li Jin, this is a discussion we have on a public mailing-list regarding the
files structure
of our virtio-win distribution.
Could you confirm Vadim's statement above?
Yes, I agree with Vadim's statement. The *.cat file is a signature file:
Before whql testing,the driver is only signed by redhat,when install driver in
guest,windows OS will prompt a security warning to confirm if customer want to install a
driver not signed by msft.
After whql testing and submit to msft,we will get a *.cat file signed by microsoft,which
will make driver installation smoothly(no extra warning).
The original *.cat file is same,whether the *.cat files are still same afer whql
submission depends on whether they are submit in one submission.
for example:
win8-64 and win2012 *.cat files are same because QE submit them in one submission(win8-64
and win2012 whql test both run on hck,results can be merged into one package);
win7-64 and win2008-64 *.cat files are different because we submit them in different
submissions(win7-64 whql test run on hck,win2008-64 run wlk,hck and wlk must submit
differently according to msft's strategy).
I tried swap cat files,drivers still can be installed correctly.
Thanks,
Amnon
>
> Best regards,
> Vadim.
>
> > Rich.
> >
>
>
>