From: Lucas De Marchi Date: Tue, 17 Jan 2012 12:05:02 +0000 (-0200) Subject: modprobe: flush stdout before dumping indexes X-Git-Tag: v5~88 X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=09e9ae58b6b463bea083eb5bb57665b87c08a66c;p=thirdparty%2Fkmod.git modprobe: flush stdout before dumping indexes Index dump doesn't use stdio.h function and instead call write() directly on STDOUT_FILENO file descriptor. Therefore we need to flush stdio buffers before calling it, to be sure the configuration dump will appear before index's. --- diff --git a/libkmod/libkmod.c b/libkmod/libkmod.c index 800a1784..91fdf7b6 100644 --- a/libkmod/libkmod.c +++ b/libkmod/libkmod.c @@ -752,7 +752,9 @@ KMOD_EXPORT void kmod_unload_resources(struct kmod_ctx *ctx) * @type: index to dump * @fd: file descriptor to dump index to * - * Dump index to file descriptor + * Dump index to file descriptor. Note that this function doesn't use stdio.h + * so call fflush() before calling this function to be sure data is written in + * order. * * Returns: 0 on success or < 0 otherwise. */ diff --git a/tools/kmod-modprobe.c b/tools/kmod-modprobe.c index 3e515066..9d612dda 100644 --- a/tools/kmod-modprobe.c +++ b/tools/kmod-modprobe.c @@ -247,6 +247,8 @@ static int show_config(struct kmod_ctx *ctx) kmod_config_iter_free_iter(iter); } + fflush(stdout); + kmod_dump_index(ctx, KMOD_INDEX_MODULES_ALIAS, STDOUT_FILENO); kmod_dump_index(ctx, KMOD_INDEX_MODULES_SYMBOL, STDOUT_FILENO);