chiark / gitweb /
udevsettle: read udev not kernel seqnum first
authorPozsar Balazs <pozsy@uhulinux.hu>
Fri, 23 Mar 2007 16:21:46 +0000 (17:21 +0100)
committerKay Sievers <kay.sievers@vrfy.org>
Fri, 23 Mar 2007 16:21:46 +0000 (17:21 +0100)
udevsettle.c

index 9e3e03b1af01a7615af3fdf6dd2545eaf49da5e5..f76ad7160d6c9c3f1c8c055856cd3010aaaa5b65 100644 (file)
@@ -110,9 +110,9 @@ int main(int argc, char *argv[], char *envp[])
                        goto exit;
                }
 
-               /* read current kernel seqnum */
-               strlcpy(filename, sysfs_path, sizeof(filename));
-               strlcat(filename, "/kernel/uevent_seqnum", sizeof(filename));
+               /* read current udev seqnum */
+               strlcpy(filename, udev_root, sizeof(filename));
+               strlcat(filename, "/" EVENT_SEQNUM, sizeof(filename));
                fd = open(filename, O_RDONLY);
                if (fd < 0)
                        goto exit;
@@ -121,12 +121,12 @@ int main(int argc, char *argv[], char *envp[])
                if (len <= 0)
                        goto exit;
                seqnum[len] = '\0';
-               seq_kernel = strtoull(seqnum, NULL, 10);
-               info("kernel seqnum = %llu", seq_kernel);
+               seq_udev = strtoull(seqnum, NULL, 10);
+               info("udev seqnum = %llu", seq_udev);
 
-               /* read current udev seqnum */
-               strlcpy(filename, udev_root, sizeof(filename));
-               strlcat(filename, "/" EVENT_SEQNUM, sizeof(filename));
+               /* read current kernel seqnum */
+               strlcpy(filename, sysfs_path, sizeof(filename));
+               strlcat(filename, "/kernel/uevent_seqnum", sizeof(filename));
                fd = open(filename, O_RDONLY);
                if (fd < 0)
                        goto exit;
@@ -135,8 +135,8 @@ int main(int argc, char *argv[], char *envp[])
                if (len <= 0)
                        goto exit;
                seqnum[len] = '\0';
-               seq_udev = strtoull(seqnum, NULL, 10);
-               info("udev seqnum = %llu", seq_udev);
+               seq_kernel = strtoull(seqnum, NULL, 10);
+               info("kernel seqnum = %llu", seq_kernel);
 
                /* make sure all kernel events have arrived in the queue */
                if (seq_udev >= seq_kernel) {