Il 10/09/2013 12:53, Gleb Natapov ha scritto: >> > +#ifndef __KERNEL__ >> > +/* For hv_*() */ >> > +#define KVM_EMULATE(name) [HV_SYS_##name] = qemu_emulate_illegal, >> > +#define USER_EMULATE(name) [HV_SYS_##name] = qemu_emulate_hv_##name, >> > +#define NO_EMULATE(name) [HV_SYS_##name] = qemu_emulate_illegal, >> > +#define BOTH_EMULATE(name) [HV_SYS_##name] = qemu_emulate_hv_##name, >> > +/* For others */ >> > +#define USER_HCALL(name) [KVM_HCALL_##name] = qemu_handle_##name, > This does not belong to a kernel header. QEMU is not the only user of KVM > kernel APIs. Please drop that and change all the references in comment > from "qemu" to "userspace". If you add code that workarounds QEMU bugs it > is appropriate to mention QEMU by name, otherwise interface to userspace > should not be QEMU specific. >
In general, I believe that HCALL_DEFS should not be part of the public interface. Otherwise, adding a new hypercall would break compilation of userspace. Hypercalls (after the first commit) should always be associated to a capability, so they shouldn't be generated unless userspace explicitly requests them. Rather, document the hypercalls under Documentation/virtual/kvm, noting which are implemented in the kernel and which need to be handled in userspace. BTW, BOTH_EMULATE and USER_HCALL seem unused. Paolo -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/