[Nouveau] (no subject)
Hi On NV_40 on driver is sent instructions from NVE0 series not right I inspected register 9012c with nvtools and appear instructions to start unneeded engines NVE0_CHANNEL_IND_ENGINE_PPP NVE0_CHANNEL_IND_ENGINE_BSP NVE0_CHANNEL_IND_ENGINE_ENC I put one barrier but not start dri. Index: master_local/drivers/gpu/drm/nouveau/nouveau_abi16.c === --- master_local.orig/drivers/gpu/drm/nouveau/nouveau_abi16.c 2014-08-01 00:51:43.0 +0300 +++ master_local/drivers/gpu/drm/nouveau/nouveau_abi16.c 2014-09-13 17:16:19.881489054 +0300 @@ -252,7 +252,12 @@ device = nv_device(abi16-device); imem = nouveau_instmem(device); pfb= nouveau_fb(device); - + printk(KERN_INFO fb_ctxdma_handle %x\n, init-fb_ctxdma_handle); + printk(KERN_INFO tt_ctxdma_handle %x\n, init-tt_ctxdma_handle); + printk(KERN_INFO channel %x\n, init-channel); + printk(KERN_INFO pushbuf_domains %x\n, init-pushbuf_domains); + printk(KERN_INFO notifier_handle %x\n, init-notifier_handle); + printk(KERN_INFO nr_subchan %x\n, init-nr_subchan); /* hack to allow channel engine type specification on kepler */ if (device-card_type = NV_E0) { if (init-fb_ctxdma_handle != ~0) @@ -265,6 +270,18 @@ if (init-fb_ctxdma_handle == NVE0_CHANNEL_IND_ENGINE_GR) init-tt_ctxdma_handle = 1; } + + if (device-card_type NV_50) { + if (init-fb_ctxdma_handle = 0x0008) + return nouveau_abi16_put(abi16, -EINVAL); + + if (init-fb_ctxdma_handle = 0x0004) + return nouveau_abi16_put(abi16, -EINVAL); + + if (init-fb_ctxdma_handle = 0x0040) + return nouveau_abi16_put(abi16, -EINVAL); + } + if (init-fb_ctxdma_handle == ~0 || init-tt_ctxdma_handle == ~0) return nouveau_abi16_put(abi16, -EINVAL); ___ Nouveau mailing list Nouveau@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/nouveau
[Nouveau] (no subject)
___ Nouveau mailing list Nouveau@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/nouveau
Re: [Nouveau] (no subject)
What problem are you trying to solve? Perhaps you can start by describing the symptoms, providing logs, etc? On Sat, Sep 13, 2014 at 11:24 AM, asd a...@marian1000.go.ro wrote: Hi On NV_40 on driver is sent instructions from NVE0 series not right I inspected register 9012c with nvtools and appear instructions to start unneeded engines NVE0_CHANNEL_IND_ENGINE_PPP NVE0_CHANNEL_IND_ENGINE_BSP NVE0_CHANNEL_IND_ENGINE_ENC I put one barrier but not start dri. ___ Nouveau mailing list Nouveau@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/nouveau ___ Nouveau mailing list Nouveau@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/nouveau
Re: [Nouveau] (no subject)
On 13/09/2014 17:32, Ilia Mirkin wrote: What problem are you trying to solve? Perhaps you can start by describing the symptoms, providing logs, etc? Ilia, That's the third time he contacts us to fix bugs without giving any details. He then refuses to answer back. He is either a troll or desperately trying to push patches with his name on it. In any case, this patch is utterly wrong as the ifs are not even conditions, they are assignments. Asd, please stop wasting our time and try trolling somewhere else. If you are not a troll, then answer us before sending another patch! Martin ___ Nouveau mailing list Nouveau@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/nouveau
Re: [Nouveau] VGA resume thaw (wake up from S3 S4) broken - kernel(nouveau) exclusively
On 13.09.2014 07:02, poma wrote: On 13.09.2014 06:57, poma wrote: Actually I have nothing to show cause logs are all OK. Haha, it seems to me that the bugs become intelligent. 3.15.10-201.fc20.x86_64 3.16.2-200.fc20.x86_64 3.17.0-0.rc4.git3.2.fc22.1.x86_64 nouveau [ DRM] suspending display... nouveau [ DRM] unpinning framebuffer(s)... nouveau [ DRM] evicting buffers... nouveau [ DRM] waiting for kernel channels to go idle... nouveau [ DRM] suspending client object trees... nouveau [ DRM] suspending kernel object tree... ... nouveau [ DRM] re-enabling device... nouveau [ DRM] resuming kernel object tree... nouveau [ VBIOS][:02:00.0] running init tables nouveau [ PTHERM][:02:00.0] fan management: automatic nouveau [ CLK][:02:00.0] --: core 566 MHz shader 1400 MHz memory 399 MHz nouveau [ DRM] resuming client object trees... nouveau [ DRM] resuming display... nouveau :02:00.0: no hotplug settings from platform nouveau :02:00.0: no hotplug settings from platform Logs(dmesg) are literally identical. 3.15.10-201.fc20.x86_64 - nouveau(fb) resume thaw PASSED, and that's all what works. Kernels = 3.16 - nouveau(fb) resume thaw BROKEN ALL Kernels - vesa(fb)resume thaw BROKEN. Excusez-moi, BROKEN == The display remains OFF. More precisely stated it looks like this: - Last kernel with working resume/thaw http://koji.fedoraproject.org/koji/buildinfo?buildID=538208 kernel-3.16.0-0.rc0.git9.1.fc21 2014-06-13 - First kernel with broken resume/thaw kernel-3.16.0-0.rc0.git10.1.fc21 http://koji.fedoraproject.org/koji/buildinfo?buildID=538244 http://pkgs.fedoraproject.org/repo/pkgs/kernel/patch-3.15-git10.xz/f98fb42e79c966f8e139e27b61d933e0/patch-3.15-git10.xz 2014-06-13 The only difference in dmesg between working and broken kernel module with drm.debug=14 is [drm:drm_helper_hpd_irq_event] [CONNECTOR:18:DVI-I-1] status updated from connected to connected [drm:drm_helper_hpd_irq_event] [CONNECTOR:18:DVI-I-1] status updated from connected to connected - git commit probably introduced breakage drm/nouveau/disp: add internal representaion of output paths and connectors https://git.kernel.org/cgit/linux/kernel/git/torvalds/linux.git/commit/drivers/gpu/drm?id=7a014a https://git.kernel.org/cgit/linux/kernel/git/next/linux-next.git/commit/drivers/gpu/drm/nouveau?id=7a014a 2014-06-11 - Ref. fdbs Video failed on resume from suspend https://bugs.freedesktop.org/show_bug.cgi?id=77599 https://bugs.freedesktop.org/show_bug.cgi?id=80506 poma ___ Nouveau mailing list Nouveau@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/nouveau
Re: [Nouveau] VGA resume thaw (wake up from S3 S4) broken - kernel(nouveau) exclusively
On Sat, Sep 13, 2014 at 4:52 PM, poma pomidorabelis...@gmail.com wrote: On 13.09.2014 07:02, poma wrote: On 13.09.2014 06:57, poma wrote: Actually I have nothing to show cause logs are all OK. Haha, it seems to me that the bugs become intelligent. 3.15.10-201.fc20.x86_64 3.16.2-200.fc20.x86_64 3.17.0-0.rc4.git3.2.fc22.1.x86_64 nouveau [ DRM] suspending display... nouveau [ DRM] unpinning framebuffer(s)... nouveau [ DRM] evicting buffers... nouveau [ DRM] waiting for kernel channels to go idle... nouveau [ DRM] suspending client object trees... nouveau [ DRM] suspending kernel object tree... ... nouveau [ DRM] re-enabling device... nouveau [ DRM] resuming kernel object tree... nouveau [ VBIOS][:02:00.0] running init tables nouveau [ PTHERM][:02:00.0] fan management: automatic nouveau [ CLK][:02:00.0] --: core 566 MHz shader 1400 MHz memory 399 MHz nouveau [ DRM] resuming client object trees... nouveau [ DRM] resuming display... nouveau :02:00.0: no hotplug settings from platform nouveau :02:00.0: no hotplug settings from platform Logs(dmesg) are literally identical. 3.15.10-201.fc20.x86_64 - nouveau(fb) resume thaw PASSED, and that's all what works. Kernels = 3.16 - nouveau(fb) resume thaw BROKEN ALL Kernels - vesa(fb)resume thaw BROKEN. Excusez-moi, BROKEN == The display remains OFF. More precisely stated it looks like this: - Last kernel with working resume/thaw http://koji.fedoraproject.org/koji/buildinfo?buildID=538208 kernel-3.16.0-0.rc0.git9.1.fc21 2014-06-13 - First kernel with broken resume/thaw kernel-3.16.0-0.rc0.git10.1.fc21 http://koji.fedoraproject.org/koji/buildinfo?buildID=538244 http://pkgs.fedoraproject.org/repo/pkgs/kernel/patch-3.15-git10.xz/f98fb42e79c966f8e139e27b61d933e0/patch-3.15-git10.xz 2014-06-13 The only difference in dmesg between working and broken kernel module with drm.debug=14 is [drm:drm_helper_hpd_irq_event] [CONNECTOR:18:DVI-I-1] status updated from connected to connected [drm:drm_helper_hpd_irq_event] [CONNECTOR:18:DVI-I-1] status updated from connected to connected - git commit probably introduced breakage drm/nouveau/disp: add internal representaion of output paths and connectors https://git.kernel.org/cgit/linux/kernel/git/torvalds/linux.git/commit/drivers/gpu/drm?id=7a014a https://git.kernel.org/cgit/linux/kernel/git/next/linux-next.git/commit/drivers/gpu/drm/nouveau?id=7a014a 2014-06-11 Do you have any special reason to believe this to be the culprit (besides the fact that it has something to do with hpd)? Can you do an actual bisect to confirm? Thanks, -ilia - Ref. fdbs Video failed on resume from suspend https://bugs.freedesktop.org/show_bug.cgi?id=77599 https://bugs.freedesktop.org/show_bug.cgi?id=80506 poma ___ Nouveau mailing list Nouveau@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/nouveau
Re: [Nouveau] VGA resume thaw (wake up from S3 S4) broken - kernel(nouveau) exclusively
On 13.09.2014 22:58, Ilia Mirkin wrote: On Sat, Sep 13, 2014 at 4:52 PM, poma pomidorabelis...@gmail.com wrote: On 13.09.2014 07:02, poma wrote: On 13.09.2014 06:57, poma wrote: Actually I have nothing to show cause logs are all OK. Haha, it seems to me that the bugs become intelligent. 3.15.10-201.fc20.x86_64 3.16.2-200.fc20.x86_64 3.17.0-0.rc4.git3.2.fc22.1.x86_64 nouveau [ DRM] suspending display... nouveau [ DRM] unpinning framebuffer(s)... nouveau [ DRM] evicting buffers... nouveau [ DRM] waiting for kernel channels to go idle... nouveau [ DRM] suspending client object trees... nouveau [ DRM] suspending kernel object tree... ... nouveau [ DRM] re-enabling device... nouveau [ DRM] resuming kernel object tree... nouveau [ VBIOS][:02:00.0] running init tables nouveau [ PTHERM][:02:00.0] fan management: automatic nouveau [ CLK][:02:00.0] --: core 566 MHz shader 1400 MHz memory 399 MHz nouveau [ DRM] resuming client object trees... nouveau [ DRM] resuming display... nouveau :02:00.0: no hotplug settings from platform nouveau :02:00.0: no hotplug settings from platform Logs(dmesg) are literally identical. 3.15.10-201.fc20.x86_64 - nouveau(fb) resume thaw PASSED, and that's all what works. Kernels = 3.16 - nouveau(fb) resume thaw BROKEN ALL Kernels - vesa(fb)resume thaw BROKEN. Excusez-moi, BROKEN == The display remains OFF. More precisely stated it looks like this: - Last kernel with working resume/thaw http://koji.fedoraproject.org/koji/buildinfo?buildID=538208 kernel-3.16.0-0.rc0.git9.1.fc21 2014-06-13 - First kernel with broken resume/thaw kernel-3.16.0-0.rc0.git10.1.fc21 http://koji.fedoraproject.org/koji/buildinfo?buildID=538244 http://pkgs.fedoraproject.org/repo/pkgs/kernel/patch-3.15-git10.xz/f98fb42e79c966f8e139e27b61d933e0/patch-3.15-git10.xz 2014-06-13 The only difference in dmesg between working and broken kernel module with drm.debug=14 is [drm:drm_helper_hpd_irq_event] [CONNECTOR:18:DVI-I-1] status updated from connected to connected [drm:drm_helper_hpd_irq_event] [CONNECTOR:18:DVI-I-1] status updated from connected to connected - git commit probably introduced breakage drm/nouveau/disp: add internal representaion of output paths and connectors https://git.kernel.org/cgit/linux/kernel/git/torvalds/linux.git/commit/drivers/gpu/drm?id=7a014a https://git.kernel.org/cgit/linux/kernel/git/next/linux-next.git/commit/drivers/gpu/drm/nouveau?id=7a014a 2014-06-11 Do you have any special reason to believe this to be the culprit (besides the fact that it has something to do with hpd)? Can you do an actual bisect to confirm? Thanks, -ilia hpd what? First Fedora Kernel with broken video resume/thaw aka FFKWBVRT i.e. kernel-3.16.0-0.rc0.git10.1.fc21 comes with 'patch-3.15-git10.xz' which closely resembles git/commit/drivers/gpu/drm/nouveau?id=7a014a. Simple as that. Why are you asking me that bisect formality, man is it not enough that I tested two dozen kernels. poma ___ Nouveau mailing list Nouveau@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/nouveau
Re: [Nouveau] VGA resume thaw (wake up from S3 S4) broken - kernel(nouveau) exclusively
Dear Poma, Don't get anyone wrong, your input is greatly valued. The reason why we (nouveau developers) generally ask for a git bisection is because we don't know or track specific distributions. Although your search has narrowed the problem down (thanks for that!), we don't know how big the difference is between kernel-3.16.0-0.rc0.git9.1.fc21 and kernel-3.16.0-0.rc0.git10.1.fc21. Is the difference literally just that one patch? Or were there more patches to nouveau or drm that might have been the culprit? So far I haven't succeeded in finding the exact differences between the two kernels. Git bisect on the upstream kernel on the other hand will always point at the precise patch that broke the kernel, narrowing down the search space of the bug for developers thus reducing the time it takes to fix your issue. Unless developers can reproduce your issue, Unfortunately the user is the person who has to do the bisecting. So in short: narrowing down the search space often saves a lot of time of the developer, reducing the time it takes to fix your issue! Thus, if you can find the time to perform a git bisect (with the right good/bad markers it really should not take that many kernels to build), or if you can validate that the patch you mention *really* is the only difference between the two kernels, it'd be greatly appreciated. Thanks! Yours, Roy Op 13-09-14 om 23:25 schreef poma: On 13.09.2014 22:58, Ilia Mirkin wrote: On Sat, Sep 13, 2014 at 4:52 PM, poma pomidorabelis...@gmail.com wrote: On 13.09.2014 07:02, poma wrote: On 13.09.2014 06:57, poma wrote: Actually I have nothing to show cause logs are all OK. Haha, it seems to me that the bugs become intelligent. 3.15.10-201.fc20.x86_64 3.16.2-200.fc20.x86_64 3.17.0-0.rc4.git3.2.fc22.1.x86_64 nouveau [ DRM] suspending display... nouveau [ DRM] unpinning framebuffer(s)... nouveau [ DRM] evicting buffers... nouveau [ DRM] waiting for kernel channels to go idle... nouveau [ DRM] suspending client object trees... nouveau [ DRM] suspending kernel object tree... ... nouveau [ DRM] re-enabling device... nouveau [ DRM] resuming kernel object tree... nouveau [ VBIOS][:02:00.0] running init tables nouveau [ PTHERM][:02:00.0] fan management: automatic nouveau [ CLK][:02:00.0] --: core 566 MHz shader 1400 MHz memory 399 MHz nouveau [ DRM] resuming client object trees... nouveau [ DRM] resuming display... nouveau :02:00.0: no hotplug settings from platform nouveau :02:00.0: no hotplug settings from platform Logs(dmesg) are literally identical. 3.15.10-201.fc20.x86_64 - nouveau(fb) resume thaw PASSED, and that's all what works. Kernels = 3.16 - nouveau(fb) resume thaw BROKEN ALL Kernels - vesa(fb)resume thaw BROKEN. Excusez-moi, BROKEN == The display remains OFF. More precisely stated it looks like this: - Last kernel with working resume/thaw http://koji.fedoraproject.org/koji/buildinfo?buildID=538208 kernel-3.16.0-0.rc0.git9.1.fc21 2014-06-13 - First kernel with broken resume/thaw kernel-3.16.0-0.rc0.git10.1.fc21 http://koji.fedoraproject.org/koji/buildinfo?buildID=538244 http://pkgs.fedoraproject.org/repo/pkgs/kernel/patch-3.15-git10.xz/f98fb42e79c966f8e139e27b61d933e0/patch-3.15-git10.xz 2014-06-13 The only difference in dmesg between working and broken kernel module with drm.debug=14 is [drm:drm_helper_hpd_irq_event] [CONNECTOR:18:DVI-I-1] status updated from connected to connected [drm:drm_helper_hpd_irq_event] [CONNECTOR:18:DVI-I-1] status updated from connected to connected - git commit probably introduced breakage drm/nouveau/disp: add internal representaion of output paths and connectors https://git.kernel.org/cgit/linux/kernel/git/torvalds/linux.git/commit/drivers/gpu/drm?id=7a014a https://git.kernel.org/cgit/linux/kernel/git/next/linux-next.git/commit/drivers/gpu/drm/nouveau?id=7a014a 2014-06-11 Do you have any special reason to believe this to be the culprit (besides the fact that it has something to do with hpd)? Can you do an actual bisect to confirm? Thanks, -ilia hpd what? First Fedora Kernel with broken video resume/thaw aka FFKWBVRT i.e. kernel-3.16.0-0.rc0.git10.1.fc21 comes with 'patch-3.15-git10.xz' which closely resembles git/commit/drivers/gpu/drm/nouveau?id=7a014a. Simple as that. Why are you asking me that bisect formality, man is it not enough that I tested two dozen kernels. poma ___ Nouveau mailing list Nouveau@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/nouveau ___ Nouveau mailing list Nouveau@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/nouveau
Re: [Nouveau] VGA resume thaw (wake up from S3 S4) broken - kernel(nouveau) exclusively
On Sat, Sep 13, 2014 at 5:25 PM, poma pomidorabelis...@gmail.com wrote: On 13.09.2014 22:58, Ilia Mirkin wrote: On Sat, Sep 13, 2014 at 4:52 PM, poma pomidorabelis...@gmail.com wrote: On 13.09.2014 07:02, poma wrote: On 13.09.2014 06:57, poma wrote: Actually I have nothing to show cause logs are all OK. Haha, it seems to me that the bugs become intelligent. 3.15.10-201.fc20.x86_64 3.16.2-200.fc20.x86_64 3.17.0-0.rc4.git3.2.fc22.1.x86_64 nouveau [ DRM] suspending display... nouveau [ DRM] unpinning framebuffer(s)... nouveau [ DRM] evicting buffers... nouveau [ DRM] waiting for kernel channels to go idle... nouveau [ DRM] suspending client object trees... nouveau [ DRM] suspending kernel object tree... ... nouveau [ DRM] re-enabling device... nouveau [ DRM] resuming kernel object tree... nouveau [ VBIOS][:02:00.0] running init tables nouveau [ PTHERM][:02:00.0] fan management: automatic nouveau [ CLK][:02:00.0] --: core 566 MHz shader 1400 MHz memory 399 MHz nouveau [ DRM] resuming client object trees... nouveau [ DRM] resuming display... nouveau :02:00.0: no hotplug settings from platform nouveau :02:00.0: no hotplug settings from platform Logs(dmesg) are literally identical. 3.15.10-201.fc20.x86_64 - nouveau(fb) resume thaw PASSED, and that's all what works. Kernels = 3.16 - nouveau(fb) resume thaw BROKEN ALL Kernels - vesa(fb)resume thaw BROKEN. Excusez-moi, BROKEN == The display remains OFF. More precisely stated it looks like this: - Last kernel with working resume/thaw http://koji.fedoraproject.org/koji/buildinfo?buildID=538208 kernel-3.16.0-0.rc0.git9.1.fc21 2014-06-13 - First kernel with broken resume/thaw kernel-3.16.0-0.rc0.git10.1.fc21 http://koji.fedoraproject.org/koji/buildinfo?buildID=538244 http://pkgs.fedoraproject.org/repo/pkgs/kernel/patch-3.15-git10.xz/f98fb42e79c966f8e139e27b61d933e0/patch-3.15-git10.xz 2014-06-13 The only difference in dmesg between working and broken kernel module with drm.debug=14 is [drm:drm_helper_hpd_irq_event] [CONNECTOR:18:DVI-I-1] status updated from connected to connected [drm:drm_helper_hpd_irq_event] [CONNECTOR:18:DVI-I-1] status updated from connected to connected - git commit probably introduced breakage drm/nouveau/disp: add internal representaion of output paths and connectors https://git.kernel.org/cgit/linux/kernel/git/torvalds/linux.git/commit/drivers/gpu/drm?id=7a014a https://git.kernel.org/cgit/linux/kernel/git/next/linux-next.git/commit/drivers/gpu/drm/nouveau?id=7a014a 2014-06-11 Do you have any special reason to believe this to be the culprit (besides the fact that it has something to do with hpd)? Can you do an actual bisect to confirm? Thanks, -ilia hpd what? hpd = hotplug detect First Fedora Kernel with broken video resume/thaw aka FFKWBVRT i.e. kernel-3.16.0-0.rc0.git10.1.fc21 comes with 'patch-3.15-git10.xz' which closely resembles git/commit/drivers/gpu/drm/nouveau?id=7a014a. Simple as that. I see. So no reason to believe that it's not e.g. 20014cb or 377b1f1 or any one of the other patches pulled in by merge commit bc1dfff04a? Why are you asking me that bisect formality, man is it not enough that I tested two dozen kernels. Doing a bisect would involve half as many kernels... Knowing the exact commit that breaks things is a fairly useful debug tactic, and drastically increases the chances that a problem gets fixed. Not sure why you're referring to it as a formality. git bisect start v3.16-rc1 v3.15 -- drivers/gpu/drm/nouveau (Pro tip: use a config tailored to your machine rather than a distro config if you want to spend 5 min/compile instead of 1 hour/compile) Or you can wait and hope that someone else will have the same problem and works out the commit that causes it. Or you can see if it has already been fixed in the latest kernels. Or try the experimental repo at http://cgit.freedesktop.org/~darktama/nouveau/ (a bit of a pain to build, unfortunately, you need some unknown kernel version to build against, usually ~latest works). Good luck, -ilia ___ Nouveau mailing list Nouveau@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/nouveau
Re: [Nouveau] VGA resume thaw (wake up from S3 S4) broken - kernel(nouveau) exclusively
On 13.09.2014 23:46, Ilia Mirkin wrote: On Sat, Sep 13, 2014 at 5:25 PM, poma pomidorabelis...@gmail.com wrote: On 13.09.2014 22:58, Ilia Mirkin wrote: On Sat, Sep 13, 2014 at 4:52 PM, poma pomidorabelis...@gmail.com wrote: On 13.09.2014 07:02, poma wrote: On 13.09.2014 06:57, poma wrote: Actually I have nothing to show cause logs are all OK. Haha, it seems to me that the bugs become intelligent. 3.15.10-201.fc20.x86_64 3.16.2-200.fc20.x86_64 3.17.0-0.rc4.git3.2.fc22.1.x86_64 nouveau [ DRM] suspending display... nouveau [ DRM] unpinning framebuffer(s)... nouveau [ DRM] evicting buffers... nouveau [ DRM] waiting for kernel channels to go idle... nouveau [ DRM] suspending client object trees... nouveau [ DRM] suspending kernel object tree... ... nouveau [ DRM] re-enabling device... nouveau [ DRM] resuming kernel object tree... nouveau [ VBIOS][:02:00.0] running init tables nouveau [ PTHERM][:02:00.0] fan management: automatic nouveau [ CLK][:02:00.0] --: core 566 MHz shader 1400 MHz memory 399 MHz nouveau [ DRM] resuming client object trees... nouveau [ DRM] resuming display... nouveau :02:00.0: no hotplug settings from platform nouveau :02:00.0: no hotplug settings from platform Logs(dmesg) are literally identical. 3.15.10-201.fc20.x86_64 - nouveau(fb) resume thaw PASSED, and that's all what works. Kernels = 3.16 - nouveau(fb) resume thaw BROKEN ALL Kernels - vesa(fb)resume thaw BROKEN. Excusez-moi, BROKEN == The display remains OFF. More precisely stated it looks like this: - Last kernel with working resume/thaw http://koji.fedoraproject.org/koji/buildinfo?buildID=538208 kernel-3.16.0-0.rc0.git9.1.fc21 2014-06-13 - First kernel with broken resume/thaw kernel-3.16.0-0.rc0.git10.1.fc21 http://koji.fedoraproject.org/koji/buildinfo?buildID=538244 http://pkgs.fedoraproject.org/repo/pkgs/kernel/patch-3.15-git10.xz/f98fb42e79c966f8e139e27b61d933e0/patch-3.15-git10.xz 2014-06-13 The only difference in dmesg between working and broken kernel module with drm.debug=14 is [drm:drm_helper_hpd_irq_event] [CONNECTOR:18:DVI-I-1] status updated from connected to connected [drm:drm_helper_hpd_irq_event] [CONNECTOR:18:DVI-I-1] status updated from connected to connected - git commit probably introduced breakage drm/nouveau/disp: add internal representaion of output paths and connectors https://git.kernel.org/cgit/linux/kernel/git/torvalds/linux.git/commit/drivers/gpu/drm?id=7a014a https://git.kernel.org/cgit/linux/kernel/git/next/linux-next.git/commit/drivers/gpu/drm/nouveau?id=7a014a 2014-06-11 Do you have any special reason to believe this to be the culprit (besides the fact that it has something to do with hpd)? Can you do an actual bisect to confirm? Thanks, -ilia hpd what? hpd = hotplug detect First Fedora Kernel with broken video resume/thaw aka FFKWBVRT i.e. kernel-3.16.0-0.rc0.git10.1.fc21 comes with 'patch-3.15-git10.xz' which closely resembles git/commit/drivers/gpu/drm/nouveau?id=7a014a. Simple as that. I see. So no reason to believe that it's not e.g. 20014cb or 377b1f1 or any one of the other patches pulled in by merge commit bc1dfff04a? Why are you asking me that bisect formality, man is it not enough that I tested two dozen kernels. Doing a bisect would involve half as many kernels... Knowing the exact commit that breaks things is a fairly useful debug tactic, and drastically increases the chances that a problem gets fixed. Not sure why you're referring to it as a formality. git bisect start v3.16-rc1 v3.15 -- drivers/gpu/drm/nouveau (Pro tip: use a config tailored to your machine rather than a distro config if you want to spend 5 min/compile instead of 1 hour/compile) Or you can wait and hope that someone else will have the same problem and works out the commit that causes it. Or you can see if it has already been fixed in the latest kernels. Or try the experimental repo at http://cgit.freedesktop.org/~darktama/nouveau/ (a bit of a pain to build, unfortunately, you need some unknown kernel version to build against, usually ~latest works). Good luck, -ilia Man, I am not a kernel developer, I do not understand what you're saying. I did the best I could and spent a lot of time besides. If that's not enough, so be it. Thank you very much. poma ___ Nouveau mailing list Nouveau@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/nouveau
[Nouveau] [PATCH] nouveau: fix glCompressedTexImage
mesa_texstore expects pixel data, not compressed data. For compressed textures, we want to just copy the bits in without any conversion. Signed-off-by: Ilia Mirkin imir...@alum.mit.edu --- src/mesa/drivers/dri/nouveau/nouveau_texture.c | 65 -- 1 file changed, 52 insertions(+), 13 deletions(-) diff --git a/src/mesa/drivers/dri/nouveau/nouveau_texture.c b/src/mesa/drivers/dri/nouveau/nouveau_texture.c index 4626cc3..dc5699c 100644 --- a/src/mesa/drivers/dri/nouveau/nouveau_texture.c +++ b/src/mesa/drivers/dri/nouveau/nouveau_texture.c @@ -413,6 +413,31 @@ get_teximage_placement(struct gl_texture_image *ti) } static void +nouveau_compressed_copy(struct gl_context *ctx, GLint dims, + struct gl_texture_image *ti, + GLsizei width, GLsizei height, GLsizei depth, + const GLvoid *src, GLvoid *dst, int row_stride) +{ + struct compressed_pixelstore store; + int i; + + _mesa_compute_compressed_pixelstore(dims, ti-TexFormat, + width, height, depth, + ctx-Unpack, store); + + src += store.SkipBytes; + + assert(store.CopySlices == 1); + + /* copy rows of blocks */ + for (i = 0; i store.CopyRowsPerSlice; i++) { + memcpy(dst, src, store.CopyBytesPerRow); + dst += row_stride; + src += store.TotalBytesPerRow; + } +} + +static void nouveau_teximage(struct gl_context *ctx, GLint dims, struct gl_texture_image *ti, GLsizei imageSize, @@ -451,13 +476,19 @@ nouveau_teximage(struct gl_context *ctx, GLint dims, GL_MAP_WRITE_BIT, map, row_stride); - ret = _mesa_texstore(ctx, dims, ti-_BaseFormat, -ti-TexFormat, -row_stride, -map, -ti-Width, ti-Height, depth, -format, type, pixels, packing); - assert(ret); + if (compressed) { + nouveau_compressed_copy(ctx, dims, ti, + ti-Width, ti-Height, depth, + pixels, map, row_stride); + } else { + ret = _mesa_texstore(ctx, dims, ti-_BaseFormat, +ti-TexFormat, +row_stride, +map, +ti-Width, ti-Height, depth, +format, type, pixels, packing); + assert(ret); + } nouveau_unmap_texture_image(ctx, ti, 0); _mesa_unmap_teximage_pbo(ctx, packing); @@ -502,7 +533,8 @@ static GLboolean nouveau_teximage_alloc(struct gl_context *ctx, struct gl_texture_image *ti) { nouveau_teximage(ctx, 3, ti, 0, 0, 0, NULL, -ctx-DefaultPacking, GL_FALSE); +ctx-DefaultPacking, +_mesa_is_format_compressed(ti-TexFormat)); return GL_TRUE; } @@ -535,11 +567,18 @@ nouveau_texsubimage(struct gl_context *ctx, GLint dims, xoffset, yoffset, width, height, GL_MAP_WRITE_BIT, map, row_stride); - ret = _mesa_texstore(ctx, dims, ti-_BaseFormat, ti-TexFormat, -row_stride, map, - width, height, depth, -format, type, pixels, packing); - assert(ret); + if (compressed) { + nouveau_compressed_copy(ctx, dims, ti, + width, height, depth, + pixels, map, row_stride); + } else { + ret = _mesa_texstore(ctx, dims, ti-_BaseFormat, +ti-TexFormat, +row_stride, map, +width, height, depth, +format, type, pixels, packing); + assert(ret); + } nouveau_unmap_texture_image(ctx, ti, 0); _mesa_unmap_teximage_pbo(ctx, packing); -- 1.8.5.5 ___ Nouveau mailing list Nouveau@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/nouveau