linux-kernel.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: Adrian Bunk <bunk@kernel.org>
To: Vegard Nossum <vegard.nossum@gmail.com>
Cc: Ingo Molnar <mingo@elte.hu>, linux-kernel@vger.kernel.org
Subject: Re: [PATCH] x86: break mutual header inclusion
Date: Wed, 28 May 2008 00:38:19 +0300	[thread overview]
Message-ID: <20080527213819.GC11310@cs181133002.pp.htv.fi> (raw)
In-Reply-To: <20080527204926.GA15020@damson.getinternet.no>

On Tue, May 27, 2008 at 10:49:26PM +0200, Vegard Nossum wrote:
> Hi,
> 
> What do you think about this? The new file (vm86_mask.h) could actually be
> embedded completely in processor-flags.h, but I went for what I believe is
> the safer approach.

Breaking the mutual header inclusion is appreciated, but some comments 
are below.

> This has been compile tested on x86_32 and x86_64 defconfig.
> 
> Vegard
>...
> --- a/include/asm-x86/ptrace.h
> +++ b/include/asm-x86/ptrace.h
> @@ -2,8 +2,10 @@
>  #define _ASM_X86_PTRACE_H
>  
>  #include <linux/compiler.h>	/* For __user */
> +#include <asm/ds.h>		/* the DS BTS struct is used for ptrace too */
> +#include <asm/segment.h>
>  #include <asm/ptrace-abi.h>
> -
> +#include <asm/vm86_mask.h>
>  
>  #ifndef __ASSEMBLY__
>  
> @@ -55,9 +57,6 @@ struct pt_regs {
>  	unsigned long ss;
>  };
>  
> -#include <asm/vm86.h>
> -#include <asm/segment.h>
> -
>  #endif /* __KERNEL__ */
>  
>  #else /* __i386__ */
> @@ -127,9 +126,6 @@ struct pt_regs {
>  
>  #ifdef __KERNEL__
>  
> -/* the DS BTS struct is used for ptrace as well */
> -#include <asm/ds.h>
> -
>  struct task_struct;
>  
>  extern void ptrace_bts_take_timestamp(struct task_struct *, enum bts_qualifier);

Moving #include's out of an #ifdef __KERNEL__ can (and does here) break
our userspace headers.

Running "make headers_check" after touching anything under include/ is
recommended since it catches these problems.

>...
> --- /dev/null
> +++ b/include/asm-x86/vm86_mask.h
> @@ -0,0 +1,12 @@
> +#ifndef ASM_X86_VM86_MASK
> +#define ASM_X86_VM86_MASK
> +
> +#include <asm/processor-flags.h>
> +
> +#ifdef CONFIG_VM86
> +#define X86_VM_MASK	X86_EFLAGS_VM
> +#else
> +#define X86_VM_MASK	0 /* No VM86 support */
> +#endif
> +
> +#endif

Do we need a new header for this or can it go into processor-flags.h ?

cu
Adrian

-- 

       "Is there not promise of rain?" Ling Tan asked suddenly out
        of the darkness. There had been need of rain for many days.
       "Only a promise," Lao Er said.
                                       Pearl S. Buck - Dragon Seed


  reply	other threads:[~2008-05-27 21:41 UTC|newest]

Thread overview: 4+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2008-05-27 20:49 [PATCH] x86: break mutual header inclusion Vegard Nossum
2008-05-27 21:38 ` Adrian Bunk [this message]
2008-05-27 22:01   ` Vegard Nossum
2008-05-27 22:27     ` Adrian Bunk

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=20080527213819.GC11310@cs181133002.pp.htv.fi \
    --to=bunk@kernel.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=mingo@elte.hu \
    --cc=vegard.nossum@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).