Commit f3589bfa authored by Kent Overstreet's avatar Kent Overstreet

bcachefs: fix for building in userspace

Signed-off-by: default avatarKent Overstreet <kent.overstreet@linux.dev>
parent 1c31b83a
...@@ -87,20 +87,27 @@ const char * const bch2_fs_flag_strs[] = { ...@@ -87,20 +87,27 @@ const char * const bch2_fs_flag_strs[] = {
NULL NULL
}; };
void bch2_print_opts(struct bch_opts *opts, const char *fmt, ...) static void bch2_print_maybe_redirect(struct stdio_redirect *stdio, const char *fmt, va_list args)
{ {
struct stdio_redirect *stdio = (void *)(unsigned long)opts->stdio; #ifdef __KERNEL__
if (unlikely(stdio)) {
va_list args;
va_start(args, fmt);
if (likely(!stdio)) {
vprintk(fmt, args);
} else {
if (fmt[0] == KERN_SOH[0]) if (fmt[0] == KERN_SOH[0])
fmt += 2; fmt += 2;
bch2_stdio_redirect_vprintf(stdio, true, fmt, args); bch2_stdio_redirect_vprintf(stdio, true, fmt, args);
return;
} }
#endif
vprintk(fmt, args);
}
void bch2_print_opts(struct bch_opts *opts, const char *fmt, ...)
{
struct stdio_redirect *stdio = (void *)(unsigned long)opts->stdio;
va_list args;
va_start(args, fmt);
bch2_print_maybe_redirect(stdio, fmt, args);
va_end(args); va_end(args);
} }
...@@ -110,14 +117,7 @@ void __bch2_print(struct bch_fs *c, const char *fmt, ...) ...@@ -110,14 +117,7 @@ void __bch2_print(struct bch_fs *c, const char *fmt, ...)
va_list args; va_list args;
va_start(args, fmt); va_start(args, fmt);
if (likely(!stdio)) { bch2_print_maybe_redirect(stdio, fmt, args);
vprintk(fmt, args);
} else {
if (fmt[0] == KERN_SOH[0])
fmt += 2;
bch2_stdio_redirect_vprintf(stdio, true, fmt, args);
}
va_end(args); va_end(args);
} }
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment