Re: [Intel-gfx] [PATCH i-g-t] lib/igt_core: Move write_stderr out of LIBUNWIND ifdef

2017-11-24 Thread Arkadiusz Hiler
On Fri, Nov 24, 2017 at 10:51:38AM +, Chris Wilson wrote:
> Quoting Arkadiusz Hiler (2017-11-24 10:32:07)
> > write_stderr() and __write_stderr() are defined behind ifdef on
> > HAVE_LIBUNWIND, but do no depend on the lib in any way.
> 
> Hmm, we keep getting caught out by large ifdefs. Although I guess
> conditionally enabled code itself is less-than-welcome, we should
> probably aim to make whole C files be conditionally compiled, exporting
> no-op interfaces when not enabled. Just a thought.
> -Chris

Sounds about right, and... unwinding the libunwind mess would be a good
way to start.

Any volunteers? I may be able to give it a shot next week...

-- 
Cheers,
Arek
___
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx


Re: [Intel-gfx] [PATCH i-g-t] lib/igt_core: Move write_stderr out of LIBUNWIND ifdef

2017-11-24 Thread Tvrtko Ursulin


On 24/11/2017 10:32, Arkadiusz Hiler wrote:

write_stderr() and __write_stderr() are defined behind ifdef on
HAVE_LIBUNWIND, but do no depend on the lib in any way.

fatal_sig_handler() uses those helpers unconditionally.

This patch just moves the code couple of lines up, so the helpers are
always available and do not break build on systems without libunwind.

Cc: Tvrtko Ursulin 
Signed-off-by: Arkadiusz Hiler 
---
  lib/igt_core.c | 20 ++--
  1 file changed, 10 insertions(+), 10 deletions(-)

diff --git a/lib/igt_core.c b/lib/igt_core.c
index 4fe48c97..6ce83bec 100644
--- a/lib/igt_core.c
+++ b/lib/igt_core.c
@@ -1231,6 +1231,16 @@ static bool run_under_gdb(void)
strncmp(basename(buf), "gdb", 3) == 0);
  }
  
+static void __write_stderr(const char *str, size_t len)

+{
+   igt_ignore_warn(write(STDERR_FILENO, str, len));
+}
+
+static void write_stderr(const char *str)
+{
+   __write_stderr(str, strlen(str));
+}
+
  #ifdef HAVE_LIBUNWIND
  #define UNW_LOCAL_ONLY
  #include 
@@ -1407,16 +1417,6 @@ xprintf(const char *fmt, ...)
va_end(ap);
  }
  
-static void __write_stderr(const char *str, size_t len)

-{
-   igt_ignore_warn(write(STDERR_FILENO, str, len));
-}
-
-static void write_stderr(const char *str)
-{
-   __write_stderr(str, strlen(str));
-}
-
  static void print_backtrace_sig_safe(void)
  {
unw_cursor_t cursor;



Oopsie, I did not spot that #ifdef block.

Reviewed-by: Tvrtko Ursulin 

Regards,

Tvrtko
___
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx


Re: [Intel-gfx] [PATCH i-g-t] lib/igt_core: Move write_stderr out of LIBUNWIND ifdef

2017-11-24 Thread Chris Wilson
Quoting Arkadiusz Hiler (2017-11-24 10:32:07)
> write_stderr() and __write_stderr() are defined behind ifdef on
> HAVE_LIBUNWIND, but do no depend on the lib in any way.

Hmm, we keep getting caught out by large ifdefs. Although I guess
conditionally enabled code itself is less-than-welcome, we should
probably aim to make whole C files be conditionally compiled, exporting
no-op interfaces when not enabled. Just a thought.
-Chris
___
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx


[Intel-gfx] [PATCH i-g-t] lib/igt_core: Move write_stderr out of LIBUNWIND ifdef

2017-11-24 Thread Arkadiusz Hiler
write_stderr() and __write_stderr() are defined behind ifdef on
HAVE_LIBUNWIND, but do no depend on the lib in any way.

fatal_sig_handler() uses those helpers unconditionally.

This patch just moves the code couple of lines up, so the helpers are
always available and do not break build on systems without libunwind.

Cc: Tvrtko Ursulin 
Signed-off-by: Arkadiusz Hiler 
---
 lib/igt_core.c | 20 ++--
 1 file changed, 10 insertions(+), 10 deletions(-)

diff --git a/lib/igt_core.c b/lib/igt_core.c
index 4fe48c97..6ce83bec 100644
--- a/lib/igt_core.c
+++ b/lib/igt_core.c
@@ -1231,6 +1231,16 @@ static bool run_under_gdb(void)
strncmp(basename(buf), "gdb", 3) == 0);
 }
 
+static void __write_stderr(const char *str, size_t len)
+{
+   igt_ignore_warn(write(STDERR_FILENO, str, len));
+}
+
+static void write_stderr(const char *str)
+{
+   __write_stderr(str, strlen(str));
+}
+
 #ifdef HAVE_LIBUNWIND
 #define UNW_LOCAL_ONLY
 #include 
@@ -1407,16 +1417,6 @@ xprintf(const char *fmt, ...)
va_end(ap);
 }
 
-static void __write_stderr(const char *str, size_t len)
-{
-   igt_ignore_warn(write(STDERR_FILENO, str, len));
-}
-
-static void write_stderr(const char *str)
-{
-   __write_stderr(str, strlen(str));
-}
-
 static void print_backtrace_sig_safe(void)
 {
unw_cursor_t cursor;
-- 
2.13.6

___
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx