]> git.ipfire.org Git - thirdparty/lxc.git/commitdiff
cgroups: rewind() file before polling again
authorChristian Brauner <christian.brauner@ubuntu.com>
Tue, 2 Feb 2021 18:29:41 +0000 (19:29 +0100)
committerChristian Brauner <christian.brauner@ubuntu.com>
Tue, 2 Feb 2021 18:29:41 +0000 (19:29 +0100)
Signed-off-by: Christian Brauner <christian.brauner@ubuntu.com>
src/lxc/cgroups/cgfsng.c

index 533c1f44921e1a0fad5aa01d204fa79210472077..78802ac76dee41eee848812071fa10a1b3be5201 100644 (file)
@@ -2033,9 +2033,6 @@ static int freezer_cgroup_events_cb(int fd, uint32_t events, void *cbdata,
        size_t len;
        const char *state_string;
 
-       if (lseek(fd, 0, SEEK_SET) < (off_t)-1)
-               return LXC_MAINLOOP_ERROR;
-
        f = fdopen_at(fd, "", "re", PROTECT_OPEN, PROTECT_LOOKUP_BENEATH);
        if (!f)
                return LXC_MAINLOOP_ERROR;
@@ -2049,6 +2046,8 @@ static int freezer_cgroup_events_cb(int fd, uint32_t events, void *cbdata,
                if (strncmp(line, state_string, STRLITERALLEN("frozen") + 2) == 0)
                        return LXC_MAINLOOP_CLOSE;
 
+       rewind(f);
+
        return LXC_MAINLOOP_CONTINUE;
 }