Re: mp_machdep.c (was Re: [Fwd: Re: Bug reports requested - acpi])

From: Roman Kurakin <rik_at_cronyx.ru>
Date: Tue, 21 Sep 2004 01:38:14 +0400
Nate Lawson:

> John Baldwin wrote:
>
>> It's probably cleaner to use pmap_invalidate_range().  Something like:
>>
>> Index: mp_machdep.c
>> ===================================================================
>> RCS file: /usr/cvs/src/sys/i386/i386/mp_machdep.c,v
>> retrieving revision 1.238
>> diff -u -r1.238 mp_machdep.c
>> --- mp_machdep.c    1 Sep 2004 06:42:01 -0000    1.238
>> +++ mp_machdep.c    20 Sep 2004 20:50:35 -0000
>> _at__at_ -738,15 +738,19 _at__at_
>>      int     x;
>>      int     size = *(int *) ((u_long) & bootMP_size);
>>      u_char *src = (u_char *) ((u_long) bootMP);
>> -    u_char *dst = (u_char *) boot_address + KERNBASE;
>> +    u_char *dst;
>>      u_int   boot_base = (u_int) bootMP;
>>      u_int8_t *dst8;
>>      u_int16_t *dst16;
>>      u_int32_t *dst32;
>> +    vm_offset_t va;
>>  
>>      POSTCODE(INSTALL_AP_TRAMP_POST);
>>  
>> -    pmap_kenter(boot_address + KERNBASE, boot_address);
>> +    va = boot_address + KERNBASE;
>> +    pmap_kenter(va, boot_address);
>> +    pmap_invalidate_range(kernel_pmap, va, va + size);
>> +    dst = (u_char *)va;
>>      for (x = 0; x < size; ++x)
>>          *dst++ = *src++;
>>  
>> It seems odd that this is needed though.  Does it go away if you use 
>> DISABLE_PSE or DISABLE_PGE?
>
> He's on a Pentium 2 or something. 

Yes, it is PII. You want to tell that these settings shouldn't affect?
(I don't know much about these features.)

rik
Received on Mon Sep 20 2004 - 19:50:11 UTC

This archive was generated by hypermail 2.4.0 : Wed May 19 2021 - 11:38:12 UTC