On Wed, Nov 25, 2009 at 09:09:19PM +0100, Sebastian Herbszt wrote: > Gleb Natapov wrote: > >On Tue, Nov 24, 2009 at 10:57:02AM -0500, Kevin O'Connor wrote: > >> > >>That said, I think SeaBIOS should autodetect any values where that's > >>feasible. So, for example, if the cpu identification is available via > >>cpuid, then I think that should be used. However, for example, if cpu > >>model isn't available anywhere, then I think hardcoding something is > >>okay. > >It is used already where appropriate. To fill processor_id field in type > >4 table. CPU manufacturer is different issue. CPU a guest is running on is > >not manufactured by Intel or AMD, it is emulated by QEMU. > > I am still wondering why you're against using the vendor reported by CPUID. I am still wondering why you want this :) But let me ask you a question: You are running some program inside QEMU and you encounter a bug. Some instruction does not update eflags like it should and program fails. Do you complain to a) AMD b) Intel c) QEMU mailing list.
If your answer is (c), then I don't see how you can propose to put something else then QEMU in manufacturer field. > The cross vendor host cpu migration doesn't seem to be a sound reason, because > the cpu in the guest is emulated and has no relationship to the host cpu. > If i specify "-cpu phenom", i end up with an AMD cpu. Since noone but AMD > produces this cpu it seems only reasonable to advertise the vendor as AMD. > > >>> > >>>>>>>- p->max_speed = 0; /* unknown */ > >>> > >>>>>>>- p->current_speed = 0; /* unknown */ > >>> > >>>>>>>+ p->max_speed = 2000; > >>> > >>>>>>>+ p->current_speed = 2000; > >> > >>SeaBIOS detects the current Mhz - see calibrate_tsc() in src/clock.c. > >> > >How accurate is it? What if I boot 100 guests on 16 cpu host > >simultaneously? Not uncommon scenario. Those field really have no > >meaning in virtualization environment. I'd rather have predictable > >values there from boot to boot. Who know what Windows may use them for. > > Speaking of not knowing what an OS or application might do with values in the > SMBIOS table. Doesn't the same argument apply to the cpu vendor? > I am concern with SMBIOS table be different on each boot, not what information is stored in those fields. CPU manufacturer is free form string. I have computers that have "Intel" there, others have "Intel(R) Corporation". As long as it consistent from boot to boot it is OK IMO. -- Gleb.