Merging 64 bit changes to -HEAD
Luiz Otavio O Souza
lists.br at gmail.com
Wed Jun 30 17:08:26 UTC 2010
On Jun 30, 2010, at 9:57 AM, Jayachandran C. wrote:
> On Tue, Jun 29, 2010 at 10:32 PM, Luiz Otavio O Souza
> <lists.br at gmail.com> wrote:
>>
>> On Jun 29, 2010, at 8:02 AM, Jayachandran C. wrote:
>>
>>> On Tue, Jun 29, 2010 at 2:28 AM, Luiz Otavio O Souza <lists.br at gmail.com> wrote:
>>>>> Thanks for the the update. Looks like pmap_map for kernel is failing,
>>>>> may be the new tlb_update code causes this. Can you apply the
>>>>> attached patch and see if the problem still persists, it replaces the
>>>>> new tlb_update code with the older version.
>>>>>
>>>>> Obviously not a fix, but if we can narrow it down to this function,
>>>>> fixing will be easier.
>>>>>
>>>>> JC.
>>>>> <try.diff>
>>>>
>>>> JC,
>>>>
>>>> This fix the problem ! Thanks ! Now, at least, you know where to look :)
>>>
>>> The new tlb_update does not seem to update the tlb entry if the tlbp
>>> fails. Here's a patch that should make the new function behave like
>>> the older one. The patch is in attached file 'tlb-update.diff'.
>>>
>>> If that does not work, I'm not sure what the issue is. You could also
>>> try try the nop-change.diff attached. It tries to switch the ssnop
>>> used for delay in the new code with 'nop' which was used by the old
>>> code.
>>>
>>> Thanks,
>>> JC.
>>> <tlb-update.diff><nop-change.diff>
>>
>> JC,
>>
>> The nop-change seems to have no effect at all and with the tlb-update patch the kernel apparently crash at bzero(), here is the dmesg with TRAP_DEBUG enabled:
>>
>> http://mips.pastebin.com/jydPvJ20
>>
>> So hopefully you are on the right track and this may be something obvious to you.
>
> Not yet :) I really hoped the earlier change would fix it. The number
> of nop does not seem to be the issue as it is higher in the C code
> than the assembly.
>
> Can you try the attached patch (try.diff) - this re-implements the
> assembly code functionality almost in the same way in C. This really
> should work, given that the patch which made it assembly worked...
>
> If that works can you see if the second attached patch works, this
> fixes a potential problem (ie, we should be masking 13bits for TLBHI).
>
> Both patches should apply directly to SVN (not dependent on each
> other, or on previous patches)
>
> Thanks again,
> JC.
> <try.diff><pte.h-fix.diff>
JC,
The try.diff works with or without the pte.h change (at least for a simple boot) and the pte.h change does nothing without the try.diff.
Thanks for the promptly fix :)
Luiz
More information about the freebsd-mips
mailing list