mirror of https://lore.kernel.org/lkml/
 help / color / mirror / Atom feed
From: Sam Ravnborg <sam@ravnborg.org>
To: Avi Kivity <avi@redhat.com>
Cc: Ingo Molnar <mingo@elte.hu>,
	Jaswinder Singh Rajput <jaswinder@kernel.org>,
	Andrew Morton <akpm@linux-foundation.org>,
	x86 maintainers <x86@kernel.org>,
	LKML <linux-kernel@vger.kernel.org>
Subject: Re: [GIT PULL -tip v3] fix 39 'make headers_check' warnings
Date: Mon, 19 Jan 2009 12:01:53 +0100	[thread overview]
Message-ID: <20090119110153.GA8321@uranus.ravnborg.org> (raw)
In-Reply-To: <497445B6.7030606@redhat.com>

> 
> It does.  This patch will break userspace.
> 
> Doesn't 'make headers_install' unifder the CONFIG_ stuff?

Nope. headers_install only unifdef __KERNEL__ stuff.

> 
> >>@@ -384,18 +386,24 @@ struct kvm_trace_rec {
> >> #define KVM_CAP_MP_STATE 14
> >> #define KVM_CAP_COALESCED_MMIO 15
> >> #define KVM_CAP_SYNC_MMU 16  /* Changes to host mmap are reflected in 
> >> guest */
> >>+#ifdef __KERNEL__
> >> #if defined(CONFIG_X86)||defined(CONFIG_IA64)
> >> #define KVM_CAP_DEVICE_ASSIGNMENT 17
> >> #endif
> >>+#endif /* __KERNEL__ */
> >> #define KVM_CAP_IOMMU 18
> >>+#ifdef __KERNEL__
> >> #if defined(CONFIG_X86)
> >> #define KVM_CAP_DEVICE_MSI 20
> >> #endif
> >>+#endif /* __KERNEL__ */
> >> /* Bug in KVM_SET_USER_MEMORY_REGION fixed: */
> >> #define KVM_CAP_DESTROY_MEMORY_REGION_WORKS 21
> >>+#ifdef __KERNEL__
> >> #if defined(CONFIG_X86)
> >> #define KVM_CAP_USER_NMI 22
> >> #endif
> >>+#endif /* __KERNEL__ */
> >>    
> >
> >likewise, are these bits really used by user-space KVM bits? If not then 
> >the whole thing could go into an #ifdef __KERNEL__ block.
> >  
> 
> They are.  This bits advertise to userspace what features kvm supports, 
> both compile- and run-time.

This is wrong...
The headers does not change with the kernel configuration and advertising the
kvm features via a .h file like this is simply plain broken.
You cannot assume that the header files are generated with the exact same config
as used by the running kernel.
And userspace has in no way access to the CONFIG_ namespace which is purely kernel-internal.

I cannot see how you have ever seen kcm advertise that for example KVM_CAP_USER_NMI
equals to 22 because CONFIG_X86 is never (supposed to be) defined in userspace -
except if you did so yourself by some means.

	Sam

  reply	other threads:[~2009-01-19 11:00 UTC|newest]

Thread overview: 24+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2009-01-18 14:04 Jaswinder Singh Rajput
2009-01-18 17:28 ` Ingo Molnar
2009-01-18 18:50   ` Ingo Molnar
2009-01-18 18:52     ` Ingo Molnar
2009-01-18 19:08     ` Sam Ravnborg
2009-01-18 19:09       ` Ingo Molnar
2009-01-18 19:45         ` Sam Ravnborg
2009-01-19  2:16       ` Jaswinder Singh Rajput
2009-01-19  5:27         ` Sam Ravnborg
2009-01-19  2:10     ` Jaswinder Singh Rajput
2009-01-19  2:20       ` Harvey Harrison
2009-01-19 11:15         ` Ingo Molnar
2009-01-19 18:08           ` Harvey Harrison
2009-01-18 18:56 ` Ingo Molnar
2009-01-19  9:19   ` Avi Kivity
2009-01-19 11:01     ` Sam Ravnborg [this message]
2009-01-19 11:53       ` Avi Kivity
2009-01-24  6:16         ` Jaswinder Singh Rajput
2009-02-04 14:28           ` Avi Kivity
2009-02-04 15:17             ` Jaswinder Singh Rajput
2009-02-04 15:40               ` Avi Kivity
2009-02-04 16:00                 ` Jaswinder Singh Rajput
2009-02-04 16:37                   ` Arnd Bergmann
2009-02-04 17:22                     ` Avi Kivity

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=20090119110153.GA8321@uranus.ravnborg.org \
    --to=sam@ravnborg.org \
    --cc=akpm@linux-foundation.org \
    --cc=avi@redhat.com \
    --cc=jaswinder@kernel.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=mingo@elte.hu \
    --cc=x86@kernel.org \
    /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

Powered by JetHome