Trying nouveau reclocking

Boszormenyi Zoltan zboszor at pr.hu
Wed Jan 27 05:46:54 PST 2016


Hi,

2016-01-27 14:26 keltezéssel, Ilia Mirkin írta:
> The warn in question is
>
> static u32
> nvkm_mc_intr_mask(struct nvkm_mc *mc)
> {
>         u32 intr = mc->func->intr_mask(mc);
>         if (WARN_ON_ONCE(intr == 0xffffffff))
>                 intr = 0; /* likely fallen off the bus */
>         return intr;
> }
>
> Which is basically a sign of total death. Is this new with 4.5-rc1, or
> is this the first time you've tried reclocking this chip?

this was the first time I tried reclocking. When the GPU is idle,
reclocking is successful and the same WebGL app runs a lot smoother.
BTW, the machine I tried was a Zotac ZBOX MiniPC ID41 series.

I also have a question related to reclocking on other chips.

Zotac ZBOX ID84 series:

# lspci -s 02:00.0
02:00.0 VGA compatible controller: NVIDIA Corporation GF119M [GeForce GT 520M] (rev a1)
# lspci -s 02:00.0 -n
02:00.0 0300: 10de:1050 (rev a1)

Zotac ZBOX ID86 series:

# lspci -s 02:00.0
02:00.0 VGA compatible controller: NVIDIA Corporation GF119 [GeForce GT 610] (rev a1)
# lspci -s 02:00.0 -n
02:00.0 0300: 10de:104a (rev a1)

All three boxes are out of production now, but we're using about
20,000 (really, about twenty thousand) in total of them at my company.
Nouveau supports them just fine, the main application is video decoding/playing
and it works very well for the supported codecs reported via vdpauinfo.
Is there a known roadmap to support reclocking on these latter two?

Thanks,
Zoltán Böszörményi

>
>   -ilia
>
>
> On Wed, Jan 27, 2016 at 6:59 AM, Boszormenyi Zoltan <zboszor at pr.hu> wrote:
>> Hi,
>>
>> I was trying to use re-clocking with nouveau in 4.5.0-rc1 with:
>>
>> # echo "0f" >/sys/kernel/debug/dri/0/pstate
>>
>> while Chromium with a WebGL app already running. (www.playmapscube.com)
>>
>> The video chip in question is:
>>
>> 03:00.0 VGA compatible controller: NVIDIA Corporation GT218 [ION] (rev a2)
>>
>> or in numbers:
>>
>> 03:00.0 0300: 10de:0a64 (rev a2)
>>
>> It is an integrated chip on the mainboard.
>>
>> The result was:
>>
>> [   77.531009] ------------[ cut here ]------------
>> [   77.531009] WARNING: CPU: 3 PID: 405 at
>> drivers/gpu/drm/nouveau/nvkm/subdev/mc/base.c:51 nvkm_mc_intr+0x102/0x110 [nouveau]()
>> [   77.531009] Modules linked in: tun ums_realtek uas usb_storage joydev input_leds
>> hid_generic usbhid hid cdc_acm snd_hda_codec_hdmi nouveau arc4 mxm_wmi wmi ath9k
>> i2c_algo_bit iTCO_wdt drm_kms_helper iTCO_vendor_support gpio_ich ath9k_common
>> snd_hda_codec_realtek ttm snd_hda_codec_generic ath9k_hw drm snd_hda_intel ath
>> snd_hda_codec mac80211 snd_hwdep syscopyarea lpc_ich snd_hda_core sysfillrect mfd_core
>> sysimgblt fb_sys_fops coretemp snd_pcm serio_raw i2c_i801 xhci_pci pcspkr xhci_hcd
>> cfg80211 r8169 snd_timer i2c_core snd mii ehci_pci uhci_hcd rfkill ehci_hcd soundcore
>> acpi_cpufreq xt_limit xt_multiport xt_recent ip6table_filter xt_conntrack ip6table_nat
>> iptable_nat nf_conntrack_ipv6 nf_nat_ipv4 nf_defrag_ipv6 nf_conntrack_ipv4 nf_nat_ipv6
>> nf_defrag_ipv4 nf_nat xt_connmark nf_conntrack ip6_tables
>> [   77.531009]  iptable_mangle
>> [   77.531009] CPU: 3 PID: 405 Comm: Xorg.bin Not tainted 4.5.0-rc1 #1
>> [   77.531009] Hardware name: To Be Filled By O.E.M. To Be Filled By O.E.M./To Be Filled
>> By O.E.M., BIOS 080016  05/05/2011
>> [   77.531009]  ffffffffa053b6f0 ffff88007fd83cd8 ffffffff80761604 0000000000000000
>> [   77.531009]  ffff88007fd83d10 ffffffff8048e7a2 ffff88007c0ef480 ffff880037838840
>> [   77.531009]  ffff88007a4b3800 0000000000000000 ffffffffa04fa9a0 ffff88007fd83d20
>> [   77.531009] Call Trace:
>> [   77.531009]  <IRQ>  [<ffffffff80761604>] dump_stack+0x44/0x60
>> [   77.531009]  [<ffffffff8048e7a2>] warn_slowpath_common+0x82/0xc0
>> [   77.531009]  [<ffffffff8048e89a>] warn_slowpath_null+0x1a/0x20
>> [   77.531009]  [<ffffffffa046ee02>] nvkm_mc_intr+0x102/0x110 [nouveau]
>> [   77.531009]  [<ffffffffa0473284>] nvkm_pci_intr+0x44/0x70 [nouveau]
>> [   77.531009]  [<ffffffff804dbb35>] handle_irq_event_percpu+0x75/0x180
>> [   77.531009]  [<ffffffff804dbc7b>] handle_irq_event+0x3b/0x60
>> [   77.531009]  [<ffffffff804ded74>] handle_edge_irq+0x74/0x130
>> [   77.531009]  [<ffffffff80417dca>] handle_irq+0x1a/0x30
>> [   77.531009]  [<ffffffff804176eb>] do_IRQ+0x4b/0xd0
>> [   77.531009]  [<ffffffff80ac7d42>] common_interrupt+0x82/0x82
>> [   77.531009]  [<ffffffff80492cbb>] ? __do_softirq+0x7b/0x260
>> [   77.531009]  [<ffffffff80493031>] irq_exit+0xb1/0xc0
>> [   77.531009]  [<ffffffff8044e312>] smp_apic_timer_interrupt+0x42/0x50
>> [   77.531009]  [<ffffffff80ac7fe2>] apic_timer_interrupt+0x82/0x90
>> [   77.531009]  <EOI>  [<ffffffffa04dad41>] ? nouveau_fence_emit+0xf1/0x1a0 [nouveau]
>> [   77.531009]  [<ffffffffa04dad8f>] ? nouveau_fence_emit+0x13f/0x1a0 [nouveau]
>> [   77.531009]  [<ffffffffa04db329>] nouveau_fence_new+0x59/0xa0 [nouveau]
>> [   77.531009]  [<ffffffffa04c9aa5>] nouveau_gem_ioctl_pushbuf+0xeb5/0x1730 [nouveau]
>> [   77.531009]  [<ffffffffa03226a2>] drm_ioctl+0x152/0x540 [drm]
>> [   77.531009]  [<ffffffffa04c8bf0>] ? nouveau_gem_ioctl_new+0x1c0/0x1c0 [nouveau]
>> [   77.531009]  [<ffffffff80420175>] ? fpu__activate_curr+0x15/0x20
>> [   77.531009]  [<ffffffffa04c1908>] nouveau_drm_ioctl+0x68/0xc0 [nouveau]
>> [   77.531009]  [<ffffffff805f8562>] do_vfs_ioctl+0x92/0x580
>> [   77.531009]  [<ffffffff806eb883>] ? security_file_ioctl+0x43/0x60
>> [   77.531009]  [<ffffffff805f8ac9>] SyS_ioctl+0x79/0x90
>> [   77.531009]  [<ffffffff80ac7276>] entry_SYSCALL_64_fastpath+0x16/0x75
>> [   77.531009] ---[ end trace 4a0b55289f0a358e ]---
>> [   78.561529] nouveau 0000:03:00.0: timeout at
>> drivers/gpu/drm/nouveau/nvkm/subdev/clk/gt215.c:332/gt215_clk_pre()!
>> [   90.693743] nouveau 0000:03:00.0: gr: PGRAPH TLB flush idle timeout fail
>> [   90.693743] nouveau 0000:03:00.0: gr: PGRAPH_STATUS 01dffe03 [BUSY DISPATCH VFETCH
>> CCACHE_PREGEOM STRMOUT_VATTR_POSTGEOM VCLIP RATTR_APLANE TRAST CLIPID ZCULL ENG2D RMASK
>> TPC_RAST TPC_PROP
>> ]
>> [   90.693743] nouveau 0000:03:00.0: gr: PGRAPH_VSTATUS0: 00145b49 [VFETCH CCACHE]
>> [   90.693743] nouveau 0000:03:00.0: gr: PGRAPH_VSTATUS1: 00001a2d [TPC_MP]
>> [   90.693743] nouveau 0000:03:00.0: gr: PGRAPH_VSTATUS2: 0034db43 [ENG2D ROP]
>> [   93.001694] nouveau 0000:03:00.0: gr: PGRAPH TLB flush idle timeout fail
>> [   93.001694] nouveau 0000:03:00.0: gr: PGRAPH_STATUS 01dffe03 [BUSY DISPATCH VFETCH
>> CCACHE_PREGEOM STRMOUT_VATTR_POSTGEOM VCLIP RATTR_APLANE TRAST CLIPID ZCULL ENG2D RMASK
>> TPC_RAST TPC_PROP
>> ]
>> [   93.001694] nouveau 0000:03:00.0: gr: PGRAPH_VSTATUS0: 00145b49 [VFETCH CCACHE]
>> [   93.001694] nouveau 0000:03:00.0: gr: PGRAPH_VSTATUS1: 00001a2d [TPC_MP]
>> [   93.001694] nouveau 0000:03:00.0: gr: PGRAPH_VSTATUS2: 0034db43 [ENG2D ROP]
>> [   95.137647] nouveau 0000:03:00.0: gr: PGRAPH TLB flush idle timeout fail
>> [   95.137647] nouveau 0000:03:00.0: gr: PGRAPH_STATUS 01dffe03 [BUSY DISPATCH VFETCH
>> CCACHE_PREGEOM STRMOUT_VATTR_POSTGEOM VCLIP RATTR_APLANE TRAST CLIPID ZCULL ENG2D RMASK
>> TPC_RAST TPC_PROP
>> ]
>> [   95.137647] nouveau 0000:03:00.0: gr: PGRAPH_VSTATUS0: 00145b49 [VFETCH CCACHE]
>> [   95.137647] nouveau 0000:03:00.0: gr: PGRAPH_VSTATUS1: 00001a2d [TPC_MP]
>> [   95.137647] nouveau 0000:03:00.0: gr: PGRAPH_VSTATUS2: 0034db43 [ENG2D ROP]
>> [   98.022424] nouveau 0000:03:00.0: gr: PGRAPH TLB flush idle timeout fail
>> [   98.022424] nouveau 0000:03:00.0: gr: PGRAPH_STATUS 01dffe03 [BUSY DISPATCH VFETCH
>> CCACHE_PREGEOM STRMOUT_VATTR_POSTGEOM VCLIP RATTR_APLANE TRAST CLIPID ZCULL ENG2D RMASK
>> TPC_RAST TPC_PROP
>> ]
>> [   98.022424] nouveau 0000:03:00.0: gr: PGRAPH_VSTATUS0: 00145b49 [VFETCH CCACHE]
>> [   98.022424] nouveau 0000:03:00.0: gr: PGRAPH_VSTATUS1: 00001a2d [TPC_MP]
>> [   98.022424] nouveau 0000:03:00.0: gr: PGRAPH_VSTATUS2: 0034db43 [ENG2D ROP]
>> [   99.702023] nouveau 0000:03:00.0: gr: PGRAPH TLB flush idle timeout fail
>> [   99.702023] nouveau 0000:03:00.0: gr: PGRAPH_STATUS 01dffe03 [BUSY DISPATCH VFETCH
>> CCACHE_PREGEOM STRMOUT_VATTR_POSTGEOM VCLIP RATTR_APLANE TRAST CLIPID ZCULL ENG2D RMASK
>> TPC_RAST TPC_PROP ]
>> [   99.702023] nouveau 0000:03:00.0: gr: PGRAPH_VSTATUS0: 00145b49 [VFETCH CCACHE]
>> [   99.702023] nouveau 0000:03:00.0: gr: PGRAPH_VSTATUS1: 00001a2d [TPC_MP]
>> [   99.702023] nouveau 0000:03:00.0: gr: PGRAPH_VSTATUS2: 0034db43 [ENG2D ROP]
>> [  105.561027] nouveau 0000:03:00.0: chrome[1926]: failed to idle channel 6 [chrome[1926]]
>> [  107.562517] nouveau 0000:03:00.0: timeout at
>> drivers/gpu/drm/nouveau/nvkm/engine/fifo/chang84.c:111/g84_fifo_chan_engine_fini()!
>> [  107.562527] nouveau 0000:03:00.0: fifo: channel 6 [chrome[1926]] unload timeout
>> [  122.562029] nouveau 0000:03:00.0: chrome[1926]: failed to idle channel 6 [chrome[1926]]
>> [  145.491031] nouveau 0000:03:00.0: Xorg.bin[405]: failed to idle channel 5 [Xorg.bin[405]]
>> [  147.492503] nouveau 0000:03:00.0: timeout at
>> drivers/gpu/drm/nouveau/nvkm/engine/fifo/chang84.c:111/g84_fifo_chan_engine_fini()!
>> [  147.492514] nouveau 0000:03:00.0: fifo: channel 5 [Xorg.bin[405]] unload timeout
>> [  148.312163] nouveau 0000:03:00.0: gr: PGRAPH TLB flush idle timeout fail
>> [  148.312163] nouveau 0000:03:00.0: gr: PGRAPH_STATUS 01dffe03 [BUSY DISPATCH VFETCH
>> CCACHE_PREGEOM STRMOUT_VATTR_POSTGEOM VCLIP RATTR_APLANE TRAST CLIPID ZCULL ENG2D RMASK
>> TPC_RAST TPC_PROP ]
>> [  148.312163] nouveau 0000:03:00.0: gr: PGRAPH_VSTATUS0: 00145b49 [VFETCH CCACHE]
>> [  148.312163] nouveau 0000:03:00.0: gr: PGRAPH_VSTATUS1: 00001a2d [TPC_MP]
>> [  148.312163] nouveau 0000:03:00.0: gr: PGRAPH_VSTATUS2: 0034db43 [ENG2D ROP]
>> [  164.494032] nouveau 0000:03:00.0: Xorg.bin[405]: failed to idle channel 5 [Xorg.bin[405]]
>> [  165.629394] nouveau 0000:03:00.0: gr: PGRAPH TLB flush idle timeout fail
>> [  165.629394] nouveau 0000:03:00.0: gr: PGRAPH_STATUS 01dffe03 [BUSY DISPATCH VFETCH
>> CCACHE_PREGEOM STRMOUT_VATTR_POSTGEOM VCLIP RATTR_APLANE TRAST CLIPID ZCULL ENG2D RMASK
>> TPC_RAST TPC_PROP ]
>> [  165.629394] nouveau 0000:03:00.0: gr: PGRAPH_VSTATUS0: 00145b49 [VFETCH CCACHE]
>> [  165.629394] nouveau 0000:03:00.0: gr: PGRAPH_VSTATUS1: 00001a2d [TPC_MP]
>> [  165.629394] nouveau 0000:03:00.0: gr: PGRAPH_VSTATUS2: 0034db43 [ENG2D ROP]
>> [  168.408605] nouveau 0000:03:00.0: gr: PGRAPH TLB flush idle timeout fail
>> [  168.408605] nouveau 0000:03:00.0: gr: PGRAPH_STATUS 01dffe03 [BUSY DISPATCH VFETCH
>> CCACHE_PREGEOM STRMOUT_VATTR_POSTGEOM VCLIP RATTR_APLANE TRAST CLIPID ZCULL ENG2D RMASK
>> TPC_RAST TPC_PROP ]
>> [  168.408605] nouveau 0000:03:00.0: gr: PGRAPH_VSTATUS0: 00145b49 [VFETCH CCACHE]
>> [  168.408605] nouveau 0000:03:00.0: gr: PGRAPH_VSTATUS1: 00001a2d [TPC_MP]
>> [  168.408605] nouveau 0000:03:00.0: gr: PGRAPH_VSTATUS2: 0034db43 [ENG2D ROP]
>> [  170.209599] nouveau 0000:03:00.0: gr: PGRAPH TLB flush idle timeout fail
>> [  170.209599] nouveau 0000:03:00.0: gr: PGRAPH_STATUS 01dffe03 [BUSY DISPATCH VFETCH
>> CCACHE_PREGEOM STRMOUT_VATTR_POSTGEOM VCLIP RATTR_APLANE TRAST CLIPID ZCULL ENG2D RMASK
>> TPC_RAST TPC_PROP ]
>> [  170.209599] nouveau 0000:03:00.0: gr: PGRAPH_VSTATUS0: 00145b49 [VFETCH CCACHE]
>> [  170.209599] nouveau 0000:03:00.0: gr: PGRAPH_VSTATUS1: 00001a2d [TPC_MP]
>> [  170.209599] nouveau 0000:03:00.0: gr: PGRAPH_VSTATUS2: 0034db43 [ENG2D ROP]
>> [  172.189493] nouveau 0000:03:00.0: gr: PGRAPH TLB flush idle timeout fail
>> [  172.189493] nouveau 0000:03:00.0: gr: PGRAPH_STATUS 01dffe03 [BUSY DISPATCH VFETCH
>> CCACHE_PREGEOM STRMOUT_VATTR_POSTGEOM VCLIP RATTR_APLANE TRAST CLIPID ZCULL ENG2D RMASK
>> TPC_RAST TPC_PROP ]
>> [  172.189493] nouveau 0000:03:00.0: gr: PGRAPH_VSTATUS0: 00145b49 [VFETCH CCACHE]
>> [  172.189493] nouveau 0000:03:00.0: gr: PGRAPH_VSTATUS1: 00001a2d [TPC_MP]
>> [  172.189493] nouveau 0000:03:00.0: gr: PGRAPH_VSTATUS2: 0034db43 [ENG2D ROP]
>> [  172.527022] nouveau 0000:03:00.0: gr: PGRAPH TLB flush idle timeout fail
>> [  172.527022] nouveau 0000:03:00.0: gr: PGRAPH_STATUS 01dffe03 [BUSY DISPATCH VFETCH
>> CCACHE_PREGEOM STRMOUT_VATTR_POSTGEOM VCLIP RATTR_APLANE TRAST CLIPID ZCULL ENG2D RMASK
>> TPC_RAST TPC_PROP ]
>> [  172.527022] nouveau 0000:03:00.0: gr: PGRAPH_VSTATUS0: 00145b49 [VFETCH CCACHE]
>> [  172.527022] nouveau 0000:03:00.0: gr: PGRAPH_VSTATUS1: 00001a2d [TPC_MP]
>> [  172.527022] nouveau 0000:03:00.0: gr: PGRAPH_VSTATUS2: 0034db43 [ENG2D ROP]
>> [  189.528029] nouveau 0000:03:00.0: Xorg.bin[405]: failed to idle channel 4 [Xorg.bin[405]]
>> [  191.529426] nouveau 0000:03:00.0: timeout at
>> drivers/gpu/drm/nouveau/nvkm/engine/fifo/chang84.c:111/g84_fifo_chan_engine_fini()!
>> [  191.529436] nouveau 0000:03:00.0: fifo: channel 4 [Xorg.bin[405]] unload timeout
>> [  191.733932] nouveau 0000:03:00.0: gr: PGRAPH TLB flush idle timeout fail
>> [  191.733932] nouveau 0000:03:00.0: gr: PGRAPH_STATUS 01dffe03 [BUSY DISPATCH VFETCH
>> CCACHE_PREGEOM STRMOUT_VATTR_POSTGEOM VCLIP RATTR_APLANE TRAST CLIPID ZCULL ENG2D RMASK
>> TPC_RAST TPC_PROP ]
>> [  191.733932] nouveau 0000:03:00.0: gr: PGRAPH_VSTATUS0: 00145b49 [VFETCH CCACHE]
>> [  191.733932] nouveau 0000:03:00.0: gr: PGRAPH_VSTATUS1: 00001a2d [TPC_MP]
>> [  191.733932] nouveau 0000:03:00.0: gr: PGRAPH_VSTATUS2: 0034db43 [ENG2D ROP]
>>
>> I guess this is possibly a race condition.
>>
>> Best regards,
>> Zoltán Böszörményi
>>



More information about the dri-devel mailing list