[Bug 1958563] Re: [SRU] Wrong permissions on vcio

Ɓukasz Zemczak 1958563 at bugs.launchpad.net
Thu Jan 27 16:24:50 UTC 2022


Hello Dave, or anyone else affected,

Accepted raspberrypi-userland into focal-proposed. The package will
build now and be available at
https://launchpad.net/ubuntu/+source/raspberrypi-
userland/0~20200520+git2fe4ca3-0ubuntu3~20.04.1 in a few hours, and then
in the -proposed repository.

Please help us by testing this new package.  See
https://wiki.ubuntu.com/Testing/EnableProposed for documentation on how
to enable and use -proposed.  Your feedback will aid us getting this
update out to other Ubuntu users.

If this package fixes the bug for you, please add a comment to this bug,
mentioning the version of the package you tested, what testing has been
performed on the package and change the tag from verification-needed-
focal to verification-done-focal. If it does not fix the bug for you,
please add a comment stating that, and change the tag to verification-
failed-focal. In either case, without details of your testing we will
not be able to proceed.

Further information regarding the verification process can be found at
https://wiki.ubuntu.com/QATeam/PerformingSRUVerification .  Thank you in
advance for helping!

N.B. The updated package will be released to -updates after the bug(s)
fixed by this package have been verified and the package has been in
-proposed for a minimum of 7 days.

** Description changed:

  [Impact]
  
  The incorrect permissions on these devices mean the regular console user
  cannot access various videocore services. An example of a side-effect of
  this is that camera usage (via the new libcamera mechanism) requires
  root access. Likewise, usage of the GPU (under the KMS system) for H.264
  decoding (via v4l2m2m) likewise requires root access.
  
  [Test Plan]
  
  * Flash the appropriate version to a fresh SD card and boot it
  * sudo apt install libraspberrypi-bin  # because it's not seeded on focal (this can be skipped on impish)
  * sudo reboot
  * ls -l /dev/vc* /dev/dma_heap/
  * Note that /dev/vcio, /dev/vcsm-cma, /dev/vchiq, /dev/dma_heap/* have incorrect permissions (specifically, their ownership is not root:video and/or their mode is not 0664)
  * sudo reboot
- * sudo add-apt-repository ppa:waveform/userland
  * sudo apt install libraspberrypi-bin
  * sudo reboot
  * ls -l /dev/vc* /dev/dma_heap/
  * Note that /dev/vcio, /dev/vcsm-cma, /dev/vchiq, /dev/dma_heap/* now have correct permissions (root:video ownership, and mode 0664)
  
  [Regression Potential]
  
  Only the permission changes are being backported, not a fully updated
  userland. Nonetheless, existing functionality from userland should be
  re-tested, in particular the legacy camera stack, with the following
  procedure:
  
  * Attach a raspberry pi camera module to the board
  * Add "start_x=1" and "gpu_mem=128" to /boot/firmware/config.txt
  * sudo reboot
  * raspistill -o test.jpg
  * Confirm that test.jpg contains a valid picture
  
  The "tvservice" binary *may* be tested too, but is known to be
  inoperable under the arm64 architecture (see LP: #1944541). It is also
  worth noting that the test plan above only looks at the permissions as
  libcamera is not *currently* expected to operate on Focal.
  
  Tests should be carried out on all supported boards (Zero 2, 2B, 3B,
  3A+, 3B+, 4B) under both armhf and arm64 architectures (within the
  caveats noted above about the arm64 architecture).
  
  [Original Description]
  
  The /dev/vcio can have the wrong permissions due to a change in the
  kernel. As reported in https://github.com/raspberrypi/linux/pull/4624
  (which I missed entirely, sorry pelwell!) we'll need a change in the
  udev rules to ensure the correct permissions are set.

** Changed in: raspberrypi-userland (Ubuntu Focal)
       Status: New => Fix Committed

** Tags added: verification-needed verification-needed-focal

-- 
You received this bug notification because you are a member of Ubuntu
Foundations Bugs, which is subscribed to raspberrypi-userland in Ubuntu.
https://bugs.launchpad.net/bugs/1958563

Title:
  [SRU] Wrong permissions on vcio

Status in raspberrypi-userland package in Ubuntu:
  Fix Released
Status in raspberrypi-userland source package in Focal:
  Fix Committed
Status in raspberrypi-userland source package in Impish:
  New

Bug description:
  [Impact]

  The incorrect permissions on these devices mean the regular console
  user cannot access various videocore services. An example of a side-
  effect of this is that camera usage (via the new libcamera mechanism)
  requires root access. Likewise, usage of the GPU (under the KMS
  system) for H.264 decoding (via v4l2m2m) likewise requires root
  access.

  [Test Plan]

  * Flash the appropriate version to a fresh SD card and boot it
  * sudo apt install libraspberrypi-bin  # because it's not seeded on focal (this can be skipped on impish)
  * sudo reboot
  * ls -l /dev/vc* /dev/dma_heap/
  * Note that /dev/vcio, /dev/vcsm-cma, /dev/vchiq, /dev/dma_heap/* have incorrect permissions (specifically, their ownership is not root:video and/or their mode is not 0664)
  * sudo reboot
  * sudo apt install libraspberrypi-bin
  * sudo reboot
  * ls -l /dev/vc* /dev/dma_heap/
  * Note that /dev/vcio, /dev/vcsm-cma, /dev/vchiq, /dev/dma_heap/* now have correct permissions (root:video ownership, and mode 0664)

  [Regression Potential]

  Only the permission changes are being backported, not a fully updated
  userland. Nonetheless, existing functionality from userland should be
  re-tested, in particular the legacy camera stack, with the following
  procedure:

  * Attach a raspberry pi camera module to the board
  * Add "start_x=1" and "gpu_mem=128" to /boot/firmware/config.txt
  * sudo reboot
  * raspistill -o test.jpg
  * Confirm that test.jpg contains a valid picture

  The "tvservice" binary *may* be tested too, but is known to be
  inoperable under the arm64 architecture (see LP: #1944541). It is also
  worth noting that the test plan above only looks at the permissions as
  libcamera is not *currently* expected to operate on Focal.

  Tests should be carried out on all supported boards (Zero 2, 2B, 3B,
  3A+, 3B+, 4B) under both armhf and arm64 architectures (within the
  caveats noted above about the arm64 architecture).

  [Original Description]

  The /dev/vcio can have the wrong permissions due to a change in the
  kernel. As reported in https://github.com/raspberrypi/linux/pull/4624
  (which I missed entirely, sorry pelwell!) we'll need a change in the
  udev rules to ensure the correct permissions are set.

To manage notifications about this bug go to:
https://bugs.launchpad.net/ubuntu/+source/raspberrypi-userland/+bug/1958563/+subscriptions




More information about the foundations-bugs mailing list