intel / intel/media-driver

[Bug]: Kernel 6.19 -> 7.1 regression: H.264 VAAPI decode broken on Tiger Lake (iHD 26.2.4)

Open
#2,030 0 comments 0 reactions 0 assignees View on GitHub
Dominant language
C
Stars
1.2k
Forks
383
Avg merge
8d 18h
Merged PRs (30d)
4

Description

## [Bug]: Kernel 6.19 -> 7.1 regression: H.264 VAAPI decode broken on Tiger Lake (Dell Latitude 7420, iHD 26.2.4)

### Which component impacted?

Decode

### Is it regression? Good in old configuration?

Yes. Same machine, same iHD driver version, same test file:
- Kernel **6.19.10-300.fc44**: H.264 (High) VAAPI decode **works**
- Kernel **7.1.10-200.fc44**: H.264 (High) VAAPI decode **fails** with `No support for codec h264 profile 100`

### What happened?

After upgrading Fedora 44 from kernel 6.19.10 to 7.1.10 (both `i915` driver, GPU bound to i915 in both cases, DMC firmware `i915/tgl_dmc_ver2_12.bin` loads fine in both), VA-API can no longer create an H.264/HEVC configuration. VP9/VP8/JPEG/MPEG2 decode still works.

Verified by A/B boot test (grub default kernel switch + reboot + identical ffmpeg test):

```
$ ffmpeg -hwaccel vaapi -hwaccel_device /dev/dri/renderD128 -hwaccel_output_format vaapi -i test.h264.mp4 -f null -
# kernel 6.19.10: OK (hardware decode)
# kernel 7.1.10: [h264 @ ...] No support for codec h264 profile 100.
# [h264 @ ...] Failed setup for format vaapi: hwaccel initialisation returned error.
```

Same for HEVC: `No support for codec hevc profile 1.`

### Hardware / Software

- Laptop: Dell Latitude 7420, Intel Core i5-1145G7 (Tiger Lake-UP3, Gen12), Iris Xe (8086:9a49)
- OS: Fedora 44, kernel 6.19.10-300.fc44 / 7.1.10-200.fc44
- Driver: libva-intel-media-driver **26.2.4-1.fc44** (iHD), libva 2.23.0
- ffmpeg 8.1.2 (RPM Fusion)
- GPU driver in use: i915 (confirmed via `/sys/class/drm/card1/device/driver` in both kernels)

### Additional observation (possibly separate pre-existing issue)

`vainfo` lists only **11 profiles** on BOTH kernels (MPEG2, JPEG, VP8, VP9 + None) — H.264/HEVC/AV1 profiles are missing from the query. Yet on kernel 6.19.10, `vaCreateConfig` for VAProfileH264High succeeds and hardware decode works. On 7.1.10 config creation fails. So profile *enumeration* looks broken independent of the kernel, while config *creation* regressed with the kernel bump. Happy to provide more logs if useful.

### Expected behavior

H.264 (and HEVC) hardware decode works on kernel 6.19.10 and should keep working on 7.1.10.

### Logs

Can attach `vainfo` output and full ffmpeg verbose logs on request.

Contributor guide

Open the contributing guide

Research direction

Reproduce the A/B result with the provided ffmpeg command and compare vainfo output on kernels 6.19.10-300.fc44 and 7.1.10-200.fc44. Confirm the GPU remains bound to i915 through /sys/class/drm/card1/device/driver, then trace why VAProfileH264High and HEVC configuration creation fails; done means H.264 and HEVC decode work again on 7.1.10.

Written by the indexing model from the issue text.

Assessment

Tech stack
c, linux
Domain
operating-systems
Issue type
Bug
Difficulty
4/5
Estimated time
3-5 days
Activity status
Active
Clarity
Mostly clear
Newbie friendliness
38/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.