gst: don't use volatile to mean atomic
authorMatthew Waters <matthew@centricular.com>
Mon, 22 Mar 2021 03:34:36 +0000 (14:34 +1100)
committerMatthew Waters <matthew@centricular.com>
Mon, 22 Mar 2021 03:34:36 +0000 (14:34 +1100)
commit640a65bf966df065d41a511e2d76d1f26a2e770c
treefd3e65091ef2518a9455edacb4536f6fff515fdb
parente22befad2ed3a411e73aa03f2b014ada9d953b5c
gst: don't use volatile to mean atomic

volatile is not sufficient to provide atomic guarantees and real atomics
should be used instead.  GCC 11 has started warning about using volatile
with atomic operations.

https://gitlab.gnome.org/GNOME/glib/-/merge_requests/1719

Discovered in https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/issues/868

Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/2098>
78 files changed:
ext/closedcaption/gstccconverter.c
ext/colormanagement/gstlcms.c
ext/curl/gstcurlqueue.h
ext/iqa/iqa.c
ext/opencv/gstcvdilateerode.cpp
ext/openjpeg/gstopenjpegenc.c
ext/resindvd/rsndec.c
ext/sctp/sctpassociation.c
ext/ttml/subtitlemeta.c
ext/wildmidi/gstwildmididec.c
gst-libs/gst/adaptivedemux/gstadaptivedemux.c
gst-libs/gst/audio/gstnonstreamaudiodecoder.c
gst-libs/gst/codecparsers/gstmpegvideometa.c
gst-libs/gst/d3d11/gstd3d11device.c
gst-libs/gst/d3d11/gstd3d11utils.c
gst-libs/gst/sctp/sctpreceivemeta.c
gst-libs/gst/sctp/sctpsendmeta.c
gst-libs/gst/vulkan/android/gstvkwindow_android.c
gst-libs/gst/vulkan/cocoa/gstvkwindow_cocoa.m
gst-libs/gst/vulkan/gstvkbuffermemory.c
gst-libs/gst/vulkan/gstvkcommandbuffer.c
gst-libs/gst/vulkan/gstvkdescriptorset.c
gst-libs/gst/vulkan/gstvkdevice.c
gst-libs/gst/vulkan/gstvkdisplay.c
gst-libs/gst/vulkan/gstvkfence.c
gst-libs/gst/vulkan/gstvkhandle.c
gst-libs/gst/vulkan/gstvkimagememory.c
gst-libs/gst/vulkan/gstvkimageview.c
gst-libs/gst/vulkan/gstvkinstance.c
gst-libs/gst/vulkan/gstvkmemory.c
gst-libs/gst/vulkan/gstvkphysicaldevice.c
gst-libs/gst/vulkan/gstvkqueue.c
gst-libs/gst/vulkan/gstvktrash.c
gst-libs/gst/vulkan/gstvkutils.c
gst-libs/gst/vulkan/gstvkwindow.c
gst-libs/gst/vulkan/ios/gstvkwindow_ios.m
gst-libs/gst/vulkan/vulkan_mkenum.py
gst-libs/gst/vulkan/wayland/gstvkwindow_wayland.c
gst-libs/gst/vulkan/xcb/gstvkwindow_xcb.c
gst/camerabin2/gstcamerabin2.c
gst/debugutils/gstfakevideosink.c
gst/mxf/mxfmetadata.c
gst/netsim/gstnetsim.c
gst/rtmp2/rtmp/amf.c
gst/rtmp2/rtmp/rtmpchunkstream.c
gst/rtmp2/rtmp/rtmpclient.c
gst/rtmp2/rtmp/rtmphandshake.c
gst/rtmp2/rtmp/rtmpmessage.c
gst/segmentclip/gstsegmentclip.c
sys/androidmedia/gstamcaudiodec.c
sys/androidmedia/gstamcvideodec.c
sys/androidmedia/gstamcvideoenc.c
sys/applemedia/coremediabuffer.c
sys/applemedia/corevideobuffer.c
sys/applemedia/corevideomemory.c
sys/applemedia/iosglmemory.c
sys/applemedia/iosurfaceglmemory.c
sys/applemedia/iosurfacevulkanmemory.c
sys/bluez/gstavdtpsrc.h
sys/d3d11/gstd3d11deinterlace.cpp
sys/d3d11/gstd3d11shader.cpp
sys/d3d11/gstd3d11window.cpp
sys/d3d11/gstd3d11window_win32.cpp
sys/ipcpipeline/gstipcpipelinecomm.c
sys/mediafoundation/gstmftransform.cpp
sys/mediafoundation/gstmfvideobuffer.h
sys/msdk/gstmsdkcontextutil.c
sys/nvcodec/gstcudacontext.c
sys/nvcodec/gstcudanvrtc.c
sys/nvcodec/gstcudautils.c
sys/nvcodec/gstnvbaseenc.h
sys/opensles/openslescommon.c
sys/va/gstvaallocator.c
sys/va/gstvautils.c
sys/wasapi/gstwasapiutil.c
sys/wasapi2/gstwasapi2client.cpp
sys/winscreencap/dxgicapture.c
tests/check/libs/vkimage.c