From: Tejun Heo <tj@kernel.org>
To: Jeremy Fitzhardinge <jeremy@goop.org>
Cc: "H. Peter Anvin" <hpa@zytor.com>,
mingo@redhat.com, linux-kernel@vger.kernel.org,
jeremy.fitzhardinge@citrix.com, stable@kernel.org,
tglx@linutronix.de, mingo@elte.hu,
linux-tip-commits@vger.kernel.org
Subject: Re: [tip:x86/asm] x86/i386: Make sure stack-protector segment base is cache aligned
Date: Sat, 05 Sep 2009 01:09:34 +0900 [thread overview]
Message-ID: <4AA13BBE.5060501@kernel.org> (raw)
In-Reply-To: <4AA13A8C.2080709@goop.org>
Jeremy Fitzhardinge wrote:
> On 09/03/09 22:06, Tejun Heo wrote:
>>>> Heh... here's a naive and hopeful plan. How about we beg gcc
>>>> developers to allow different segment register and offset in newer gcc
>>>> versions and then use the same one when building with the new gcc?
>>>> This should solve the i386 problem too. It would be the best as we
>>>> get to keep the separate segment register from the userland. Too
>>>> hopeful?
>>>>
>>> I think it's possible to set the register in more recent gcc. Doing the
>>> sane thing and having a symbol for an offset is probably worse.
>>>
>> I was thinking about altering the build process so that we can use sed
>> to substitute %gs:40 with %fs:40 while compiling. If it's already
>> possible to override the register in more recent gcc, no need to go
>> into that horror.
>>
>
> Ideally we'd like to get rid of the constant offset too. If we could
> change it to %[fg]s:__gcc_stack_canary_offset on both 32-bit and 64-bit,
> it would give us a lot more flexibility. __gcc_stack_canary_offset
> could be weakly defined to 20/40 for backwards compatibility, but we
> could override it to point to a normal percpu variable.
Yeap, being able to do that will also allow using single segment
register on i386 too. But given that the only overhead we're talking
here is a few more cycles when entering and leving the kernel, I don't
think we need to do anything drastic to optimize this. I think
converting when gcc provides the feature should be enough.
Thanks.
--
tejun
next prev parent reply other threads:[~2009-09-04 16:10 UTC|newest]
Thread overview: 29+ messages / expand[flat|nested] mbox.gz Atom feed top
2009-09-03 19:27 [PATCH] x86/i386: make sure stack-protector segment base is cache aligned Jeremy Fitzhardinge
2009-09-03 19:47 ` Eric Dumazet
2009-09-03 20:41 ` Jeremy Fitzhardinge
2009-09-03 21:07 ` Eric Dumazet
2009-09-03 21:31 ` Jeremy Fitzhardinge
2009-09-04 7:58 ` [tip:x86/asm] x86/i386: Put aligned stack-canary in percpu shared_aligned section tip-bot for Jeremy Fitzhardinge
2009-09-03 20:03 ` [tip:x86/asm] x86/i386: Make sure stack-protector segment base is cache aligned tip-bot for Jeremy Fitzhardinge
2009-09-03 20:26 ` H. Peter Anvin
2009-09-03 20:45 ` Jeremy Fitzhardinge
2009-09-03 21:15 ` H. Peter Anvin
2009-09-03 21:18 ` Ingo Molnar
2009-09-03 21:21 ` H. Peter Anvin
2009-09-04 14:15 ` Arjan van de Ven
2009-09-04 15:59 ` Jeremy Fitzhardinge
2009-09-04 16:06 ` H. Peter Anvin
2009-09-03 21:28 ` Jeremy Fitzhardinge
2009-09-04 2:51 ` Tejun Heo
2009-09-04 2:59 ` Tejun Heo
2009-09-04 3:35 ` H. Peter Anvin
2009-09-04 3:47 ` Tejun Heo
2009-09-04 3:51 ` H. Peter Anvin
2009-09-04 5:06 ` Tejun Heo
2009-09-04 5:12 ` Ingo Molnar
2009-09-04 16:04 ` Jeremy Fitzhardinge
2009-09-04 16:09 ` Tejun Heo [this message]
2009-09-04 16:13 ` H. Peter Anvin
2009-09-04 16:01 ` Jeremy Fitzhardinge
2009-09-04 16:52 ` H. Peter Anvin
2009-09-04 16:57 ` Jeremy Fitzhardinge
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=4AA13BBE.5060501@kernel.org \
--to=tj@kernel.org \
--cc=hpa@zytor.com \
--cc=jeremy.fitzhardinge@citrix.com \
--cc=jeremy@goop.org \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-tip-commits@vger.kernel.org \
--cc=mingo@elte.hu \
--cc=mingo@redhat.com \
--cc=stable@kernel.org \
--cc=tglx@linutronix.de \
/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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.