lkml.org 
[lkml]   [2015]   [Feb]   [20]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    /
    Date
    From
    SubjectRe: [Qemu-devel] [RFC PATCH v2 09/15] cpu-model/s390: Add KVM VM attribute interface routines
    On Fri, 20 Feb 2015 14:59:20 +0100
    Alexander Graf <agraf@suse.de> wrote:

    > > +typedef struct S390ProcessorProps {
    > > + uint64_t cpuid;
    > > + uint16_t ibc;
    > > + uint8_t pad[6];
    > > + uint64_t fac_list[S390_ARCH_FAC_LIST_SIZE_UINT64];
    > > +} S390ProcessorProps;
    > > +
    > > +typedef struct S390MachineProps {
    > > + uint64_t cpuid;
    > > + uint32_t ibc_range;
    > > + uint8_t pad[4];
    > > + uint64_t fac_list_mask[S390_ARCH_FAC_LIST_SIZE_UINT64];
    > > + uint64_t fac_list[S390_ARCH_FAC_LIST_SIZE_UINT64];
    > > +} S390MachineProps;
    >
    > What are those structs there for? To convert between a kvm facing
    > interface to an internal interface?

    Yes, that's their current use, but if the interface structs:

    +struct kvm_s390_vm_cpu_processor {
    + __u64 cpuid;
    + __u16 ibc;
    + __u8 pad[6];
    + __u64 fac_list[256];
    +};
    +
    +/* kvm S390 machine related attributes are r/o */
    +#define KVM_S390_VM_CPU_MACHINE 1
    +struct kvm_s390_vm_cpu_machine {
    + __u64 cpuid;
    + __u32 ibc_range;
    + __u8 pad[4];
    + __u64 fac_mask[256];
    + __u64 fac_list[256];
    +};

    are visible here, I'll reuse them... But stop, that will not work in the
    --disable-kvm case... I need them!
    >
    > I don't think they're necessary. The internal layout is visible from the
    > KVM code. Just either spawn the class straight from the kvm file or if
    > you consider that ugly, pass the values of that struct that you need as
    > function parameters to a function in cpu-models.c.



    \
     
     \ /
      Last update: 2015-02-20 16:41    [W:2.298 / U:0.984 seconds]
    ©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site