All of lore.kernel.org
 help / color / mirror / Atom feed
From: Ingo Molnar <mingo@elte.hu>
To: Matt Helsley <matthltc@us.ibm.com>, Tejun Heo <tj@kernel.org>,
	Jeremy Fitzhardinge <jeremy@goop.org>
Cc: Alexey Dobriyan <adobriyan@gmail.com>,
	akpm@linux-foundation.org, containers@lists.linux-foundation.org,
	xemul@parallels.com, linux-kernel@vger.kernel.org,
	dave@linux.vnet.ibm.com, hch@infradead.org,
	torvalds@linux-foundation.org
Subject: Re: [PATCH 09/30] x86_64: ifdef out struct thread_struct::ip
Date: Fri, 10 Apr 2009 11:19:31 +0200	[thread overview]
Message-ID: <20090410091931.GF17962@elte.hu> (raw)
In-Reply-To: <20090410035328.GB29496@us.ibm.com>


* Matt Helsley <matthltc@us.ibm.com> wrote:

> On Fri, Apr 10, 2009 at 06:35:22AM +0400, Alexey Dobriyan wrote:
> > struct thread_struct::ip isn't used on x86_64, struct pt_regs::ip is used
> > instead. 
> > 
> > kgdb should be reading 0, but I can't check it.
> > 
> > Signed-off-by: Alexey Dobriyan <adobriyan@gmail.com>
> > ---
> > 
> >  arch/x86/include/asm/processor.h |    2 ++
> >  arch/x86/kernel/kgdb.c           |    2 +-
> >  2 files changed, 3 insertions(+), 1 deletion(-)
> > 
> > --- a/arch/x86/include/asm/processor.h
> > +++ b/arch/x86/include/asm/processor.h
> > @@ -421,7 +421,9 @@ struct thread_struct {
> >  	unsigned short		fsindex;
> >  	unsigned short		gsindex;
> >  #endif
> > +#ifdef CONFIG_X86_32
> >  	unsigned long		ip;
> > +#endif
> >  #ifdef CONFIG_X86_64
> >  	unsigned long		fs;
> >  #endif
> 
> Do these make struct thread_struct behave better in cachelines 
> (smaller, less aliasing)? Can we really fit more in the slab du 
> jour?
> 
> Otherwise it seems like we're littering these structs with #ifdefs 
> and not really saving anything. [...]

Removing fields always saves memory (even if it does not show up 
currently due to allocators cache-aligning sizes).

But the #ifdef ugliness is a real worry.

> [...] If these #ifdefs don't save any 
> space why not just put in a comment:
> 
> >  	unsigned long		ip; /* Used only on i386 */

Yes.

> Or maybe even:
> 
> 	union {
> 	  	unsigned long		ip; /* Used only on i386 */
> 	  	unsigned long		fs; /* Used only on x86_64 */
> 	};

Maybe. If this ever gets misunderstood somewhere in platform code we 
will get ugly failure modes and zero compiler help.

	Ingo

  parent reply	other threads:[~2009-04-10  9:21 UTC|newest]

Thread overview: 16+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2009-04-10  2:35 [PATCH 09/30] x86_64: ifdef out struct thread_struct::ip Alexey Dobriyan
2009-04-10  2:35 ` Alexey Dobriyan
2009-04-10  3:53 ` Matt Helsley
     [not found]   ` <20090410035328.GB29496-r/Jw6+rmf7HQT0dZR+AlfA@public.gmane.org>
2009-04-10  4:10     ` Jaswinder Singh Rajput
2009-04-10  4:10       ` Jaswinder Singh Rajput
2009-04-10  9:20       ` Ingo Molnar
2009-04-10 10:52         ` Jaswinder Singh Rajput
     [not found]         ` <20090410092000.GG17962-X9Un+BFzKDI@public.gmane.org>
2009-04-10 10:52           ` Jaswinder Singh Rajput
     [not found]       ` <1239336639.3036.20.camel-6Ww87KsxWewAvxtiuMwx3w@public.gmane.org>
2009-04-10  9:20         ` Ingo Molnar
2009-04-10  9:19     ` Ingo Molnar
2009-04-10  9:19   ` Ingo Molnar [this message]
2009-04-10  9:47     ` Ingo Molnar
     [not found]     ` <20090410091931.GF17962-X9Un+BFzKDI@public.gmane.org>
2009-04-10  9:47       ` Ingo Molnar
2009-04-10 11:17       ` Alexey Dobriyan
2009-04-10 11:17     ` Alexey Dobriyan
     [not found] ` <20090410023522.GJ27788-2ev+ksY9ol182hYKe6nXyg@public.gmane.org>
2009-04-10  3:53   ` Matt Helsley

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=20090410091931.GF17962@elte.hu \
    --to=mingo@elte.hu \
    --cc=adobriyan@gmail.com \
    --cc=akpm@linux-foundation.org \
    --cc=containers@lists.linux-foundation.org \
    --cc=dave@linux.vnet.ibm.com \
    --cc=hch@infradead.org \
    --cc=jeremy@goop.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=matthltc@us.ibm.com \
    --cc=tj@kernel.org \
    --cc=torvalds@linux-foundation.org \
    --cc=xemul@parallels.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 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.