Skip to content

Commit d0ddb0a

Browse files
committed
sd-event: Only register memory presure if write buffer size is zero
As documented in sd_event_add_memory_pressure(), we can only add the memory pressure fd to epoll once we've written the watch string, so make sure we don't register the memory pressure in event_source_online() until we've written the watch string.
1 parent 4c8b6d6 commit d0ddb0a

File tree

1 file changed

+5
-3
lines changed

1 file changed

+5
-3
lines changed

src/libsystemd/sd-event/sd-event.c

Lines changed: 5 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -2987,9 +2987,11 @@ static int event_source_online(
29872987
break;
29882988

29892989
case SOURCE_MEMORY_PRESSURE:
2990-
r = source_memory_pressure_register(s, enabled);
2991-
if (r < 0)
2992-
return r;
2990+
if (s->memory_pressure.write_buffer_size == 0) {
2991+
r = source_memory_pressure_register(s, enabled);
2992+
if (r < 0)
2993+
return r;
2994+
}
29932995

29942996
break;
29952997

0 commit comments

Comments
 (0)