Skip to content
GitLab
Projects Groups Snippets
  • /
  • Help
    • Help
    • Support
    • Community forum
    • Submit feedback
    • Contribute to GitLab
  • Register
  • Sign in
  • gstreamer-vaapi gstreamer-vaapi
  • Project information
    • Project information
    • Activity
    • Labels
    • Members
  • Repository
    • Repository
    • Files
    • Commits
    • Branches
    • Tags
    • Contributors
    • Graph
    • Compare
  • Issues 148
    • Issues 148
    • List
    • Boards
    • Service Desk
    • Milestones
  • Merge requests 8
    • Merge requests 8
  • CI/CD
    • CI/CD
    • Pipelines
    • Jobs
    • Schedules
  • Deployments
    • Deployments
    • Environments
    • Releases
  • Packages and registries
    • Packages and registries
    • Container Registry
  • Monitor
    • Monitor
    • Incidents
  • Analytics
    • Analytics
    • Value stream
    • CI/CD
    • Repository
  • Snippets
    • Snippets
  • Activity
  • Graph
  • Create a new issue
  • Jobs
  • Commits
  • Issue Boards
Collapse sidebar

Due to an influx of spam, we have had to impose restrictions on new accounts. Please see this wiki page for instructions on how to get full permissions. Sorry for the inconvenience.

Update #1:

Due to abusive users subverting our CI facilities to mine cryptocurrency, breaking out of the container sandbox in the process, we have been forced to take actions to limit the usage of the public runners to official projects only.

The policy will be enforced on 2023-03-23 (or before if we detect abuses).

Please see this issue for more context and to see if and how you are impacted.

  • GStreamerGStreamer
  • gstreamer-vaapigstreamer-vaapi
  • Merge requests
  • !95

vaapiencode: Fixes deadlock in gst_vaapiencode_change_state function

  • Review changes

  • Download
  • Email patches
  • Plain diff
Merged Eugen Klim requested to merge Freyr/gstreamer-vaapi:vaapi_encoder_change_state_deadlock_fix into master May 28, 2019
  • Overview 10
  • Commits 1
  • Pipelines 2
  • Changes 1

This should fix #162 (closed)

I'm not sure if this is the right fix.

The problem is gst_vaapiencode_handle_frame locks waiting for available codedbufs. So when state is being changed from Paused to Ready and encoding task is stopped, no codedbufs are being returned to codedbuf_queue anymore, hence gst_vaapiencode_handle_frame never unlocks.

Then (parent_class)->change_state (PAUSED_TO_READY) locks waiting for the srcpad's chain function to complete, and chain function is waiting for new codedbufs, hence the deadlock.

Edited May 30, 2019 by Eugen Klim
Assignee
Assign to
Reviewers
Request review from
Time tracking
Source branch: vaapi_encoder_change_state_deadlock_fix