[Intel-gfx] [PATCH i-g-t 3/5] lib/core: Avoid unused result in backtrace printing

Tvrtko Ursulin tvrtko.ursulin at linux.intel.com
Wed Nov 22 17:44:23 UTC 2017


Ping on this one - do we want to squash these compile warnings, yes? :)

On 08/11/2017 12:06, Tvrtko Ursulin wrote:
> From: Tvrtko Ursulin <tvrtko.ursulin at intel.com>
> 
> Add helpers for direct write to stderr to consolidate the code
> and avoid the unused result warning in build.
> 
> v2: Use igt_ignore_warn since it is questionable whether igt_assert
>      is safe in signal handlers. (Chris Wilson)
> 
> Signed-off-by: Tvrtko Ursulin <tvrtko.ursulin at intel.com>
> ---
>   lib/igt_core.c | 23 ++++++++++++++++-------
>   1 file changed, 16 insertions(+), 7 deletions(-)
> 
> diff --git a/lib/igt_core.c b/lib/igt_core.c
> index 538a4472e209..e866bf995872 100644
> --- a/lib/igt_core.c
> +++ b/lib/igt_core.c
> @@ -1239,7 +1239,7 @@ static const char hex[] = "0123456789abcdef";
>   static void
>   xputch(int c)
>   {
> -	write(STDERR_FILENO, (const void *) &c, 1);
> +	igt_ignore_warn(write(STDERR_FILENO, (const void *) &c, 1));
>   }
>   
>   static int
> @@ -1384,13 +1384,23 @@ 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;
>   	unw_context_t uc;
>   	int stack_num = 0;
>   
> -	write(STDERR_FILENO, "Stack trace: \n", 15);
> +	write_stderr("Stack trace: \n");
>   
>   	unw_getcontext(&uc);
>   	unw_init_local(&cursor, &uc);
> @@ -1899,11 +1909,10 @@ static void fatal_sig_handler(int sig)
>   			continue;
>   
>   		if (handled_signals[i].name_len) {
> -			igt_assert_eq(write(STDERR_FILENO, "Received signal ", 16),
> -                                      16);
> -			igt_assert_eq(write(STDERR_FILENO, handled_signals[i].name, handled_signals[i].name_len),
> -                                      handled_signals[i].name_len);
> -			igt_assert_eq(write(STDERR_FILENO, ".\n", 2), 2);
> +			write_stderr("Received signal ");
> +			__write_stderr(handled_signals[i].name,
> +				       handled_signals[i].name_len);
> +			write_stderr(".\n");
>   		}
>   
>   		if (crash_signal(sig)) {
> 


More information about the Intel-gfx mailing list