Merge virglrenderer from Debian unstable for lunar

Bug #1993453 reported by Bryce Harrington
14
This bug affects 1 person
Affects Status Importance Assigned to Milestone
virglrenderer (Ubuntu)
Fix Released
Undecided
Bryce Harrington

Bug Description

Scheduled-For: ubuntu-23.01
Upstream: tbd
Debian: 0.10.3-1
Ubuntu: 0.9.1-1~exp1ubuntu2

### New Debian Changes ###

virglrenderer (0.10.3-1) unstable; urgency=medium

  * New upstream version 0.10.3
  * d/rules: enable venus and renderserver
  * d/control: add vulkan dependency

 -- Gert Wollny <email address hidden> Thu, 22 Sep 2022 18:15:47 +0200

virglrenderer (0.10.1-1) unstable; urgency=medium

  * debian/salsa-ci.yml added
  * New upstream version 0.10.1
  * d/p: remove patches that were merged upstream

 -- Gert Wollny <email address hidden> Tue, 06 Sep 2022 14:24:54 +0200

virglrenderer (0.10.0-1) unstable; urgency=medium

  * New upstream version 0.10.0
  * Add patch to fix video includes
  * Enable video backend and add dependency accordingly
 -- Gert Wollny <email address hidden> Fri, 02 Sep 2022 17:36:05 +0200

virglrenderer (0.9.1-1~exp1) experimental; urgency=medium

  * New upstream version 0.9.1

 -- Gert Wollny <email address hidden> Tue, 20 Apr 2021 09:20:06 +0200

virglrenderer (0.9.0-1~exp1) experimental; urgency=medium

  * New upstream version 0.9.0
  * d/*.symbols: update symbols file

 -- Gert Wollny <email address hidden> Tue, 06 Apr 2021 15:24:55 +0200

virglrenderer (0.8.2-5) unstable; urgency=medium

  [ Christian Ehrhardt ]
  * d/rules: respect nocheck, Closes: #976647

 -- Gert Wollny <email address hidden> Mon, 07 Dec 2020 13:38:41 +0100

virglrenderer (0.8.2-4) unstable; urgency=medium

  [ Christian Ehrhardt ]
  * d/rules: Ignore test failures on riscv64

  [ janitor-bot ]
  * Trim trailing whitespace.
  * Use secure copyright file specification URI.
  * Set debhelper-compat version in Build-Depends.
  * Set upstream metadata fields: Bug-Database, Bug-Submit, Repository,
    Repository-Browse.
  * Update standards version to 4.5.0, no changes needed.

 -- Gert Wollny <email address hidden> Tue, 28 Jul 2020 18:18:52 +0200

virglrenderer (0.8.2-3) unstable; urgency=medium

  * d/virgl_test_server.1: correct section entry, Closes: #963345

 -- Gert Wollny <email address hidden> Sun, 12 Jul 2020 19:54:57 +0200

virglrenderer (0.8.2-2) unstable; urgency=medium

  * re-updload to unstable

 -- Gert Wollny <email address hidden> Sun, 26 Apr 2020 13:14:31 +0200

virglrenderer (0.8.2-2~exp1) experimental; urgency=medium

  * d/*.symbols: Add symbols file, Closes: #944907
    Thanks Laurent Bigonville

 -- Gert Wollny <email address hidden> Sat, 25 Apr 2020 16:24:31 +0200

virglrenderer (0.8.2-1) unstable; urgency=medium

  * New upstream version 0.8.2 Closes: #949954
  * d/patches: remove all patches since they were applied upstream
  * Fixes: CVE-2020-8002 CVE-2020-8003

 -- Gert Wollny <email address hidden> Wed, 12 Feb 2020 14:51:10 +0100

virglrenderer (0.8.1-6) unstable; urgency=medium

  * d/rules: Up the timeout a bit more, mips* seems to need this sometimes

 -- Gert Wollny <email address hidden> Mon, 13 Jan 2020 15:56:55 +0100

virglrenderer (0.8.1-5) unstable; urgency=medium

  * d/p:0001 Add patch to swap bytes on pixel read back Closes: #948334
  * d/rules: Run test always on softpipe

 -- Gert Wollny <email address hidden> Mon, 13 Jan 2020 10:54:34 +0100

virglrenderer (0.8.1-4) unstable; urgency=medium

### Old Ubuntu Delta ###

virglrenderer (0.9.1-1~exp1ubuntu2) jammy; urgency=medium

  * SECURITY UPDATE: out-of-bounds write in read_transfer_data()
    - debian/patches/CVE-2022-0135.patch: Add test to resource OOB write
      and fix it in src/vrend_renderer.c, tests/test_fuzzer_formats.c.
    - CVE-2022-0135
  * SECURITY UPDATE: info leak in vrend_resource_alloc_buffer()
    - debian/patches/CVE-2022-0175.patch: clear memory when allocating a
      host-backed memory resource in src/vrend_renderer.c,
      tests/test_virgl_transfer.c.
    - CVE-2022-0175

 -- Marc Deslauriers <email address hidden> Mon, 28 Feb 2022 14:19:07 -0500

virglrenderer (0.9.1-1~exp1ubuntu1) jammy; urgency=medium

  * Merge with Debian unstable (LP: #1959175). Remaining changes:
    - d/p/lp-1950941*: fix out of bounds check (LP #1950941)

 -- Utkarsh Gupta <email address hidden> Fri, 25 Feb 2022 02:23:43 +0530

Related branches

CVE References

Bryce Harrington (bryce)
Changed in virglrenderer (Ubuntu):
assignee: nobody → Bryce Harrington (bryce)
Bryce Harrington (bryce)
summary: - Merge virglrenderer from Debian unstable for l-series
+ Merge virglrenderer from Debian unstable for lunar
Bryce Harrington (bryce)
Changed in virglrenderer (Ubuntu):
status: New → In Progress
Revision history for this message
Bryce Harrington (bryce) wrote : Re: Sync virglrenderer from Debian unstable for lunar

In processing the merge, I found that all the delta is included in the upstream release, so this can become a sync. A new version 0.10.4 just came out yesterday so I think we should sync that, however it looks like it hasn't finished migrating in Debian just yet.

summary: - Merge virglrenderer from Debian unstable for lunar
+ Sync virglrenderer from Debian unstable for lunar
Revision history for this message
Jeremy Bícha (jbicha) wrote :

Bryce, I believe you'll need to add an Ubuntu delta. See
https://salsa.debian.org/debian/virglrenderer/-/merge_requests/5

Revision history for this message
Bryce Harrington (bryce) wrote :

Thanks for the note Jeremy, you mention there a hope libva would return to main. Do you have any further info about if that's in the plans? It looks like libva left main in Trusty and I'm not spotting bugs or other discussions relating to its return.

In any case, HA is new this release so not a regression if we skip it for now. I'll include your change with my package merge.

Revision history for this message
Jeremy Bícha (jbicha) wrote :

I haven't seen any discussion about pulling libva back into main. And it's not a priority for me for this cycle. I think there are enough things that could use it for someone to go through the MIR process for it eventually.

Bryce Harrington (bryce)
summary: - Sync virglrenderer from Debian unstable for lunar
+ Merge virglrenderer from Debian unstable for lunar
Revision history for this message
Christian Ehrhardt  (paelzer) wrote (last edit ):
Download full text (5.3 KiB)

Thanks Jeremy (and Timo who commented off the bug).
Indeed it seems there are quite some use-cases and users to consider bringing it back towards 24.04
The server team isn't too experienced in maintaining video acceleration though (except maybe bryce), but that only means to ack that we might want/need to co-maintain it once promoted.

The only thing I'd be concerned here before making a decision for the following cycle would be my lack of expertise in this section of the ecosystem. libva (and the nvidia sibling vdpau) feel old/known to me, but they never made it to the core - there must be a reason right? I'd feel bad if we work on libva only to then be told afterwards "oh yeah, this is very much 2010, nowadays everyone uses foo instead and this isn't really helpful".
@Bryce - I've added a roadmap candidate for it, but would appreciate if you could have some discussions with more desktop people to ensure this isn't such a case before too much time is spent.

In terms of use-cases I had a look at what makes use of it in Debian already and compared that to what is in main in Ubuntu - mesa, virglrenderer and qemu (which is actually a temp fix, just virtglrenderer really uses it).

Because that adding of dependencies does not seem to stop with libva.
Have a look:
[1]: https://salsa.debian.org/debian/virglrenderer/-/commit/422556f80a16d5d9b230ead573f9d2f0edbfcd39
[2]: https://salsa.debian.org/debian/virglrenderer/-/commit/d8b4b8f0db4d8bf0b2bd78bf5e07d2ef1b87c404
[3]: https://www.collabora.com/news-and-blog/blog/2021/11/26/venus-on-qemu-enabling-new-virtual-vulkan-driver/
[4]: https://bugs.launchpad.net/ubuntu/+source/vulkan-tools/+bug/1946359

[1] enabled libva for video acceleration through virglrenderer
[2] but shortly after there is also vulkan for support of venus to get guest-vulkan features, see [3] for more.
And while it was disabled in 0.10.3-2 realizing venus isn't a thing yet it might come back.
Sounds all nice, but I'd like to remind of the infamous delayed and complex vulkan MIR that already exists [4].

All that sounds nice, but also fairly new and experimental still.

Debian-sid:

Reverse Build-depends in main:
------------------------------

celluloid
chromium
deepin-movie-reborn
ffmpeg
gavl
gst-plugins-bad1.0
gstreamer-vaapi
handbrake
haruna
intel-compute-runtime
intel-media-driver
intel-mediasdk
intel-vaapi-driver
kodi
kylin-video
libcmrt
libva-utils
libvdpau-va-gl
mesa
minitube
mpv
mpv-mpris
nageru
nvidia-vaapi-driver
onevpl
onevpl-intel-gpu
openboard
qemu
ring
spice-gtk
virglrenderer
vlc
waypipe
weston
xine-lib-1.2
yuzu

Of those in main in Lunar:

root@l:~# rmadison -u ubuntu -a source --suite lunar $(cat /tmp/foo | xargs)
 celluloid | 0.20-2build1 | lunar/universe | source
 deepin-movie-reborn | 5.10.8-2 | lunar/universe | source
 ffmpeg | 7:5.1.2-1ubuntu2 | lunar/universe | source
 gavl | 2.0.0~svn6298-1 | lunar/universe | source
 gst-plugins-bad1.0 | 1.20.4-1ubuntu1 | lunar/universe | source
 gstreamer-vaapi | 1.20.5-1 | lunar/universe | source
 handbrake | 1.6.0+ds1-2 | lunar/unive...

Read more...

Bryce Harrington (bryce)
Changed in virglrenderer (Ubuntu):
status: In Progress → Fix Committed
Revision history for this message
Bryce Harrington (bryce) wrote :

I don't know much about venus, but vulkan is still relatively new so while nice I assume will be a secondary priority. libva seems like it may be more straightforward since it's been around a long time. It did used to be included in main but dropped to universe in the Trusty timeframe (I don't know why it demoted but maybe there just wasn't anything in main at the time that needed it?)

One thing I'm unclear on is if there are alternative ways for virglrenderer users to get 3D accelerated virtual desktops, or if libva is required first?

Revision history for this message
Christian Ehrhardt  (paelzer) wrote : Re: [Bug 1993453] Re: Merge virglrenderer from Debian unstable for lunar

> One thing I'm unclear on is if there are alternative ways for
> virglrenderer users to get 3D accelerated virtual desktops

yes, openGL works fine without libva

> , or if libva
> is required first?

AFAICS libva really is for adding video accel through similar G2H
channels that opengl already uses

Revision history for this message
Launchpad Janitor (janitor) wrote :

This bug was fixed in the package virglrenderer - 0.10.4-1ubuntu1

---------------
virglrenderer (0.10.4-1ubuntu1) lunar; urgency=medium

  * Merge with Debian unstable (LP: #1993453).
  * Added changes:
    - d/rules: Disable video acceleration on Ubuntu until libva gets repromoted.
  * Dropped:
    - d/p/lp-1950941*: fix out of bounds check
      (LP #1950941)
      [Fixed in upstream release 0.10.0]
    - out-of-bounds write in read_transfer_data()
      + d/p/CVE-2022-0135.patch: Add test to resource OOB write
        and fix it in src/vrend_renderer.c, tests/test_fuzzer_formats.c.
      [Fixed in upstream release 0.10.0]
    - info leak in vrend_resource_alloc_buffer()
      + d/p/CVE-2022-0175.patch: clear memory when allocating a
        host-backed memory resource in src/vrend_renderer.c,
        tests/test_virgl_transfer.c.
      [Fixed in upstream release 0.10.0]

 -- Bryce Harrington <email address hidden> Thu, 05 Jan 2023 06:49:25 -0800

Changed in virglrenderer (Ubuntu):
status: Fix Committed → Fix Released
To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Duplicates of this bug

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.