On 11.10.2012, at 17:50, Scott Wood wrote: > On 10/11/2012 08:04:58 AM, Alexander Graf wrote: >> On 11.10.2012, at 05:32, Tabi Timur-B04825 wrote: >> > On Wed, Oct 10, 2012 at 9:47 PM, Stephen Rothwell <sfr@xxxxxxxxxxxxxxxx> wrote: >> > >> >> Commit 549d62d889b4 ("KVM: PPC: use definitions in epapr header >> >> for hcalls") from the kvm-ppc tree added an include of asm/epapr_hcall.h >> >> to the user visible part of asm/kvm_para.h so asm/epapr_hcall.h became a >> >> user visible header file. >> > >> > Any real user-space code that tries to call any of the functions in >> > epapr_hcall.h will cause an exception. > > Actually it'll cause a linker error, as of the "Don't use hardcoded opcode for ePAPR hcall invocation" patch. > >> > Claiming that kernel header files that KVM needs are suddenly >> > user-space header files doesn't make much sense to me, but I guess >> > it's not my decision. >> This is about kvm_host.h, which is the part that is exported to user space. It usually contains constants and structs that are required for the API. > > s/kvm_host/kvm_para/ > > I'm not sure anything in kvm_para.h or epapr_hcalls.h would be of use to userspace, but it would be of use to the guest OS, so it's still not kernel-internal. > > The variable externs should be #ifdef __KERNEL__ as David points out. The asm stuff could still be useful in a guest OS if the guest provides epapr_hypercall_start. I don't think we should worry about guest kernel code potentially having use for this. Let's make the user space headers be great for user space usage, not for guest code usage :). Alex-- To unsubscribe from this list: send the line "unsubscribe linux-next" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html