X-Git-Url: http://git.tuebingen.mpg.de/?a=blobdiff_plain;f=write_common.c;h=dcf7bb166ade3f9efa4d04afd4fb55e67e9c2d8e;hb=343f3c63fc3a7f9ca4ba4163c9e4cf06cde8d0c3;hp=3bf5d1199f560e9ce93b7d97a06e278ce495591f;hpb=2b8ac364a9ad11f67bfc1cdd01c113bde30baaf7;p=paraslash.git diff --git a/write_common.c b/write_common.c index 3bf5d119..dcf7bb16 100644 --- a/write_common.c +++ b/write_common.c @@ -1,5 +1,5 @@ /* - * Copyright (C) 2006-2008 Andre Noll + * Copyright (C) 2006-2009 Andre Noll * * Licensed under the GPL v2. For licencing details see COPYING. */ @@ -10,6 +10,7 @@ #include "string.h" #include "list.h" #include "sched.h" +#include "ggo.h" #include "write.h" #include "error.h" @@ -60,7 +61,7 @@ static void wng_post_select(struct sched *s, struct task *t) } if (*g->loaded && min_written) { // PARA_INFO_LOG("moving %zd bytes\n", *g->loaded); - memmove(g->buf, g->buf + min_written, *g->loaded); + memmove(*g->bufp, *g->bufp + min_written, *g->loaded); } } @@ -85,8 +86,6 @@ int wng_open(struct writer_node_group *g) ret = wn->writer->open(wn); if (ret < 0) goto err_out; - wn->chunk_bytes = ret; - g->max_chunk_bytes = PARA_MAX(g->max_chunk_bytes, ret); } sprintf(g->task.status, "%s", "writer node group"); register_task(&g->task); @@ -143,9 +142,9 @@ struct writer_node_group *wng_new(unsigned num_writers) } /** - * call the init function of each supported paraslash writer + * Call the init function of each supported paraslash writer. */ -void init_supported_writers(void) +void writer_init(void) { int i; @@ -210,3 +209,21 @@ struct writer_node_group *setup_default_wng(void) wng->writer_nodes[0].conf = writers[DEFAULT_WRITER].parse_config(""); return wng; } + +void print_writer_helps(int detailed) +{ + int i; + + printf_or_die("\nAvailable writers: \n\t"); + FOR_EACH_WRITER(i) + printf_or_die("%s%s", i? " " : "", writer_names[i]); + printf_or_die("\n\n"); + FOR_EACH_WRITER(i) { + struct writer *w = writers + i; + + if (!w->help.short_help) + continue; + printf_or_die("Options for %s:\n", writer_names[i]); + ggo_print_help(&w->help, detailed); + } +}