Bug 841162

Summary: Use more consistent directory layout
Product: Red Hat Enterprise Linux 6 Reporter: Christophe Fergeau <cfergeau>
Component: virtio-winAssignee: Vadim Rozenfeld <vrozenfe>
Status: CLOSED WONTFIX QA Contact: Virtualization Bugs <virt-bugs>
Severity: unspecified Docs Contact:
Priority: unspecified    
Version: 6.3CC: bcao, bsarathy, crobinso, juzhang, knoel, rbalakri, xwei
Target Milestone: rc   
Target Release: ---   
Hardware: Unspecified   
OS: Unspecified   
Whiteboard:
Fixed In Version: Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2015-01-16 04:31:38 UTC Type: Bug
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:

Description Christophe Fergeau 2012-07-18 10:08:58 UTC
Currently, individual drivers choose which directories they want to use, which results in redundant directories on the ISO (XP/Wxp), and does not make it very easy to know which driver applies to which windows version. It also makes it very inconvenient to extract drivers from the iso programmatically.
As a first step, it would be nice to merge the Wxp and XP directories, I'd move Wnet\amd64\* to the Wxp directory as well, and Wlh may be more recognizable if it was name vista.
Using hardlinks and the --cache-inodes option to genisomage, we could even duplicate drivers working with multiple windows versions in one directory per windows version without wasting space on the iso.

Comment 2 Mike Cao 2012-07-18 10:29:29 UTC
Christophe mainly means the driver located in http://alt.fedoraproject.org/pub/alt/virtio-win/latest/images/bin/ , and the driver's directory there is same as the virtio-win-prewhql builds

Comment 3 Vadim Rozenfeld 2012-07-18 13:17:38 UTC
Several attempts have been made in the past to change the iso and vfd layouts.
IMHO let's keep is as is, because no one was lucky to create a better layout 
without breaking the drivers installation process.

We can take this task off-line and split iso image into two 32-bit and 64-bit parts, or even better create separate iso for each supported platform. But it should be done after very careful and detailed discussion with marketing and management team, because in this case we will change our drives deployment
scenario. 

Best regards,
Vadim.

Comment 4 Christophe Fergeau 2012-07-19 07:39:09 UTC
(In reply to comment #3)
> But it should be done after very careful and detailed discussion
> with marketing and management team, because in this case we will change our
> drives deployment scenario. 

I'm talking about the pre-whql iso image here, is it customer-visible, and used in deployments?

Comment 7 Christophe Fergeau 2012-07-23 13:32:28 UTC
The script at http://cgit.freedesktop.org/~teuf/spice-nsis/tree/tools/geniso.py turns http://alt.fedoraproject.org/pub/alt/virtio-win/latest/images/bin/virtio-win-0.1-30.iso into the layout I suggest:

./win2k8
./win2k8/x86
./win2k8/x86/viostor.pdb
./win2k8/x86/balloon.inf
./win2k8/x86/balloon.sys
./win2k8/x86/vioser.inf
./win2k8/x86/vioscsi.pdb
./win2k8/x86/netkvm.sys
./win2k8/x86/netkvm.pdb
./win2k8/x86/blnsvr.pdb
./win2k8/x86/viostor.inf
./win2k8/x86/viostor.cat
./win2k8/x86/netkvm.inf
./win2k8/x86/blnsvr.exe
./win2k8/x86/vioser.cat
./win2k8/x86/viostor.sys
./win2k8/x86/vioser.sys
./win2k8/x86/netkvm.cat
./win2k8/x86/vioscsi.sys
./win2k8/x86/vioser-test.exe
./win2k8/x86/vioscsi.cat
./win2k8/x86/netkvmco.dll
./win2k8/x86/readme.doc
./win2k8/x86/balloon.pdb
./win2k8/x86/vioscsi.inf
./win2k8/x86/wdfcoinstaller01009.dll
./win2k8/x86/balloon.cat
./win2k8/x86/vioser.pdb
./win2k8/x86/vioser-test.pdb
./win2k8/amd64
./win2k8/amd64/viostor.pdb
./win2k8/amd64/balloon.inf
./win2k8/amd64/balloon.sys
./win2k8/amd64/vioser.inf
./win2k8/amd64/vioscsi.pdb
./win2k8/amd64/netkvm.sys
./win2k8/amd64/netkvm.pdb
./win2k8/amd64/blnsvr.pdb
./win2k8/amd64/viostor.inf
./win2k8/amd64/viostor.cat
./win2k8/amd64/netkvm.inf
./win2k8/amd64/blnsvr.exe
./win2k8/amd64/vioser.cat
./win2k8/amd64/viostor.sys
./win2k8/amd64/vioser.sys
./win2k8/amd64/netkvm.cat
./win2k8/amd64/vioscsi.sys
./win2k8/amd64/vioser-test.exe
./win2k8/amd64/vioscsi.cat
./win2k8/amd64/netkvmco.dll
./win2k8/amd64/readme.doc
./win2k8/amd64/balloon.pdb
./win2k8/amd64/vioscsi.inf
./win2k8/amd64/wdfcoinstaller01009.dll
./win2k8/amd64/balloon.cat
./win2k8/amd64/vioser.pdb
./win2k8/amd64/vioser-test.pdb
./winxp
./winxp/x86
./winxp/x86/viostor.pdb
./winxp/x86/balloon.inf
./winxp/x86/balloon.sys
./winxp/x86/vioser.inf
./winxp/x86/vioscsi.pdb
./winxp/x86/netkvm.sys
./winxp/x86/netkvm.pdb
./winxp/x86/blnsvr.pdb
./winxp/x86/viostor.inf
./winxp/x86/viostor.cat
./winxp/x86/netkvm.inf
./winxp/x86/blnsvr.exe
./winxp/x86/vioser.cat
./winxp/x86/viostor.sys
./winxp/x86/vioser.sys
./winxp/x86/netkvm.cat
./winxp/x86/vioscsi.sys
./winxp/x86/vioser-test.exe
./winxp/x86/vioscsi.cat
./winxp/x86/balloon.pdb
./winxp/x86/vioscsi.inf
./winxp/x86/wdfcoinstaller01009.dll
./winxp/x86/balloon.cat
./winxp/x86/vioser.pdb
./winxp/x86/vioser-test.pdb
./winxp/amd64
./winxp/amd64/viostor.pdb
./winxp/amd64/balloon.inf
./winxp/amd64/balloon.sys
./winxp/amd64/vioser.inf
./winxp/amd64/vioscsi.pdb
./winxp/amd64/netkvm.sys
./winxp/amd64/netkvm.pdb
./winxp/amd64/blnsvr.pdb
./winxp/amd64/viostor.inf
./winxp/amd64/viostor.cat
./winxp/amd64/netkvm.inf
./winxp/amd64/blnsvr.exe
./winxp/amd64/vioser.cat
./winxp/amd64/viostor.sys
./winxp/amd64/vioser.sys
./winxp/amd64/netkvm.cat
./winxp/amd64/vioscsi.sys
./winxp/amd64/vioser-test.exe
./winxp/amd64/vioscsi.cat
./winxp/amd64/balloon.pdb
./winxp/amd64/vioscsi.inf
./winxp/amd64/wdfcoinstaller01009.dll
./winxp/amd64/balloon.cat
./winxp/amd64/vioser.pdb
./winxp/amd64/vioser-test.pdb
./win8
./win8/x86
./win8/x86/viostor.pdb
./win8/x86/balloon.inf
./win8/x86/balloon.sys
./win8/x86/vioser.inf
./win8/x86/vioscsi.pdb
./win8/x86/netkvm.sys
./win8/x86/netkvm.pdb
./win8/x86/blnsvr.pdb
./win8/x86/viostor.inf
./win8/x86/viostor.cat
./win8/x86/netkvm.inf
./win8/x86/blnsvr.exe
./win8/x86/vioser.cat
./win8/x86/viostor.sys
./win8/x86/vioser.sys
./win8/x86/netkvm.cat
./win8/x86/vioscsi.sys
./win8/x86/vioser-test.exe
./win8/x86/vioscsi.cat
./win8/x86/netkvmco.dll
./win8/x86/readme.doc
./win8/x86/balloon.pdb
./win8/x86/vioscsi.inf
./win8/x86/wdfcoinstaller01009.dll
./win8/x86/balloon.cat
./win8/x86/vioser.pdb
./win8/x86/vioser-test.pdb
./win8/amd64
./win8/amd64/viostor.pdb
./win8/amd64/balloon.inf
./win8/amd64/balloon.sys
./win8/amd64/vioser.inf
./win8/amd64/vioscsi.pdb
./win8/amd64/netkvm.sys
./win8/amd64/netkvm.pdb
./win8/amd64/blnsvr.pdb
./win8/amd64/viostor.inf
./win8/amd64/viostor.cat
./win8/amd64/netkvm.inf
./win8/amd64/blnsvr.exe
./win8/amd64/vioser.cat
./win8/amd64/viostor.sys
./win8/amd64/vioser.sys
./win8/amd64/netkvm.cat
./win8/amd64/vioscsi.sys
./win8/amd64/vioser-test.exe
./win8/amd64/vioscsi.cat
./win8/amd64/netkvmco.dll
./win8/amd64/readme.doc
./win8/amd64/balloon.pdb
./win8/amd64/vioscsi.inf
./win8/amd64/wdfcoinstaller01009.dll
./win8/amd64/balloon.cat
./win8/amd64/vioser.pdb
./win8/amd64/vioser-test.pdb
./win7
./win7/x86
./win7/x86/viostor.pdb
./win7/x86/balloon.inf
./win7/x86/balloon.sys
./win7/x86/vioser.inf
./win7/x86/vioscsi.pdb
./win7/x86/netkvm.sys
./win7/x86/netkvm.pdb
./win7/x86/blnsvr.pdb
./win7/x86/viostor.inf
./win7/x86/viostor.cat
./win7/x86/netkvm.inf
./win7/x86/blnsvr.exe
./win7/x86/vioser.cat
./win7/x86/viostor.sys
./win7/x86/vioser.sys
./win7/x86/netkvm.cat
./win7/x86/vioscsi.sys
./win7/x86/vioser-test.exe
./win7/x86/vioscsi.cat
./win7/x86/netkvmco.dll
./win7/x86/readme.doc
./win7/x86/balloon.pdb
./win7/x86/vioscsi.inf
./win7/x86/wdfcoinstaller01009.dll
./win7/x86/balloon.cat
./win7/x86/vioser.pdb
./win7/x86/vioser-test.pdb
./win7/amd64
./win7/amd64/viostor.pdb
./win7/amd64/balloon.inf
./win7/amd64/balloon.sys
./win7/amd64/vioser.inf
./win7/amd64/vioscsi.pdb
./win7/amd64/netkvm.sys
./win7/amd64/netkvm.pdb
./win7/amd64/blnsvr.pdb
./win7/amd64/viostor.inf
./win7/amd64/viostor.cat
./win7/amd64/netkvm.inf
./win7/amd64/blnsvr.exe
./win7/amd64/vioser.cat
./win7/amd64/viostor.sys
./win7/amd64/vioser.sys
./win7/amd64/netkvm.cat
./win7/amd64/vioscsi.sys
./win7/amd64/vioser-test.exe
./win7/amd64/vioscsi.cat
./win7/amd64/netkvmco.dll
./win7/amd64/readme.doc
./win7/amd64/balloon.pdb
./win7/amd64/vioscsi.inf
./win7/amd64/wdfcoinstaller01009.dll
./win7/amd64/balloon.cat
./win7/amd64/vioser.pdb
./win7/amd64/vioser-test.pdb
./vista
./vista/x86
./vista/x86/viostor.pdb
./vista/x86/balloon.inf
./vista/x86/balloon.sys
./vista/x86/vioser.inf
./vista/x86/vioscsi.pdb
./vista/x86/netkvm.sys
./vista/x86/netkvm.pdb
./vista/x86/blnsvr.pdb
./vista/x86/viostor.inf
./vista/x86/viostor.cat
./vista/x86/netkvm.inf
./vista/x86/blnsvr.exe
./vista/x86/vioser.cat
./vista/x86/viostor.sys
./vista/x86/vioser.sys
./vista/x86/netkvm.cat
./vista/x86/vioscsi.sys
./vista/x86/vioser-test.exe
./vista/x86/vioscsi.cat
./vista/x86/netkvmco.dll
./vista/x86/readme.doc
./vista/x86/balloon.pdb
./vista/x86/vioscsi.inf
./vista/x86/wdfcoinstaller01009.dll
./vista/x86/balloon.cat
./vista/x86/vioser.pdb
./vista/x86/vioser-test.pdb
./vista/amd64
./vista/amd64/viostor.pdb
./vista/amd64/balloon.inf
./vista/amd64/balloon.sys
./vista/amd64/vioser.inf
./vista/amd64/vioscsi.pdb
./vista/amd64/netkvm.sys
./vista/amd64/netkvm.pdb
./vista/amd64/blnsvr.pdb
./vista/amd64/viostor.inf
./vista/amd64/viostor.cat
./vista/amd64/netkvm.inf
./vista/amd64/blnsvr.exe
./vista/amd64/vioser.cat
./vista/amd64/viostor.sys
./vista/amd64/vioser.sys
./vista/amd64/netkvm.cat
./vista/amd64/vioscsi.sys
./vista/amd64/vioser-test.exe
./vista/amd64/vioscsi.cat
./vista/amd64/netkvmco.dll
./vista/amd64/readme.doc
./vista/amd64/balloon.pdb
./vista/amd64/vioscsi.inf
./vista/amd64/wdfcoinstaller01009.dll
./vista/amd64/balloon.cat
./vista/amd64/vioser.pdb
./vista/amd64/vioser-test.pdb
./win2k8r2
./win2k8r2/x86
./win2k8r2/x86/viostor.pdb
./win2k8r2/x86/balloon.inf
./win2k8r2/x86/balloon.sys
./win2k8r2/x86/vioser.inf
./win2k8r2/x86/vioscsi.pdb
./win2k8r2/x86/netkvm.sys
./win2k8r2/x86/netkvm.pdb
./win2k8r2/x86/blnsvr.pdb
./win2k8r2/x86/viostor.inf
./win2k8r2/x86/viostor.cat
./win2k8r2/x86/netkvm.inf
./win2k8r2/x86/blnsvr.exe
./win2k8r2/x86/vioser.cat
./win2k8r2/x86/viostor.sys
./win2k8r2/x86/vioser.sys
./win2k8r2/x86/netkvm.cat
./win2k8r2/x86/vioscsi.sys
./win2k8r2/x86/vioser-test.exe
./win2k8r2/x86/vioscsi.cat
./win2k8r2/x86/netkvmco.dll
./win2k8r2/x86/readme.doc
./win2k8r2/x86/balloon.pdb
./win2k8r2/x86/vioscsi.inf
./win2k8r2/x86/wdfcoinstaller01009.dll
./win2k8r2/x86/balloon.cat
./win2k8r2/x86/vioser.pdb
./win2k8r2/x86/vioser-test.pdb
./win2k8r2/amd64
./win2k8r2/amd64/viostor.pdb
./win2k8r2/amd64/balloon.inf
./win2k8r2/amd64/balloon.sys
./win2k8r2/amd64/vioser.inf
./win2k8r2/amd64/vioscsi.pdb
./win2k8r2/amd64/netkvm.sys
./win2k8r2/amd64/netkvm.pdb
./win2k8r2/amd64/blnsvr.pdb
./win2k8r2/amd64/viostor.inf
./win2k8r2/amd64/viostor.cat
./win2k8r2/amd64/netkvm.inf
./win2k8r2/amd64/blnsvr.exe
./win2k8r2/amd64/vioser.cat
./win2k8r2/amd64/viostor.sys
./win2k8r2/amd64/vioser.sys
./win2k8r2/amd64/netkvm.cat
./win2k8r2/amd64/vioscsi.sys
./win2k8r2/amd64/vioser-test.exe
./win2k8r2/amd64/vioscsi.cat
./win2k8r2/amd64/netkvmco.dll
./win2k8r2/amd64/readme.doc
./win2k8r2/amd64/balloon.pdb
./win2k8r2/amd64/vioscsi.inf
./win2k8r2/amd64/wdfcoinstaller01009.dll
./win2k8r2/amd64/balloon.cat
./win2k8r2/amd64/vioser.pdb
./win2k8r2/amd64/vioser-test.pdb
./win2k3
./win2k3/x86
./win2k3/x86/viostor.pdb
./win2k3/x86/balloon.inf
./win2k3/x86/balloon.sys
./win2k3/x86/vioser.inf
./win2k3/x86/vioscsi.pdb
./win2k3/x86/netkvm.sys
./win2k3/x86/netkvm.pdb
./win2k3/x86/blnsvr.pdb
./win2k3/x86/viostor.inf
./win2k3/x86/viostor.cat
./win2k3/x86/netkvm.inf
./win2k3/x86/blnsvr.exe
./win2k3/x86/vioser.cat
./win2k3/x86/viostor.sys
./win2k3/x86/vioser.sys
./win2k3/x86/netkvm.cat
./win2k3/x86/vioscsi.sys
./win2k3/x86/vioser-test.exe
./win2k3/x86/vioscsi.cat
./win2k3/x86/balloon.pdb
./win2k3/x86/vioscsi.inf
./win2k3/x86/wdfcoinstaller01009.dll
./win2k3/x86/balloon.cat
./win2k3/x86/vioser.pdb
./win2k3/x86/vioser-test.pdb
./win2k3/amd64
./win2k3/amd64/viostor.pdb
./win2k3/amd64/balloon.inf
./win2k3/amd64/balloon.sys
./win2k3/amd64/vioser.inf
./win2k3/amd64/vioscsi.pdb
./win2k3/amd64/netkvm.sys
./win2k3/amd64/netkvm.pdb
./win2k3/amd64/blnsvr.pdb
./win2k3/amd64/viostor.inf
./win2k3/amd64/viostor.cat
./win2k3/amd64/netkvm.inf
./win2k3/amd64/blnsvr.exe
./win2k3/amd64/vioser.cat
./win2k3/amd64/viostor.sys
./win2k3/amd64/vioser.sys
./win2k3/amd64/netkvm.cat
./win2k3/amd64/vioscsi.sys
./win2k3/amd64/vioser-test.exe
./win2k3/amd64/vioscsi.cat
./win2k3/amd64/balloon.pdb
./win2k3/amd64/vioscsi.inf
./win2k3/amd64/wdfcoinstaller01009.dll
./win2k3/amd64/balloon.cat
./win2k3/amd64/vioser.pdb
./win2k3/amd64/vioser-test.pdb

Comment 8 Vadim Rozenfeld 2012-07-24 09:44:14 UTC
(In reply to comment #7)
> The script at
> http://cgit.freedesktop.org/~teuf/spice-nsis/tree/tools/geniso.py turns
> http://alt.fedoraproject.org/pub/alt/virtio-win/latest/images/bin/virtio-win-
> 0.1-30.iso into the layout I suggest:
> 
> ./win2k8
> ./win2k8/x86
> ./win2k8/x86/viostor.pdb
> ./win2k8/x86/balloon.inf
> ./win2k8/x86/balloon.sys
> ./win2k8/x86/vioser.inf
> ./win2k8/x86/vioscsi.pdb
> ./win2k8/x86/netkvm.sys
> ./win2k8/x86/netkvm.pdb
> ./win2k8/x86/blnsvr.pdb
> ./win2k8/x86/viostor.inf
> ./win2k8/x86/viostor.cat
> ./win2k8/x86/netkvm.inf
> ./win2k8/x86/blnsvr.exe
> ./win2k8/x86/vioser.cat
> ./win2k8/x86/viostor.sys
> ./win2k8/x86/vioser.sys
> ./win2k8/x86/netkvm.cat
> ./win2k8/x86/vioscsi.sys
> ./win2k8/x86/vioser-test.exe
> ./win2k8/x86/vioscsi.cat
> ./win2k8/x86/netkvmco.dll
> ./win2k8/x86/readme.doc
> ./win2k8/x86/balloon.pdb
> ./win2k8/x86/vioscsi.inf
> ./win2k8/x86/wdfcoinstaller01009.dll
> ./win2k8/x86/balloon.cat
> ./win2k8/x86/vioser.pdb
> ./win2k8/x86/vioser-test.pdb
> ./win2k8/amd64
> ./win2k8/amd64/viostor.pdb
> ./win2k8/amd64/balloon.inf
> ./win2k8/amd64/balloon.sys
> ./win2k8/amd64/vioser.inf
> ./win2k8/amd64/vioscsi.pdb
> ./win2k8/amd64/netkvm.sys
> ./win2k8/amd64/netkvm.pdb
> ./win2k8/amd64/blnsvr.pdb
> ./win2k8/amd64/viostor.inf
> ./win2k8/amd64/viostor.cat
> ./win2k8/amd64/netkvm.inf
> ./win2k8/amd64/blnsvr.exe
> ./win2k8/amd64/vioser.cat
> ./win2k8/amd64/viostor.sys
> ./win2k8/amd64/vioser.sys
> ./win2k8/amd64/netkvm.cat
> ./win2k8/amd64/vioscsi.sys
> ./win2k8/amd64/vioser-test.exe
> ./win2k8/amd64/vioscsi.cat
> ./win2k8/amd64/netkvmco.dll
> ./win2k8/amd64/readme.doc
> ./win2k8/amd64/balloon.pdb
> ./win2k8/amd64/vioscsi.inf
> ./win2k8/amd64/wdfcoinstaller01009.dll
> ./win2k8/amd64/balloon.cat
> ./win2k8/amd64/vioser.pdb
> ./win2k8/amd64/vioser-test.pdb
> ./winxp
> ./winxp/x86
> ./winxp/x86/viostor.pdb
> ./winxp/x86/balloon.inf
> ./winxp/x86/balloon.sys
> ./winxp/x86/vioser.inf
> ./winxp/x86/vioscsi.pdb
> ./winxp/x86/netkvm.sys
> ./winxp/x86/netkvm.pdb
> ./winxp/x86/blnsvr.pdb
> ./winxp/x86/viostor.inf
> ./winxp/x86/viostor.cat
> ./winxp/x86/netkvm.inf
> ./winxp/x86/blnsvr.exe
> ./winxp/x86/vioser.cat
> ./winxp/x86/viostor.sys
> ./winxp/x86/vioser.sys
> ./winxp/x86/netkvm.cat
> ./winxp/x86/vioscsi.sys
> ./winxp/x86/vioser-test.exe
> ./winxp/x86/vioscsi.cat
> ./winxp/x86/balloon.pdb
> ./winxp/x86/vioscsi.inf
> ./winxp/x86/wdfcoinstaller01009.dll
> ./winxp/x86/balloon.cat
> ./winxp/x86/vioser.pdb
> ./winxp/x86/vioser-test.pdb
> ./winxp/amd64
> ./winxp/amd64/viostor.pdb
> ./winxp/amd64/balloon.inf
> ./winxp/amd64/balloon.sys
> ./winxp/amd64/vioser.inf
> ./winxp/amd64/vioscsi.pdb
> ./winxp/amd64/netkvm.sys
> ./winxp/amd64/netkvm.pdb
> ./winxp/amd64/blnsvr.pdb
> ./winxp/amd64/viostor.inf
> ./winxp/amd64/viostor.cat
> ./winxp/amd64/netkvm.inf
> ./winxp/amd64/blnsvr.exe
> ./winxp/amd64/vioser.cat
> ./winxp/amd64/viostor.sys
> ./winxp/amd64/vioser.sys
> ./winxp/amd64/netkvm.cat
> ./winxp/amd64/vioscsi.sys
> ./winxp/amd64/vioser-test.exe
> ./winxp/amd64/vioscsi.cat
> ./winxp/amd64/balloon.pdb
> ./winxp/amd64/vioscsi.inf
> ./winxp/amd64/wdfcoinstaller01009.dll
> ./winxp/amd64/balloon.cat
> ./winxp/amd64/vioser.pdb
> ./winxp/amd64/vioser-test.pdb
> ./win8
> ./win8/x86
> ./win8/x86/viostor.pdb
> ./win8/x86/balloon.inf
> ./win8/x86/balloon.sys
> ./win8/x86/vioser.inf
> ./win8/x86/vioscsi.pdb
> ./win8/x86/netkvm.sys
> ./win8/x86/netkvm.pdb
> ./win8/x86/blnsvr.pdb
> ./win8/x86/viostor.inf
> ./win8/x86/viostor.cat
> ./win8/x86/netkvm.inf
> ./win8/x86/blnsvr.exe
> ./win8/x86/vioser.cat
> ./win8/x86/viostor.sys
> ./win8/x86/vioser.sys
> ./win8/x86/netkvm.cat
> ./win8/x86/vioscsi.sys
> ./win8/x86/vioser-test.exe
> ./win8/x86/vioscsi.cat
> ./win8/x86/netkvmco.dll
> ./win8/x86/readme.doc
> ./win8/x86/balloon.pdb
> ./win8/x86/vioscsi.inf
> ./win8/x86/wdfcoinstaller01009.dll
> ./win8/x86/balloon.cat
> ./win8/x86/vioser.pdb
> ./win8/x86/vioser-test.pdb
> ./win8/amd64
> ./win8/amd64/viostor.pdb
> ./win8/amd64/balloon.inf
> ./win8/amd64/balloon.sys
> ./win8/amd64/vioser.inf
> ./win8/amd64/vioscsi.pdb
> ./win8/amd64/netkvm.sys
> ./win8/amd64/netkvm.pdb
> ./win8/amd64/blnsvr.pdb
> ./win8/amd64/viostor.inf
> ./win8/amd64/viostor.cat
> ./win8/amd64/netkvm.inf
> ./win8/amd64/blnsvr.exe
> ./win8/amd64/vioser.cat
> ./win8/amd64/viostor.sys
> ./win8/amd64/vioser.sys
> ./win8/amd64/netkvm.cat
> ./win8/amd64/vioscsi.sys
> ./win8/amd64/vioser-test.exe
> ./win8/amd64/vioscsi.cat
> ./win8/amd64/netkvmco.dll
> ./win8/amd64/readme.doc
> ./win8/amd64/balloon.pdb
> ./win8/amd64/vioscsi.inf
> ./win8/amd64/wdfcoinstaller01009.dll
> ./win8/amd64/balloon.cat
> ./win8/amd64/vioser.pdb
> ./win8/amd64/vioser-test.pdb
> ./win7
> ./win7/x86
> ./win7/x86/viostor.pdb
> ./win7/x86/balloon.inf
> ./win7/x86/balloon.sys
> ./win7/x86/vioser.inf
> ./win7/x86/vioscsi.pdb
> ./win7/x86/netkvm.sys
> ./win7/x86/netkvm.pdb
> ./win7/x86/blnsvr.pdb
> ./win7/x86/viostor.inf
> ./win7/x86/viostor.cat
> ./win7/x86/netkvm.inf
> ./win7/x86/blnsvr.exe
> ./win7/x86/vioser.cat
> ./win7/x86/viostor.sys
> ./win7/x86/vioser.sys
> ./win7/x86/netkvm.cat
> ./win7/x86/vioscsi.sys
> ./win7/x86/vioser-test.exe
> ./win7/x86/vioscsi.cat
> ./win7/x86/netkvmco.dll
> ./win7/x86/readme.doc
> ./win7/x86/balloon.pdb
> ./win7/x86/vioscsi.inf
> ./win7/x86/wdfcoinstaller01009.dll
> ./win7/x86/balloon.cat
> ./win7/x86/vioser.pdb
> ./win7/x86/vioser-test.pdb
> ./win7/amd64
> ./win7/amd64/viostor.pdb
> ./win7/amd64/balloon.inf
> ./win7/amd64/balloon.sys
> ./win7/amd64/vioser.inf
> ./win7/amd64/vioscsi.pdb
> ./win7/amd64/netkvm.sys
> ./win7/amd64/netkvm.pdb
> ./win7/amd64/blnsvr.pdb
> ./win7/amd64/viostor.inf
> ./win7/amd64/viostor.cat
> ./win7/amd64/netkvm.inf
> ./win7/amd64/blnsvr.exe
> ./win7/amd64/vioser.cat
> ./win7/amd64/viostor.sys
> ./win7/amd64/vioser.sys
> ./win7/amd64/netkvm.cat
> ./win7/amd64/vioscsi.sys
> ./win7/amd64/vioser-test.exe
> ./win7/amd64/vioscsi.cat
> ./win7/amd64/netkvmco.dll
> ./win7/amd64/readme.doc
> ./win7/amd64/balloon.pdb
> ./win7/amd64/vioscsi.inf
> ./win7/amd64/wdfcoinstaller01009.dll
> ./win7/amd64/balloon.cat
> ./win7/amd64/vioser.pdb
> ./win7/amd64/vioser-test.pdb
> ./vista
> ./vista/x86
> ./vista/x86/viostor.pdb
> ./vista/x86/balloon.inf
> ./vista/x86/balloon.sys
> ./vista/x86/vioser.inf
> ./vista/x86/vioscsi.pdb
> ./vista/x86/netkvm.sys
> ./vista/x86/netkvm.pdb
> ./vista/x86/blnsvr.pdb
> ./vista/x86/viostor.inf
> ./vista/x86/viostor.cat
> ./vista/x86/netkvm.inf
> ./vista/x86/blnsvr.exe
> ./vista/x86/vioser.cat
> ./vista/x86/viostor.sys
> ./vista/x86/vioser.sys
> ./vista/x86/netkvm.cat
> ./vista/x86/vioscsi.sys
> ./vista/x86/vioser-test.exe
> ./vista/x86/vioscsi.cat
> ./vista/x86/netkvmco.dll
> ./vista/x86/readme.doc
> ./vista/x86/balloon.pdb
> ./vista/x86/vioscsi.inf
> ./vista/x86/wdfcoinstaller01009.dll
> ./vista/x86/balloon.cat
> ./vista/x86/vioser.pdb
> ./vista/x86/vioser-test.pdb
> ./vista/amd64
> ./vista/amd64/viostor.pdb
> ./vista/amd64/balloon.inf
> ./vista/amd64/balloon.sys
> ./vista/amd64/vioser.inf
> ./vista/amd64/vioscsi.pdb
> ./vista/amd64/netkvm.sys
> ./vista/amd64/netkvm.pdb
> ./vista/amd64/blnsvr.pdb
> ./vista/amd64/viostor.inf
> ./vista/amd64/viostor.cat
> ./vista/amd64/netkvm.inf
> ./vista/amd64/blnsvr.exe
> ./vista/amd64/vioser.cat
> ./vista/amd64/viostor.sys
> ./vista/amd64/vioser.sys
> ./vista/amd64/netkvm.cat
> ./vista/amd64/vioscsi.sys
> ./vista/amd64/vioser-test.exe
> ./vista/amd64/vioscsi.cat
> ./vista/amd64/netkvmco.dll
> ./vista/amd64/readme.doc
> ./vista/amd64/balloon.pdb
> ./vista/amd64/vioscsi.inf
> ./vista/amd64/wdfcoinstaller01009.dll
> ./vista/amd64/balloon.cat
> ./vista/amd64/vioser.pdb
> ./vista/amd64/vioser-test.pdb
> ./win2k8r2
> ./win2k8r2/x86
> ./win2k8r2/x86/viostor.pdb
> ./win2k8r2/x86/balloon.inf
> ./win2k8r2/x86/balloon.sys
> ./win2k8r2/x86/vioser.inf
> ./win2k8r2/x86/vioscsi.pdb
> ./win2k8r2/x86/netkvm.sys
> ./win2k8r2/x86/netkvm.pdb
> ./win2k8r2/x86/blnsvr.pdb
> ./win2k8r2/x86/viostor.inf
> ./win2k8r2/x86/viostor.cat
> ./win2k8r2/x86/netkvm.inf
> ./win2k8r2/x86/blnsvr.exe
> ./win2k8r2/x86/vioser.cat
> ./win2k8r2/x86/viostor.sys
> ./win2k8r2/x86/vioser.sys
> ./win2k8r2/x86/netkvm.cat
> ./win2k8r2/x86/vioscsi.sys
> ./win2k8r2/x86/vioser-test.exe
> ./win2k8r2/x86/vioscsi.cat
> ./win2k8r2/x86/netkvmco.dll
> ./win2k8r2/x86/readme.doc
> ./win2k8r2/x86/balloon.pdb
> ./win2k8r2/x86/vioscsi.inf
> ./win2k8r2/x86/wdfcoinstaller01009.dll
> ./win2k8r2/x86/balloon.cat
> ./win2k8r2/x86/vioser.pdb
> ./win2k8r2/x86/vioser-test.pdb
> ./win2k8r2/amd64
> ./win2k8r2/amd64/viostor.pdb
> ./win2k8r2/amd64/balloon.inf
> ./win2k8r2/amd64/balloon.sys
> ./win2k8r2/amd64/vioser.inf
> ./win2k8r2/amd64/vioscsi.pdb
> ./win2k8r2/amd64/netkvm.sys
> ./win2k8r2/amd64/netkvm.pdb
> ./win2k8r2/amd64/blnsvr.pdb
> ./win2k8r2/amd64/viostor.inf
> ./win2k8r2/amd64/viostor.cat
> ./win2k8r2/amd64/netkvm.inf
> ./win2k8r2/amd64/blnsvr.exe
> ./win2k8r2/amd64/vioser.cat
> ./win2k8r2/amd64/viostor.sys
> ./win2k8r2/amd64/vioser.sys
> ./win2k8r2/amd64/netkvm.cat
> ./win2k8r2/amd64/vioscsi.sys
> ./win2k8r2/amd64/vioser-test.exe
> ./win2k8r2/amd64/vioscsi.cat
> ./win2k8r2/amd64/netkvmco.dll
> ./win2k8r2/amd64/readme.doc
> ./win2k8r2/amd64/balloon.pdb
> ./win2k8r2/amd64/vioscsi.inf
> ./win2k8r2/amd64/wdfcoinstaller01009.dll
> ./win2k8r2/amd64/balloon.cat
> ./win2k8r2/amd64/vioser.pdb
> ./win2k8r2/amd64/vioser-test.pdb
> ./win2k3
> ./win2k3/x86
> ./win2k3/x86/viostor.pdb
> ./win2k3/x86/balloon.inf
> ./win2k3/x86/balloon.sys
> ./win2k3/x86/vioser.inf
> ./win2k3/x86/vioscsi.pdb
> ./win2k3/x86/netkvm.sys
> ./win2k3/x86/netkvm.pdb
> ./win2k3/x86/blnsvr.pdb
> ./win2k3/x86/viostor.inf
> ./win2k3/x86/viostor.cat
> ./win2k3/x86/netkvm.inf
> ./win2k3/x86/blnsvr.exe
> ./win2k3/x86/vioser.cat
> ./win2k3/x86/viostor.sys
> ./win2k3/x86/vioser.sys
> ./win2k3/x86/netkvm.cat
> ./win2k3/x86/vioscsi.sys
> ./win2k3/x86/vioser-test.exe
> ./win2k3/x86/vioscsi.cat
> ./win2k3/x86/balloon.pdb
> ./win2k3/x86/vioscsi.inf
> ./win2k3/x86/wdfcoinstaller01009.dll
> ./win2k3/x86/balloon.cat
> ./win2k3/x86/vioser.pdb
> ./win2k3/x86/vioser-test.pdb
> ./win2k3/amd64
> ./win2k3/amd64/viostor.pdb
> ./win2k3/amd64/balloon.inf
> ./win2k3/amd64/balloon.sys
> ./win2k3/amd64/vioser.inf
> ./win2k3/amd64/vioscsi.pdb
> ./win2k3/amd64/netkvm.sys
> ./win2k3/amd64/netkvm.pdb
> ./win2k3/amd64/blnsvr.pdb
> ./win2k3/amd64/viostor.inf
> ./win2k3/amd64/viostor.cat
> ./win2k3/amd64/netkvm.inf
> ./win2k3/amd64/blnsvr.exe
> ./win2k3/amd64/vioser.cat
> ./win2k3/amd64/viostor.sys
> ./win2k3/amd64/vioser.sys
> ./win2k3/amd64/netkvm.cat
> ./win2k3/amd64/vioscsi.sys
> ./win2k3/amd64/vioser-test.exe
> ./win2k3/amd64/vioscsi.cat
> ./win2k3/amd64/balloon.pdb
> ./win2k3/amd64/vioscsi.inf
> ./win2k3/amd64/wdfcoinstaller01009.dll
> ./win2k3/amd64/balloon.cat
> ./win2k3/amd64/vioser.pdb
> ./win2k3/amd64/vioser-test.pdb

Nice. 
Are you sure that it doesn't break any installation procedure? IIRC Windows installer cannot automatically recognize names like win2k3 or winxp, because it
expect to see WNET and WXP instead.

Comment 9 Christophe Fergeau 2012-07-24 10:36:41 UTC
(In reply to comment #8)

> Nice. 
> Are you sure that it doesn't break any installation procedure? IIRC Windows
> installer cannot automatically recognize names like win2k3 or winxp, because
> it
> expect to see WNET and WXP instead.

No idea ;) What do you call 'Windows installer'? Are you talking about the dialog where you tell Windows you have additional drivers to install, and then you point it to a location on the CD and it picks them from here? If so, do you mean that when you use WNET/WXP/..., you can point Windows at the root of the CD, and then it will be able to pick the right driver? Do you have some docs about this?
I can change the naming I used, but I'd still like to improve the current layout as it is quite inconsistent (netkvm is in XP, other drivers are in Wxp, sometimes XP\amd64 is used, sometimes it's Wlh\amd64. ...).

Comment 10 Vadim Rozenfeld 2012-07-25 08:30:17 UTC
(In reply to comment #9)
> (In reply to comment #8)
> 
> > Nice. 
> > Are you sure that it doesn't break any installation procedure? IIRC Windows
> > installer cannot automatically recognize names like win2k3 or winxp, because
> > it
> > expect to see WNET and WXP instead.
> 
> No idea ;) What do you call 'Windows installer'? Are you talking about the
> dialog where you tell Windows you have additional drivers to install, and
> then you point it to a location on the CD and it picks them from here? If

Exactly. 

> so, do you mean that when you use WNET/WXP/..., you can point Windows at the
> root of the CD, and then it will be able to pick the right driver? Do you
> have some docs about this?

It seems like MS use the WDK System/Platform naming conversion. But the problem
is that the parsing/search algorithm seems to vary between OSes.
And it seems like the best way to make any order here is just create a separate image per every OS, or at least organize them into different groups - one iso for XP/W2K3 and another one for Win2K8/Win7/W2K8R2, and at the moment I really have no idea about Win8/Windows Server 2012. There is a chance that we will need to readjust the image layout for these two OSes as well.
 
> I can change the naming I used, but I'd still like to improve the current
> layout as it is quite inconsistent (netkvm is in XP, other drivers are in
> Wxp, sometimes XP\amd64 is used, sometimes it's Wlh\amd64. ...).

Comment 11 Christophe Fergeau 2012-07-25 08:41:27 UTC
(In reply to comment #10)
> (In reply to comment #9)

> > so, do you mean that when you use WNET/WXP/..., you can point Windows at the
> > root of the CD, and then it will be able to pick the right driver? Do you
> > have some docs about this?
> 
> It seems like MS use the WDK System/Platform naming conversion. But the
> problem
> is that the parsing/search algorithm seems to vary between OSes.
> And it seems like the best way to make any order here is just create a
> separate image per every OS, or at least organize them into different groups

Ah interesting, I never realized this could be used this way (by pointing Windows to the root of the CD). Usually, I navigate down to the exact win version/arch I have to get the drivers installed, that's why the layout I suggested is useful to me. I'll have to experiment a bit more ;)

Comment 14 Christophe Fergeau 2012-12-19 12:52:07 UTC
(In reply to comment #8)
> Are you sure that it doesn't break any installation procedure? IIRC Windows
> installer cannot automatically recognize names like win2k3 or winxp, because
> it
> expect to see WNET and WXP instead.

For what it's worth, I've tested the current virtio-win ISO (0.1-30) on a win7 32bit install, and it does not pick the right driver to install (it seems to be trying to use the one from amd64 instead of the x86 one).

Comment 15 Mike Cao 2013-01-05 06:19:42 UTC
*** Bug 866936 has been marked as a duplicate of this bug. ***

Comment 19 Vadim Rozenfeld 2015-01-16 04:31:38 UTC
Since the current layout provides the most optimal configuration for a single distribution media, I'm closing the bug as WONTFIX.