cachepc-linux

Fork of AMDESE/linux with modifications for CachePC side-channel attack
git clone https://git.sinitax.com/sinitax/cachepc-linux
Log | Files | Refs | README | LICENSE | sfeed.txt

app-pri.rst (1360B)


      1.. SPDX-License-Identifier: GFDL-1.1-no-invariants-or-later
      2
      3.. _app-pri:
      4
      5********************
      6Application Priority
      7********************
      8
      9When multiple applications share a device it may be desirable to assign
     10them different priorities. Contrary to the traditional "rm -rf /" school
     11of thought, a video recording application could for example block other
     12applications from changing video controls or switching the current TV
     13channel. Another objective is to permit low priority applications
     14working in background, which can be preempted by user controlled
     15applications and automatically regain control of the device at a later
     16time.
     17
     18Since these features cannot be implemented entirely in user space V4L2
     19defines the :ref:`VIDIOC_G_PRIORITY <VIDIOC_G_PRIORITY>` and
     20:ref:`VIDIOC_S_PRIORITY <VIDIOC_G_PRIORITY>` ioctls to request and
     21query the access priority associate with a file descriptor. Opening a
     22device assigns a medium priority, compatible with earlier versions of
     23V4L2 and drivers not supporting these ioctls. Applications requiring a
     24different priority will usually call :ref:`VIDIOC_S_PRIORITY
     25<VIDIOC_G_PRIORITY>` after verifying the device with the
     26:ref:`VIDIOC_QUERYCAP` ioctl.
     27
     28Ioctls changing driver properties, such as
     29:ref:`VIDIOC_S_INPUT <VIDIOC_G_INPUT>`, return an ``EBUSY`` error code
     30after another application obtained higher priority.