chiark
/
gitweb
/
~ianmdlvl
/
elogind.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
readahead: take file system root on command line
[elogind.git]
/
src
/
readahead-collect.c
diff --git
a/src/readahead-collect.c
b/src/readahead-collect.c
index 5ff3711068ab3acdcfba02b442e5751a47d51c14..937231ca4282d46355b01b738c51c6cbccf896ef 100644
(file)
--- a/
src/readahead-collect.c
+++ b/
src/readahead-collect.c
@@
-255,6
+255,9
@@
static int collect(const char *root) {
ssize_t n;
struct fanotify_event_metadata *m;
ssize_t n;
struct fanotify_event_metadata *m;
+ if (hashmap_size(files) > READAHEAD_FILES_MAX)
+ break;
+
if (poll(pollfd, _FD_MAX, -1) < 0) {
if (errno == EINTR)
if (poll(pollfd, _FD_MAX, -1) < 0) {
if (errno == EINTR)
@@
-316,7
+319,6
@@
static int collect(const char *root) {
m = FAN_EVENT_NEXT(m, n);
}
m = FAN_EVENT_NEXT(m, n);
}
-
}
if (fanotify_fd >= 0) {
}
if (fanotify_fd >= 0) {
@@
-435,13
+437,12
@@
finish:
}
int main(int argc, char *argv[]) {
}
int main(int argc, char *argv[]) {
- /* log_set_target(LOG_TARGET_SYSLOG_OR_KMSG); */
+
+ log_set_target(LOG_TARGET_SYSLOG_OR_KMSG);
log_parse_environment();
log_open();
log_parse_environment();
log_open();
- log_set_max_level(LOG_DEBUG);
-
- if (collect("/") < 0)
+ if (collect(argc >= 2 ? argv[1] : "/") < 0)
return 1;
return 0;
return 1;
return 0;