[Nouveau] Nouveau kernel module exhausting CPU
Ilia Mirkin
imirkin at alum.mit.edu
Sun Apr 5 10:56:51 PDT 2015
You can use perf to try to see where the cpu time is going.
On Sun, Apr 5, 2015 at 1:42 PM, Matti Nykyri <Matti.Nykyri at iki.fi> wrote:
> Hello
>
> I recently switched from Nvidia binary driver to Nouveau. I have encountered a possible bug in the kernel module. Before I file a bug report I would like to know if this is a known issue or not.
>
> I believe it is related to sleep state and power management of the driver.
>
> The Bug:
>
> When the computer is left on it's own to go to a power save mode X takes 100% CPU-time in its thread. A trace to X server shows this is caused by select-systemcall immediately returning when X is polling its FD's. The FD nro 12 is constantly indicating that there is data to read so X will never sleep. The FD 12 is a r/w socket connected via netlink to kernel's UEVENT.
>
> Restarting X resets the problem to wait again for the sleep state. A new sleep will make the problem arice again.
>
>
> Hardware:
>
> I have Fermi nVidia gpu GF104 NVC4 (GeForce GTX 460) and i5 quad core amd64 processor
>
> Software:
>
> System is running gentoo with stable 'default/linux/amd64/13.0/desktop/kde'-profile
>
> Kernel:
> sys-kernel/gentoo-sources-3.18.7
>
> Nouveau driver:
> x11-drivers/xf86-video-nouveau-1.0.11
>
> Xorg-server:
> x11-base/xorg-server-1.16.4
>
> KMS is used for selecting video modes.
>
> ---- dmesg ----
> [ 0.623063] [drm] Initialized drm 1.1.0 20060810
> [ 0.623272] nouveau [ DEVICE][0000:01:00.0] BOOT0 : 0x0c4100a1
> [ 0.623274] nouveau [ DEVICE][0000:01:00.0] Chipset: GF104 (NVC4)
> [ 0.623275] nouveau [ DEVICE][0000:01:00.0] Family : NVC0
> [ 0.623307] nouveau [ VBIOS][0000:01:00.0] checking PRAMIN for image...
> [ 0.716983] nouveau [ VBIOS][0000:01:00.0] ... appears to be valid
> [ 0.716985] nouveau [ VBIOS][0000:01:00.0] using image from PRAMIN
> [ 0.717075] nouveau [ VBIOS][0000:01:00.0] BIT signature found
> [ 0.717076] nouveau [ VBIOS][0000:01:00.0] version 70.04.1b.00.02
> [ 0.739319] nouveau 0000:01:00.0: irq 34 for MSI/MSI-X
> [ 0.739327] nouveau [ PMC][0000:01:00.0] MSI interrupts enabled
> [ 0.739359] nouveau [ PFB][0000:01:00.0] RAM type: GDDR5
> [ 0.739360] nouveau [ PFB][0000:01:00.0] RAM size: 1024 MiB
> [ 0.739361] nouveau [ PFB][0000:01:00.0] ZCOMP: 0 tags
> [ 0.744934] nouveau [ VOLT][0000:01:00.0] GPU voltage: 875000uv
> [ 0.773304] nouveau [ PTHERM][0000:01:00.0] FAN control: PWM
> [ 0.773316] nouveau [ PTHERM][0000:01:00.0] fan management: automatic
> [ 0.773343] nouveau [ PTHERM][0000:01:00.0] internal sensor: yes
> [ 0.793417] nouveau [ CLK][0000:01:00.0] 03: core 50 MHz memory 135 MHz
> [ 0.793419] nouveau [ CLK][0000:01:00.0] 07: core 405 MHz memory 324 MHz
> [ 0.793421] nouveau [ CLK][0000:01:00.0] 0c: core 405 MHz memory 1900 MHz
> [ 0.793423] nouveau [ CLK][0000:01:00.0] 0f: core 800 MHz memory 1900 MHz
> [ 0.793498] nouveau [ CLK][0000:01:00.0] --: core 50 MHz memory 135 MHz
> [ 0.803150] nouveau [ DRM] VRAM: 1024 MiB
> [ 0.803151] nouveau [ DRM] GART: 1048576 MiB
> [ 0.803154] nouveau [ DRM] TMDS table version 2.0
> [ 0.803155] nouveau [ DRM] DCB version 4.0
> [ 0.803157] nouveau [ DRM] DCB outp 00: 04000310 00000000
> [ 0.803158] nouveau [ DRM] DCB outp 01: 02011300 00020030
> [ 0.803159] nouveau [ DRM] DCB outp 02: 01011302 00020030
> [ 0.803160] nouveau [ DRM] DCB outp 03: 02022362 00020010
> [ 0.803161] nouveau [ DRM] DCB outp 04: 08033382 00020030
> [ 0.803162] nouveau [ DRM] DCB conn 00: 00000000
> [ 0.803164] nouveau [ DRM] DCB conn 01: 00001130
> [ 0.803165] nouveau [ DRM] DCB conn 02: 00002261
> [ 0.803166] nouveau [ DRM] DCB conn 03: 00010330
> [ 0.803819] [drm] forcing VGA-1 connector OFF
> [ 0.803928] [drm] Supports vblank timestamp caching Rev 2 (21.10.2013).
> [ 0.803928] [drm] Driver supports precise vblank timestamp query.
> [ 0.818699] nouveau [ DRM] MM: using COPY1 for buffer copies
> [ 1.063301] nouveau [ DRM] allocated 1920x1080 fb: 0x60000, bo ffff880215bee800
> [ 1.063423] fbcon: nouveaufb (fb0) is primary device
> [ 1.181816] nouveau 0000:01:00.0: fb0: nouveaufb frame buffer device
> [ 1.181817] nouveau 0000:01:00.0: registered panic notifier
> [ 1.197990] [drm] Initialized nouveau 1.2.1 20120801 for 0000:01:00.0 on minor 0
> ---- end ----
>
> X uses 2 separate screens in ZaphodHeads mode
>
> ---- Xorg.0.log ----
> [176404.378] (II) xfree86: Adding drm device (/dev/dri/card0)
> [176404.384] (II) LoadModule: "nouveau"
> [176404.385] (II) Loading /usr/lib64/xorg/modules/drivers/nouveau_drv.so
> [176404.385] (II) Module nouveau: vendor="X.Org Foundation"
> [176404.385] (II) NOUVEAU driver
> [176404.385] (II) NOUVEAU driver for NVIDIA chipset families :
> [176404.386] (II) [drm] nouveau interface version: 1.2.1
> [176404.386] (II) [drm] nouveau interface version: 1.2.1
> [176404.387] (--) NOUVEAU(0): Chipset: "NVIDIA NVC4"
> [176404.387] (==) NOUVEAU(0): Depth 24, (--) framebuffer bpp 32
> [176404.387] (==) NOUVEAU(0): RGB weight 888
> [176404.387] (==) NOUVEAU(0): Default visual is TrueColor
> [176404.387] (**) NOUVEAU(0): Option "ZaphodHeads" "HDMI-1"
> [176404.387] (==) NOUVEAU(0): Using HW cursor
> [176404.387] (==) NOUVEAU(0): GLX sync to VBlank enabled.
> [176404.387] (==) NOUVEAU(0): Page flipping enabled
> [176404.387] (==) NOUVEAU(0): Swap limit set to 1 [Max allowed 2]
> [176404.387] (==) NOUVEAU(0): Page flipping synced to vblank by kernel.
> [176404.387] (II) NOUVEAU(0): Initializing outputs ...
> [176404.507] (II) NOUVEAU(0): Output HDMI-1 using monitor section Monitor0
> [176404.507] (**) NOUVEAU(0): Option "PreferredMode" "1920x1080_23"
> [176404.508] (WW) NOUVEAU(0): Option "MaxClock" requires a frequency value
> etc...
> ---- end ----
>
> Any ideas?
>
> --
> -Matti
> _______________________________________________
> Nouveau mailing list
> Nouveau at lists.freedesktop.org
> http://lists.freedesktop.org/mailman/listinfo/nouveau
More information about the Nouveau
mailing list