summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--src/readahead-collect.c12
1 files changed, 11 insertions, 1 deletions
diff --git a/src/readahead-collect.c b/src/readahead-collect.c
index 913a34005e..20881b3944 100644
--- a/src/readahead-collect.c
+++ b/src/readahead-collect.c
@@ -380,7 +380,17 @@ static int collect(const char *root) {
if ((n = read(fanotify_fd, &data, sizeof(data))) < 0) {
- if (errno == EINTR || errno == EAGAIN || errno == EACCES)
+ if (errno == EINTR || errno == EAGAIN)
+ continue;
+
+ /* fanotify sometimes returns EACCES on read()
+ * where it shouldn't. For now let's just
+ * ignore it here (which is safe), but
+ * eventually this should be
+ * dropped when the kernel is fixed.
+ *
+ * https://bugzilla.redhat.com/show_bug.cgi?id=707577 */
+ if (errno == EACCES)
continue;
log_error("Failed to read event: %m");