From: Richard Henderson <rth@twiddle.net>
To: Rusty Russell <rusty@rustcorp.com.au>
Cc: Richard Henderson <rth@twiddle.net>,
Andrew Morton <akpm@zip.com.au>,
linux-kernel@vger.kernel.org, torvalds@transmeta.com,
kuznet@ms2.inr.ac.ru
Subject: Re: [PATCH] per-cpu areas for 2.5.3-pre6
Date: Wed, 30 Jan 2002 21:49:35 -0800 [thread overview]
Message-ID: <20020130214935.A7479@are.twiddle.net> (raw)
In-Reply-To: <20020130002204.A4480@are.twiddle.net> <E16W3U9-0004Pd-00@wagner.rustcorp.com.au>
In-Reply-To: <E16W3U9-0004Pd-00@wagner.rustcorp.com.au>; from rusty@rustcorp.com.au on Thu, Jan 31, 2002 at 09:45:45AM +1100
On Thu, Jan 31, 2002 at 09:45:45AM +1100, Rusty Russell wrote:
> "better". Believe me, I was fully aware, but I refuse to write such
> crap unless *proven* to be required.
You're going to wait until the compiler generates incorrect
code for you after knowing that it *probably* will? Nice.
> I agree that this is much better. But do not understand what small
> relocs have to do with simple address arithmetic? You've always been
> right before: what am I missing?
"Small" variables may be positioned by the compiler such that
they are addressable via a 16-bit relocation from some GP register.
If that variable isn't actually located in the small data area,
then the 16-bit relocation may overflow, resulting in link errors.
So it isn't a matter of the arithmetic itself, but loading the
addresses with which to do the arithmetic.
By declaring the variable to be an array of unspecified size,
you're giving the compiler no information as to the size of the
variable, and so it cannot assume the variable is located in the
small data area.
r~
next prev parent reply other threads:[~2002-01-31 5:49 UTC|newest]
Thread overview: 21+ messages / expand[flat|nested] mbox.gz Atom feed top
2002-01-29 9:01 [PATCH] per-cpu areas for 2.5.3-pre6 Rusty Russell
2002-01-29 9:22 ` Andrew Morton
2002-01-29 22:09 ` Rusty Russell
2002-01-29 22:21 ` Andrew Morton
2002-01-30 0:48 ` Rusty Russell
2002-01-30 0:49 ` Andrew Morton
2002-01-30 2:00 ` Rusty Russell
2002-01-30 2:12 ` Linus Torvalds
2002-01-30 4:13 ` Rusty Russell
2002-01-30 8:22 ` Richard Henderson
2002-01-30 22:45 ` Rusty Russell
2002-01-31 5:49 ` Richard Henderson [this message]
2002-02-01 8:56 ` Rusty Russell
2002-02-01 16:52 ` Richard Henderson
2002-01-29 23:17 ` Oliver Xymoron
2002-01-29 23:36 ` Linus Torvalds
2002-01-30 0:20 ` Oliver Xymoron
2002-01-30 0:44 ` Rusty Russell
2002-01-30 7:00 ` Oliver Xymoron
2002-01-30 19:43 ` Oliver Xymoron
2002-01-30 23:00 ` Rusty Russell
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=20020130214935.A7479@are.twiddle.net \
--to=rth@twiddle.net \
--cc=akpm@zip.com.au \
--cc=kuznet@ms2.inr.ac.ru \
--cc=linux-kernel@vger.kernel.org \
--cc=rusty@rustcorp.com.au \
--cc=torvalds@transmeta.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