aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--util-linux/mdev.c11
1 files changed, 9 insertions, 2 deletions
diff --git a/util-linux/mdev.c b/util-linux/mdev.c
index 8205a260a..e730548f7 100644
--- a/util-linux/mdev.c
+++ b/util-linux/mdev.c
@@ -249,6 +249,10 @@
249#endif 249#endif
250 250
251 251
252enum {
253 MDEV_OPT_SCAN = 1 << 0,
254};
255
252static const char keywords[] ALIGN1 = "add\0remove\0"; // "change\0" 256static const char keywords[] ALIGN1 = "add\0remove\0"; // "change\0"
253enum { OP_add, OP_remove }; 257enum { OP_add, OP_remove };
254 258
@@ -1047,7 +1051,7 @@ static void signal_mdevs(unsigned my_pid)
1047 } 1051 }
1048} 1052}
1049 1053
1050static void process_action(char *temp, unsigned my_pid) 1054static NOINLINE void process_action(char *temp, unsigned my_pid)
1051{ 1055{
1052 char *fw; 1056 char *fw;
1053 char *seq; 1057 char *seq;
@@ -1130,6 +1134,7 @@ static void initial_scan(char *temp)
1130int mdev_main(int argc, char **argv) MAIN_EXTERNALLY_VISIBLE; 1134int mdev_main(int argc, char **argv) MAIN_EXTERNALLY_VISIBLE;
1131int mdev_main(int argc UNUSED_PARAM, char **argv) 1135int mdev_main(int argc UNUSED_PARAM, char **argv)
1132{ 1136{
1137 int opt;
1133 RESERVE_CONFIG_BUFFER(temp, PATH_MAX + SCRATCH_SIZE); 1138 RESERVE_CONFIG_BUFFER(temp, PATH_MAX + SCRATCH_SIZE);
1134 1139
1135 INIT_G(); 1140 INIT_G();
@@ -1147,7 +1152,9 @@ int mdev_main(int argc UNUSED_PARAM, char **argv)
1147 1152
1148 xchdir("/dev"); 1153 xchdir("/dev");
1149 1154
1150 if (argv[1] && strcmp(argv[1], "-s") == 0) { 1155 opt = getopt32(argv, "s");
1156
1157 if (opt & MDEV_OPT_SCAN) {
1151 /* 1158 /*
1152 * Scan: mdev -s 1159 * Scan: mdev -s
1153 */ 1160 */