diff --git a/gst-libs/gst/allocators/gstfdmemory.c b/gst-libs/gst/allocators/gstfdmemory.c index a15859a8a5..f09da9e4e7 100644 --- a/gst-libs/gst/allocators/gstfdmemory.c +++ b/gst-libs/gst/allocators/gstfdmemory.c @@ -110,9 +110,20 @@ gst_fd_mem_map (GstMemory * gmem, gsize maxsize, GstMapFlags flags) mem->data = mmap (0, gmem->maxsize, prot, flags, mem->fd, 0); if (mem->data == MAP_FAILED) { + GstDebugLevel level; mem->data = NULL; - GST_ERROR ("%p: fd %d: mmap failed: %s", mem, mem->fd, - g_strerror (errno)); + + switch (errno) { + case EACCES: + level = GST_LEVEL_INFO; + break; + default: + level = GST_LEVEL_ERROR; + break; + } + + GST_CAT_LEVEL_LOG (GST_CAT_DEFAULT, level, NULL, + "%p: fd %d: mmap failed: %s", mem, mem->fd, g_strerror (errno)); goto out; } }