View previous topic :: View next topic |
Author |
Message |
terrenana Tux's lil' helper
Joined: 06 Feb 2021 Posts: 85 Location: Chicago, IL, USA
|
Posted: Mon Dec 05, 2022 4:33 pm Post subject: mesa using softpipe, X using nouveau |
|
|
Hi,
I have a problem with mesa. Mesa is using softpipe software rendering instead of nouveau. VIDEO_CARDS is set to nouveau, X server is using nouveau correctly. I have frankly no clue why mesa refuses to just use the nouveau driver. _________________ what should i put here? |
|
Back to top |
|
|
grknight Retired Dev
Joined: 20 Feb 2015 Posts: 1652
|
Posted: Mon Dec 05, 2022 4:52 pm Post subject: |
|
|
Please review and share the log file at either ~/.local/share/xorg/Xorg.0.log or /var/log/Xorg.0.log (with a recent timestamp) as that will show why. |
|
Back to top |
|
|
terrenana Tux's lil' helper
Joined: 06 Feb 2021 Posts: 85 Location: Chicago, IL, USA
|
Posted: Mon Dec 05, 2022 5:05 pm Post subject: |
|
|
https://pastebin.com/WywLnuqx
Xorg.0.log.
Nouveau appears to be loading correctly. The only thing on my system (to my knowledge) that is using software rendering is Mesa.
dmesg: https://pastebin.com/4dQmF0Ey _________________ what should i put here? |
|
Back to top |
|
|
grknight Retired Dev
Joined: 20 Feb 2015 Posts: 1652
|
Posted: Mon Dec 05, 2022 5:32 pm Post subject: |
|
|
terrenana wrote: | https://pastebin.com/WywLnuqx
Xorg.0.log.
Nouveau appears to be loading correctly. The only thing on my system (to my knowledge) that is using software rendering is Mesa.
dmesg: https://pastebin.com/4dQmF0Ey |
Xorg log:
Code: | [ 75.240] (EE) NOUVEAU(0): Error creating GPU channel: -19
[ 75.240] (EE) NOUVEAU(0): Error initialising acceleration. Falling back to NoAccel
|
dmesg suggests there may be more firmware files necessary. It may be advantageous to make CONFIG_DRM_NOUVEAU=m instead of =y in the kernel so it can try to load more things. |
|
Back to top |
|
|
terrenana Tux's lil' helper
Joined: 06 Feb 2021 Posts: 85 Location: Chicago, IL, USA
|
Posted: Mon Dec 05, 2022 6:31 pm Post subject: |
|
|
Even with DRM_NOUVEAU built as a module nothing changes. dmesg and Xorg log output unchanged. Is there a way for me to see a mesa log? I think the problem is with mesa. _________________ what should i put here? |
|
Back to top |
|
|
grknight Retired Dev
Joined: 20 Feb 2015 Posts: 1652
|
Posted: Mon Dec 05, 2022 6:44 pm Post subject: |
|
|
terrenana wrote: | Even with DRM_NOUVEAU built as a module nothing changes. dmesg and Xorg log output unchanged. Is there a way for me to see a mesa log? I think the problem is with mesa. |
The problem is with nouveau. It is disabling mesa acceleration with the quoted lines. |
|
Back to top |
|
|
terrenana Tux's lil' helper
Joined: 06 Feb 2021 Posts: 85 Location: Chicago, IL, USA
|
Posted: Mon Dec 05, 2022 6:51 pm Post subject: |
|
|
Ah. So the problem is nouveau is missing some component of acceleration. How would I rectify this? _________________ what should i put here? |
|
Back to top |
|
|
grknight Retired Dev
Joined: 20 Feb 2015 Posts: 1652
|
Posted: Mon Dec 05, 2022 6:53 pm Post subject: |
|
|
Fix the 4 missing firmware files that dmesg is complaining about and it is likely that everything else will just work.
Edit: if nouveau is now a module, the loading timestamp will change to much later in the boot sequence and should not show the 4 missing firmwares. |
|
Back to top |
|
|
terrenana Tux's lil' helper
Joined: 06 Feb 2021 Posts: 85 Location: Chicago, IL, USA
|
Posted: Mon Dec 05, 2022 7:02 pm Post subject: |
|
|
I believe the problem is I dont have nvidia-firmware installed properly. in the kernel param CONIFG_FW_LOADER, i have /lib/firmware. Inside /lib/firmware there is a folder called nouveau, where nvidia-firmware package installed its files. When I attempt to change CONFIG_FW_LOADER, it also changes CONFIG_EXTRA_FIRMWARE. when I build the kernel, it then errors. showing this
Code: | make[4]: *** No rule to make target '/lib/firmware//lib/firmware', needed by 'drivers/base/firmware_loader/builtin//lib/firmware.gen.o'. Stop. |
How do I make it so I only add that file to one of the options, adding to one automatically adds to the other, and in .config which one do I select?
Also, do i point it at the /lib/firmware/nouveau directory or just /lib/firmware.
Thanks for your patience and help thus far. _________________ what should i put here? |
|
Back to top |
|
|
grknight Retired Dev
Joined: 20 Feb 2015 Posts: 1652
|
Posted: Mon Dec 05, 2022 7:08 pm Post subject: |
|
|
If you wish to want to use CONFIG_EXTRA_FIRMWARE, you must list FILES not directories relative to CONFIG_EXTRA_FIRMWARE_DIR (which defaults to /lib/firmware).
For example, using what already is shown in the output, CONFIG_EXTRA_FIRMWARE="nvidia/gp106/nvdec/scrubber.bin nvidia/gp106/acr/bl.bin"
But 4 unknown files are also necessary.
This is usually not necessary if DRM_NOUVEAU is loaded as a module as it can read from the file system. |
|
Back to top |
|
|
terrenana Tux's lil' helper
Joined: 06 Feb 2021 Posts: 85 Location: Chicago, IL, USA
|
Posted: Mon Dec 05, 2022 7:10 pm Post subject: |
|
|
Even when built as a module it wasnt working. How do I get the module to load when needed? _________________ what should i put here? |
|
Back to top |
|
|
grknight Retired Dev
Joined: 20 Feb 2015 Posts: 1652
|
Posted: Mon Dec 05, 2022 7:12 pm Post subject: |
|
|
Please show the dmesg output when built as a module |
|
Back to top |
|
|
terrenana Tux's lil' helper
Joined: 06 Feb 2021 Posts: 85 Location: Chicago, IL, USA
|
Posted: Mon Dec 05, 2022 7:15 pm Post subject: |
|
|
Even if built as module, glxinfo -B still shows mesa as not using nouveau _________________ what should i put here? |
|
Back to top |
|
|
terrenana Tux's lil' helper
Joined: 06 Feb 2021 Posts: 85 Location: Chicago, IL, USA
|
|
Back to top |
|
|
grknight Retired Dev
Joined: 20 Feb 2015 Posts: 1652
|
Posted: Mon Dec 05, 2022 7:23 pm Post subject: |
|
|
terrenana wrote: | https://pastebin.com/WjGt56Wd
dmesg when built as module |
This shows it is NOT loaded as a module and still built-in. Please boot the updated kernel. You need to reinstall the full kernel file after this change.
Also, ensure that CONFIG_FB_NVIDIA is disabled. This will interfere with nouveau. |
|
Back to top |
|
|
NeddySeagoon Administrator
Joined: 05 Jul 2003 Posts: 54216 Location: 56N 3W
|
Posted: Mon Dec 05, 2022 7:38 pm Post subject: |
|
|
terrenana
Code: | [ 0.384409] nouveau 0000:07:00.0: bios: version 86.06.45.00.3c
[ 0.384514] Loading firmware: nvidia/gp106/nvdec/scrubber.bin
[ 0.384535] Loading firmware: nvidia/gp106/acr/bl.bin
[ 0.384541] nouveau 0000:07:00.0: acr: firmware unavailable
[ 0.384544] nouveau 0000:07:00.0: pmu: firmware unavailable
[ 0.384574] nouveau 0000:07:00.0: gr: firmware unavailable
[ 0.384580] nouveau 0000:07:00.0: sec2: firmware unavailable |
Note the timestamps,
Code: | [ 3.030957] dracut: Mounted root filesystem /dev/nvme0n1p3 | is when /lib/firmware can be read.
Almost three seconds too late.
Modules are loaded from /lib/modules, also on the root fs.
If dracut sucked the nouveau module into the initrd, the firmware must be loaded from there too. _________________ Regards,
NeddySeagoon
Computer users fall into two groups:-
those that do backups
those that have never had a hard drive fail. |
|
Back to top |
|
|
terrenana Tux's lil' helper
Joined: 06 Feb 2021 Posts: 85 Location: Chicago, IL, USA
|
Posted: Mon Dec 05, 2022 7:58 pm Post subject: |
|
|
So how do I get dracut to load it? There aren't files to add to build into the kernel matching those names. Can I just add them all? (and how) _________________ what should i put here? |
|
Back to top |
|
|
NeddySeagoon Administrator
Joined: 05 Jul 2003 Posts: 54216 Location: 56N 3W
|
Posted: Mon Dec 05, 2022 8:24 pm Post subject: |
|
|
terrenana,
I roll my initramfs by hand. I don't know how dracut (or genkernel) work.
The kernel needs all the bits to be accessible when the code is initialised.
Everything built into the kernel binary, everything in the initrd or everything on the root filesystem work. _________________ Regards,
NeddySeagoon
Computer users fall into two groups:-
those that do backups
those that have never had a hard drive fail. |
|
Back to top |
|
|
terrenana Tux's lil' helper
Joined: 06 Feb 2021 Posts: 85 Location: Chicago, IL, USA
|
Posted: Mon Dec 05, 2022 8:32 pm Post subject: |
|
|
I think it would be easist to just build the needed firmware into the kernel. How can i specify that I want the contents of /lib/firmware built into the kernel? _________________ what should i put here? |
|
Back to top |
|
|
grknight Retired Dev
Joined: 20 Feb 2015 Posts: 1652
|
Posted: Mon Dec 05, 2022 8:34 pm Post subject: |
|
|
terrenana wrote: | I think it would be easist to just build the needed firmware into the kernel. How can i specify that I want the contents of /lib/firmware built into the kernel? |
List each file relative to /lib/firmware in CONFIG_EXTRA_FIRMWARE. Each file name must be separated with spaces. Wildcards and directory names alone are not allowed. |
|
Back to top |
|
|
terrenana Tux's lil' helper
Joined: 06 Feb 2021 Posts: 85 Location: Chicago, IL, USA
|
Posted: Mon Dec 05, 2022 8:40 pm Post subject: |
|
|
I found all the directories of the missing firmware. its a bit weird though because each one exists in basically every subdir of nvidia, and in each there are 4 files, I would have to manually include hundreds of files. There is no way that is what was intended? _________________ what should i put here? |
|
Back to top |
|
|
grknight Retired Dev
Joined: 20 Feb 2015 Posts: 1652
|
Posted: Mon Dec 05, 2022 8:42 pm Post subject: |
|
|
terrenana wrote: | I found all the directories of the missing firmware. its a bit weird though because each one exists in basically every subdir of nvidia, and in each there are 4 files, I would have to manually include hundreds of files. There is no way that is what was intended? |
Well your card is the gp106, so just limit to the files under that directory for starters to match your card. |
|
Back to top |
|
|
terrenana Tux's lil' helper
Joined: 06 Feb 2021 Posts: 85 Location: Chicago, IL, USA
|
Posted: Mon Dec 05, 2022 8:42 pm Post subject: |
|
|
Right. I should have realized that. Well I guess I'll just include all 4 files each time _________________ what should i put here? |
|
Back to top |
|
|
grknight Retired Dev
Joined: 20 Feb 2015 Posts: 1652
|
Posted: Mon Dec 05, 2022 8:45 pm Post subject: |
|
|
terrenana wrote: | Right. I should have realized that. Well I guess I'll just include all 4 files each time |
There are certainly a lot more than 4 files...
Code: | $ find /lib/firmware/nvidia/gp106 -not -type d | cut -d / -f 4-
nvidia/gp106/acr/unload_bl.bin
nvidia/gp106/acr/ucode_unload.bin
nvidia/gp106/acr/ucode_load.bin
nvidia/gp106/acr/bl.bin
nvidia/gp106/gr/fecs_data.bin
nvidia/gp106/gr/fecs_sig.bin
nvidia/gp106/gr/gpccs_data.bin
nvidia/gp106/gr/gpccs_sig.bin
nvidia/gp106/gr/sw_nonctx.bin
nvidia/gp106/gr/sw_method_init.bin
nvidia/gp106/gr/sw_ctx.bin
nvidia/gp106/gr/sw_bundle_init.bin
nvidia/gp106/gr/gpccs_inst.bin
nvidia/gp106/gr/gpccs_bl.bin
nvidia/gp106/gr/fecs_inst.bin
nvidia/gp106/gr/fecs_bl.bin
nvidia/gp106/nvdec/scrubber.bin
nvidia/gp106/sec2/sig-1.bin
nvidia/gp106/sec2/image-1.bin
nvidia/gp106/sec2/desc-1.bin
nvidia/gp106/sec2/sig.bin
nvidia/gp106/sec2/image.bin
nvidia/gp106/sec2/desc.bin |
|
|
Back to top |
|
|
terrenana Tux's lil' helper
Joined: 06 Feb 2021 Posts: 85 Location: Chicago, IL, USA
|
Posted: Mon Dec 05, 2022 8:51 pm Post subject: |
|
|
PROGRESS!!!!!! ok so now mesa is using nouveau, although dmesg still says that it cant load pmu firmware. But hey, mesa works, so I'm not gonna worry about it. Thank both of you SO much for your help and patience. I really appreciate it. _________________ what should i put here? |
|
Back to top |
|
|
|