From mboxrd@z Thu Jan 1 00:00:00 1970 From: Gordan Bobic Subject: Re: GeForce 4xx/Fermi to Quadro Modifying Quide Date: Tue, 03 Dec 2013 09:50:58 +0000 Message-ID: <4aac878b97e5242456c6165a8f1d0477@mail.shatteredsilicon.net> References: "\"<5293BF78.2090105@bobich.net> <20131126173340.GJ2959@phenom.dumpdata.com> <20131126191154.GD3350@phenom.dumpdata.com> <20131127162643.GA18401@andromeda.dapyr.net> <7cbb23d3b54e1e4c796f0253c10737d1@mail.shatteredsilicon.net>" <20131127164302.GD5232@pegasus.dumpdata.com>" <92604e873e5bab219153cf0f4c313f1d@mail.shatteredsilicon.net> <20131203025017.GA11278@phenom.dumpdata.com> Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii"; Format="flowed" Content-Transfer-Encoding: 7bit Return-path: In-Reply-To: <20131203025017.GA11278@phenom.dumpdata.com> List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Sender: xen-devel-bounces@lists.xen.org Errors-To: xen-devel-bounces@lists.xen.org To: Konrad Rzeszutek Wilk Cc: Konrad Rzeszutek Wilk , xen-devel@lists.xen.org List-Id: xen-devel@lists.xenproject.org On Mon, 2 Dec 2013 21:50:17 -0500, Konrad Rzeszutek Wilk wrote: > On Wed, Nov 27, 2013 at 04:49:19PM +0000, Gordan Bobic wrote: >> On Wed, 27 Nov 2013 11:43:03 -0500, Konrad Rzeszutek Wilk >> wrote: >> >On Wed, Nov 27, 2013 at 04:39:26PM +0000, Gordan Bobic wrote: >> >>On Wed, 27 Nov 2013 12:26:44 -0400, Konrad Rzeszutek Wilk >> >> wrote: >> >>>>> From what I can see there are several variants of the GTX460, >> >>>>> some with the GF104 GPU, others with the GF114 GPU. There is >> no >> >>>>> Quadro based on the GF114, but there are two mobile Quadro >> >>>>> variants based on it: Q3000M and Q4000M. >> >>>>> >> >>>>> The GTX460 variants have the following device IDs: >> >>>>> GeForce GTX 460 0x0E22 >> >>>> >> >>>>That is the one! >> >>>> >> >>>>> GeForce GTX 460 SE 0x0E23 >> >>>>> GeForce GTX 460 0x0E24 >> >>>>> >> >>>>> The corresponding Quadros have IDs: >> >>>>> >> >>>>> Quadro 3000M 0x0E3A >> >>>>> Quadro 4000M 0x0E3B >> >>>>> >> >>>>> So you _should_ be able to modify your card into one of those, >> >>>>> since the adjustment range is within the bottom 5 bits of the >> >>>>> device ID and the GPU itself is the same. >> >>>>> >> >>>>> Q4000M looks like a closer match. I'd say it's certainly >> >>>>> worth a try. :) >> >>> >> >>>Success! My desktop machine now sports an Q4000M. It went >> >>>flawless - with most of the time spent on double-checking >> >>>the computations. >> >> >> >>Splendid! Is this a Linux or Windows machine (or do you dual >> >>boot it)? >> > >> >This was Windows 7. >> >> If the Nvidia driver detected it as a Quadro and installed >> itself without problems, that is indeed a very good sign. > > I am quite happy to report that it works with Windows 7 (32-bit). Excellent! I have added it to the wiki page of tested working adapters. :) > What is interesting is that it works nicely with SeaBIOS (couldn't > the old BOCHS BIOS one to do PCI passthrough?). SeaBIOS does not > yet support PCI hotplug so I had to define the PCI entries in the > guest config, which means it was: > > [root@phenom konrad]# cat /root/Win7.xm | grep -v \# > builder='hvm' > memory = 2048 > name = "Windows7" > vcpus=2 > vif = [ 'type=ioemu, mac=00:0F:4B:00:00:65,bridge=switch' ] > disk=[ 'phy:/dev/vg_private/Win7,hda,w'] > vnc=1 > videoram=8 > vnclisten="0.0.0.0" > vncpasswd='' > stdvga=0 > usb=1 > usb_add="host:045e:0039" > usbdevice='tablet' > pci=['05:00.0','05:00.1'] I always define it in the config anyway. > 05:00.0 VGA compatible controller: NVIDIA Corporation GF104GLM > [Quadro 4000M] (rev a1) > 05:00.1 Audio device: NVIDIA Corporation GF104 High Definition Audio > Controller (rev a1) > > > Linux on the other hand is more troublesome. This is with Fedora 20: > > (nouveau kernel driver looks OK) > > [ 30.747] (EE) > [ 30.747] (EE) Backtrace: > [ 30.749] (EE) 0: /usr/bin/Xorg (OsLookupColor+0x129) [0x473899] > [ 30.749] (EE) 1: /lib64/libpthread.so.0 (__restore_rt+0x0) > [0x3504e0f74f] > [ 30.750] (EE) 2: /usr/bin/Xorg (xf86ProbeOutputModes+0x9c1) > [0x4c3511] > [ 30.750] (EE) 3: /usr/bin/Xorg (xf86PruneDuplicateModes+0x152c) > [0x4cdbdc] > [ 30.750] (EE) 4: /usr/bin/Xorg (RRGetInfo+0x9c) [0x50f4dc] > [ 30.750] (EE) 5: /usr/bin/Xorg (ProcRRGetProviderProperty+0x1129) > [0x517069] > [ 30.750] (EE) 6: /usr/bin/Xorg (SendErrorToClient+0x427) > [0x43a3d7] > [ 30.752] (EE) 7: /usr/bin/Xorg (_init+0x3b1a) [0x42c02a] > [ 30.752] (EE) 8: /lib64/libc.so.6 (__libc_start_main+0xf5) > [0x3504621d65] > [ 30.752] (EE) 9: /usr/bin/Xorg (_start+0x29) [0x428c45] > [ 30.753] (EE) 10: ? (?+0x29) [0x29] > [ 30.753] (EE) > [ 30.753] (EE) Segmentation fault at address 0x200000000000 > [ 30.753] (EE) > > (so using nouveau) Hmm... What distro and version was David Techer using when he got his Linux domU working with GPU passthrough? > And with Ubuntu 12.10 with Nvidia driver: 304.88-0ubuntu0.1 > > [ 859.790255] nvidia: module license 'NVIDIA' taints kernel. > [ 859.790259] Disabling lock debugging due to kernel taint > [ 859.813635] xen: --> pirq=20 -> irq=36 (gsi=36) > [ 859.813705] vgaarb: device changed decodes: > PCI:0000:00:05.0,olddecodes=io+mem,decodes=none:owns=io+mem > [ 859.813707] vgaarb: transferring owner from PCI:0000:00:05.0 to > PCI:0000:00:03.0 > [ 859.813874] NVRM: loading NVIDIA UNIX x86_64 Kernel Module 304.88 > Wed Mar 27 14:26:46 PDT 2013 > > it looks to be OK, but Xorg.0.log says: > > [ 1028.381] (II) NVIDIA GLX Module 304.88 Wed Mar 27 14:46:57 PDT > 2013 > [ 1028.381] Loading extension GLX > [ 1028.381] (II) LoadModule: "nvidia" > [ 1028.381] (II) Loading > /usr/lib/x86_64-linux-gnu/xorg/extra-modules/nvidia_drv.so > [ 1028.382] (II) Module nvidia: vendor="NVIDIA Corporation" > [ 1028.382] compiled for 4.0.2, module version = 1.0.0 > [ 1028.382] Module class: X.Org Video Driver > [ 1028.411] (II) NVIDIA dlloader X Driver 304.88 Wed Mar 27 > 14:28:14 PDT 2013 > [ 1028.411] (II) NVIDIA Unified Driver for all Supported NVIDIA GPUs > [ 1028.411] (++) using VT number 7 > > [ 1028.421] (EE) No devices detected. 304.88 driver is quite old, maybe it doesn't include support for the Q4000M. Maybe a more recent driver is worth trying? Gordan