[SeaBIOS] SMBIOS strings

Jes Sorensen Jes.Sorensen at redhat.com
Mon May 31 09:32:08 CEST 2010


On 05/28/10 17:44, Gleb Natapov wrote:
> On Fri, May 28, 2010 at 05:24:47PM +0200, Jes Sorensen wrote:
>> I guess the Socket Designation in particular might have been done for a
>> reason?
>>
> It was part of commit cf2affa6de. And was a result of moving to
> snprintf() instead of direct string manipulation. Before that
> string was created like that:
>     memcpy((char *)start, "CPU  " "\0" "" "\0" "", 7);
>        ((char *)start)[4] = cpu_number + '0';
> Which start to produce strange cpu numbers for cpus greater then 9. I
> doubt we want to go back to that ;)

Hi Gleb,

I see. Well I guess we could do something slightly more compatible by
printing along the lines:

printf("CPU:");
if (nr < 10)
    printf(" ");
snprintf()

Not sure if it is worth it, but it should be doable without reverting to
memcpy().

Thoughts?

Cheers,
Jes



More information about the SeaBIOS mailing list