LKML Archive on lore.kernel.org
help / color / mirror / Atom feed
From: David Miller <davem@davemloft.net>
To: taldmd@gmail.com
Cc: linux-kernel@vger.kernel.org, sparclinux@vger.kernel.org
Subject: Re: Compile-time error with gcc-4.3 on sparc64
Date: Wed, 09 Jan 2008 03:46:36 -0800 (PST)	[thread overview]
Message-ID: <20080109.034636.115329743.davem@davemloft.net> (raw)
In-Reply-To: <e02b4fed0801090131h40b0e236t49cc0ae4ac147d5c@mail.gmail.com>

From: "David Martin" <taldmd@gmail.com>
Date: Wed, 9 Jan 2008 10:31:45 +0100

Please report sparc problems to the Sparc mailing list,
sparclinux@vger.kernel.org, thanks.

> I get the following error compiling latest kernel from git on sparc64
> using gcc-4.3:
> 
>   CC      arch/sparc64/kernel/signal.o
> cc1: warnings being treated as errors
> arch/sparc64/kernel/signal.c: En la función 'do_notify_resume':
> include/asm/uaccess.h:233: error: el subíndice de la matriz está por
> arriba de los límites de la matriz
> make[1]: *** [arch/sparc64/kernel/signal.o] Error 1
> make: *** [arch/sparc64/kernel] Error 2
> 
> ("On function 'do_notify resume: error: matrix subindex is over matrix limits")

I think you mean "array" instead of "matrix" in your translation.

In fact, you should rerun should build failures with "LANG=C"
for the benefit of people reading your report.

Something is very wrong with the compiler, do_notify_resume() reads:

void do_notify_resume(struct pt_regs *regs, unsigned long orig_i0, int restart_syscall,
		      unsigned long thread_info_flags)
{
	if (thread_info_flags & (_TIF_SIGPENDING | _TIF_RESTORE_SIGMASK))
		do_signal(regs, orig_i0, restart_syscall);
}

uaccess.h, line 233 is:

static inline unsigned long __must_check
copy_to_user(void __user *to, const void *from, unsigned long size)
{
	unsigned long ret = ___copy_to_user(to, from, size);
	^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

copy_to_user() isn't being called in do_notify_resume() at all.

Perhaps it's probably warning about some call to copy_to_user() that
results from the inline expansion of do_signal() and all sub-calls.

But it's a bug that GCC isn't indicating exactly where the problem is,
and in what specific function.  My guess is that it's losing context
during all of the inline expansions.

      reply	other threads:[~2008-01-09 11:46 UTC|newest]

Thread overview: 2+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2008-01-09  9:31 Compile-time error with gcc-4.3 on sparc64 David Martin
2008-01-09 11:46 ` David Miller [this message]

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20080109.034636.115329743.davem@davemloft.net \
    --to=davem@davemloft.net \
    --cc=linux-kernel@vger.kernel.org \
    --cc=sparclinux@vger.kernel.org \
    --cc=taldmd@gmail.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).