New NovaCustom computer with Intel Meteor Lake - integrated Arc graphics still works with jxself's Linux-Libre

12 Antworten [Letzter Beitrag]
andyprough
Offline
Beigetreten: 02/12/2015

We got a new NovaCustom "NUC" computer at work yesterday - a very small mini-computer about the size of a thick, short, paperback book. It has an Intel Meteor Lake cpu - Intel Core Ultra 7 155H - and Intel "Arc" integrated graphics.

Tried the Linux-libre 6.18.5 kernel from jxself's freesh repo and so far it appears to be using the Intel Arc integrated graphics instead of falling back to llvmpipe:

$ glxinfo | grep render
...
Extended renderer info (GLX_MESA_query_renderer):
OpenGL renderer string: Mesa Intel(R) Arc(tm) Graphics (MTL)

I wasn't sure if it would work with Arc, but, there you have it.

eric23
Offline
Beigetreten: 06/30/2017

Ecne or Aramo? So Trisquel's kernel does not work with the GPU hence you tried Linux-libre from freesh?

andyprough
Offline
Beigetreten: 02/12/2015

Aramo - I haven't been able to get Ecne to boot on this machine from the live ISO yet. Not that I've tried anything other than putting the live USB in and powering it on. But it did fail to boot the couple of times I tried it.

With the Aramo Trisquel kernels, either using the Intel Xe or the Intel Arc integrated graphics, the graphics are rendered via llvmpipe instead of the iGPU, putting more load on the CPU. That's kind of ok with this CPU, as you've got a ton of horsepower for graphics or whatever, but it doesn't appear to be the ideal way to run a system long-term.

Magic Banana

I am a member!

I am a translator!

Offline
Beigetreten: 07/24/2010

I haven't been able to get Ecne to boot on this machine from the live ISO yet.

Have you reported that as a bug? It is worth fixing before the release.

andyprough
Offline
Beigetreten: 02/12/2015

As I said, I haven't had time to explore it other than quickly trying to boot from a live Trisquel 12 USB a couple of times. Could be a bad USB stick or some other thing, not sure yet. Probably my next attempt will be from Triskel, and if that's still a problem I may look into the net install. But I won't have time to deal with it for a few days. Right now I'm dealing with a major winter storm, lucky to have power and internet.

andyprough
Offline
Beigetreten: 02/12/2015

I got a Triskel Ecne live USB to start tonight with 'text nomodeset' boot parameters. I should be able to get it installed on a partition and then change to the Linux-libre 6.18 kernel for graphics support. Right now, the 6.8 kernel on Triskel is showing graphics via llvmpipe:

glxinfo | grep render
direct rendering: Yes
GLX_MESA_copy_sub_buffer, GLX_MESA_gl_interop, GLX_MESA_query_renderer,
GLX_MESA_gl_interop, GLX_MESA_query_renderer, GLX_SGIS_multisample,
Extended renderer info (GLX_MESA_query_renderer):
OpenGL renderer string: llvmpipe (LLVM 20.1.2, 256 bits)

I'm not sure why Trisquel 11 comes right up with a graphical environment and Trisquel 12 does not without the nomodeset parameter. I'll dig through some logs, see what I can find.

andyprough
Offline
Beigetreten: 02/12/2015

So, I go to install Triskel 12, and the first thing that pops up with the installer is a password prompt.

What password? I don't have a password. The download page for Ecne doesn't have a password. The download page for Aramo doesn't have a password.

Finally, after digging around in forum threads for awhile, I find an obscure old 2014 thread where I find out that the password does not exist, and you just hit the ENTER key when asked for a password.

Wouldn't that have been worth mentioning somewhere, anywhere?

Ahh, Trisquel, you and your deadly little paper cuts, just chopping, chopping, always chopping away.

andyprough
Offline
Beigetreten: 02/12/2015

2nd page of the Installer, so funny -

1. I am asked "Which applications would you like to start with?"
And I am given exactly one option - "Normal Installation - Web browser, utilities, office software ..."

I guess I will choose "Normal Installation"! Lucky me.

2. I am given the option to "Download updates while installing Triskel" and told "This saves time after installation."
Except I don't believe you Triskel installer. Every other time in recent memory that I've checked that box, it spends a large amount of time downloading lots of stuff, and then on first boot of the fresh installation I'm told "You have 357 updates waiting for you".
I'm not falling for your little tricky tricks this time Triskel installer. Unchecked.

andyprough
Offline
Beigetreten: 02/12/2015

Looks like with Ecne + Linux-Libre 6.18.8 I do not have Intel graphics acceleration right now, it's just doing graphics through llvmpipe:

$ glxinfo | grep render
direct rendering: Yes
GLX_MESA_copy_sub_buffer, GLX_MESA_gl_interop, GLX_MESA_query_renderer,
GLX_MESA_gl_interop, GLX_MESA_query_renderer, GLX_SGIS_multisample,
Extended renderer info (GLX_MESA_query_renderer):
OpenGL renderer string: llvmpipe (LLVM 20.1.2, 256 bits)

Rather unfortunate. But on the bright side, I'm watching htop, and this CPU is handling rendering graphics via llvmpipe and everything else for the system without the slightest effort whatsoever. So, maybe this is a good way to run a system?

Hopefully I'll be able to figure this out and get Intel graphics acceleration running. If it ran with Aramo + Linux-Libre 6.18 and got Arc graphics, I should be able to with Ecne.

To be continued ...

UPDATE - got it working now. I had just forgotten to remove 'nomodeset' from the boot parameter.

$ glxinfo | grep render
direct rendering: Yes
GLX_MESA_copy_sub_buffer, GLX_MESA_gl_interop, GLX_MESA_query_renderer,
GLX_MESA_copy_sub_buffer, GLX_MESA_gl_interop, GLX_MESA_query_renderer,
Extended renderer info (GLX_MESA_query_renderer):
OpenGL renderer string: Mesa Intel(R) Arc(tm) Graphics (MTL)

It's got a little bit of screen tearing and so forth, maybe I will try Gnome with Wayland and see if it's better than Xorg.

andyprough
Offline
Beigetreten: 02/12/2015

Update - I tried Gnome with Wayland and that was a disaster. For example, trying to start Abrowser resulted in Wayland locking up for about a minute, and Abrowser failing to launch. I installed ungoogled-chromium from the repo, but that was also extremely unstable, would lock up wayland for a minute at a time, and crashed each time I tried to open a 2nd tab.

When starting Abrowser, here's the crash:

Crash Annotation GraphicsCriticalError:
[GFX1-]: Detect DeviceReset DeviceResetReason::RESET
DeviceResetDetectPlace::WR_POST_UPDATE
```

followed by:

```
Redirecting call to abort() to mozalloc_abort
Segmentation fault

Here's what I could figure out what was causing the wayland crash from some web searching:

This is Firefox’s (Abrowser's) GPU process hard-crashing repeatedly until the parent process gives up.

Why this matters in my setup -

While I'm running:

- GNOME Wayland
- Linux-libre kernel
- No Intel graphics firmware installed
- Firefox-derived browser Abrowser using WebRender

That combo is apparently hostile to Firefox’s (Abrowser's) modern graphics stack.

Key points:

1. Firefox (Abrowser) defaults to WebRender
WebRender expects a working DRM/KMS + GPU driver + firmware stack
2. Intel iGPU without firmware
The kernel driver loads, but important GPU features silently fail
3. Wayland
No Xorg fallbacks
Firefox (Abrowser) must talk EGL to DRM to GPU directly
4. Linux-libre
Missing GuC / HuC firmware means:
GPU hangs
device resets
WebRender timing out

Firefox (Abrowser) detects the GPU reset, tries to recover, fails multiple times, then aborts.

That’s apparently what my error log shows.

---

Why it doesn’t even fall back cleanly:
Older Firefox used to say “welp, GPU bad, switching to software”.
Modern Firefox (and Abrowser) often:
Crash in the GPU process
Fail IPC (“Exiting due to channel error”)
Take the parent process down with it

So instead of limp-but-working, I get a crash.

=====================================================

Long story short - Linux-libre with Xorg with a small amount of screen tearing on Meteor Lake CPU plus Arc iGPU is acceptable for now

Linux-libre with wayland with the display manager locking up and browsers crashing and non-functional is unacceptable for now.

So, Xorg it is.

=================================

Addendum (for my future reference) - I'm being told that if I launch Abrowser and ungoogled-chromium with certain environmental variables set in Wayland that I can force software rendering via llvmpipe - but software rendering via llvmpipe is what I'm trying to avoid.

I also appear to have the option, with Abrowser, of disabling webrender explicitly with the following:
Create (or edit) `~/.mozilla/abrowser/xxxx.default/prefs.js`
Set:
gfx.webrender.all = false
gfx.webrender.enabled = false
layers.acceleration.disabled = true

Then try:

```bash
MOZ_ENABLE_WAYLAND=0 abrowser
```

This may work for Abrowser, but ungoogled-chromium would be another challenge.
We'll see. Not sure if I'll bother further with wayland for right now, as I've already purged Gnome from the system and I'm back in Mate with the light screen tearing.

andyprough
Offline
Beigetreten: 02/12/2015

As far as the AI NPU on this chip, I'm not sure it will work without some kind of special firmware. I'm getting these "ivpu" error messages in dmesg, and a web search tells me that "ivpu" is an acronym for Intel's AI accelerator on the chip:

intel_vpu 0000:00:0b.0: [drm] *ERROR* ivpu_fw_request(): Failed to request firmware: -2
intel_vpu 0000:00:0b.0: [drm] ivpu_hw_power_down(): NPU not idle during power down
intel_vpu 0000:00:0b.0: probe with driver intel_vpu failed with error -2

So I'm not sure if I'll be able to run the AI workloads that we talked about in a different thread, or if the NPU will be active if I do run them.

tonlee
Offline
Beigetreten: 09/08/2014

fsf.org probably does not have the funds. Else fsf.org should have a paper made in order to get an overview on npus in relation to free software.

Ark74

I am a member!

I am a translator!

Offline
Beigetreten: 07/15/2009

> So, I go to install Triskel 12, and the first thing that pops up with the installer is a password prompt.

This sounds interesting to look at.
So far I have not seen such behavior, I'll be interested on knowing more about it.
I'll be glad to have some details on a dedicated issue, if you can spare the time. :)

Regards