diff --git a/modules/desktop_capture/linux/wayland/egl_dmabuf.cc b/modules/desktop_capture/linux/wayland/egl_dmabuf.cc
index 1d364da..5bbd5d7 100644
--- a/modules/desktop_capture/linux/wayland/egl_dmabuf.cc
+++ b/modules/desktop_capture/linux/wayland/egl_dmabuf.cc
@@ -635,7 +635,7 @@
       EglQueryDmaBufFormatsEXT(egl_.display, 0, nullptr, &count);
 
   if (!success || !count) {
-    RTC_LOG(LS_ERROR) << "Failed to query DMA-BUF formats.";
+    RTC_LOG(LS_WARNING) << "Cannot query the number of formats.";
     return {DRM_FORMAT_MOD_INVALID};
   }
 
@@ -643,13 +643,13 @@
   if (!EglQueryDmaBufFormatsEXT(egl_.display, count,
                                 reinterpret_cast<EGLint*>(formats.data()),
                                 &count)) {
-    RTC_LOG(LS_ERROR) << "Failed to query DMA-BUF formats.";
+    RTC_LOG(LS_WARNING) << "Cannot query a list of formats.";
     return {DRM_FORMAT_MOD_INVALID};
   }
 
   if (std::find(formats.begin(), formats.end(), drm_format) == formats.end()) {
-    RTC_LOG(LS_ERROR) << "Format " << drm_format
-                      << " not supported for modifiers.";
+    RTC_LOG(LS_WARNING) << "Format " << drm_format
+                        << " not supported for modifiers.";
     return {DRM_FORMAT_MOD_INVALID};
   }
 
@@ -657,14 +657,14 @@
                                        nullptr, &count);
 
   if (!success || !count) {
-    RTC_LOG(LS_ERROR) << "Failed to query DMA-BUF modifiers.";
+    RTC_LOG(LS_WARNING) << "Cannot query the number of modifiers.";
     return {DRM_FORMAT_MOD_INVALID};
   }
 
   std::vector<uint64_t> modifiers(count);
   if (!EglQueryDmaBufModifiersEXT(egl_.display, drm_format, count,
                                   modifiers.data(), nullptr, &count)) {
-    RTC_LOG(LS_ERROR) << "Failed to query DMA-BUF modifiers.";
+    RTC_LOG(LS_WARNING) << "Cannot query a list of modifiers.";
   }
 
   // Support modifier-less buffers
