summaryrefslogtreecommitdiff
path: root/kmodloader.c
diff options
context:
space:
mode:
Diffstat (limited to 'kmodloader.c')
-rw-r--r--kmodloader.c5
1 files changed, 4 insertions, 1 deletions
diff --git a/kmodloader.c b/kmodloader.c
index bcb213b..729027a 100644
--- a/kmodloader.c
+++ b/kmodloader.c
@@ -574,8 +574,11 @@ static int insert_module(char *path, const char *options)
}
data = malloc(s.st_size);
- if (read(fd, data, s.st_size) == s.st_size)
+ if (read(fd, data, s.st_size) == s.st_size) {
ret = syscall(__NR_init_module, data, (unsigned long) s.st_size, options);
+ if (errno == EEXIST)
+ ret = 0;
+ }
else
ULOG_ERR("failed to read full module %s\n", path);