I agree that it's not a very serious problem. I think I remember my
cubemate at HP trying to get SPARC EIO traces to work in M5 at one point
which is why I'm thinking they do exist, but if we want EIO to be Alpha
only I'm fine with that. Maybe we should put something like the
following in files which are Alpha specific but where that might not be
obvious? Otherwise you'll probably get weird type related errors or
something similar.

#if THE_ISA != ALPHA_ISA
#error This file is only compatible with the Alpha ISA.
#endif

Gabe

Steve Reinhardt wrote:
> EIO is Alpha only right now and will almost certainly remain so... not
> because you couldn't port it to other ISAs, but if we decided we did
> want to have an ISA-independent EIO-like capability we'd almost
> certainly develop something else from scratch.  The actual EIO code is
> really there only for SimpleScalar compatibility.  Note that M5
> doesn't even generate EIO traces; you have to use ones that were
> generated with SS.  Not to mention that we'd want to have something
> that could live in our tree and not be encumbered.
>
> So in short I think we're safe hard-coding Alpha stuff into EIO.
>
> Steve
>
> 2008/11/4 Lisa Hsu <[EMAIL PROTECTED]>:
>   
>> It happens in AlphaLiveProcess.  I had the inclination that EIO is only
>> Alpha capable, I think I saw it on our wiki.  Is that inherent or just the
>> way it is because we just don't have it for something else?  I'm not sure
>> we'll develop eio for non-alpha anyway.  But if people object, let me know,
>> I had an alternate fix that resides within the AlphaTLB only.
>>
>> Lisa
>>
>> On Tue, Nov 4, 2008 at 11:04 PM, Gabe Black <[EMAIL PROTECTED]> wrote:
>>     
>>> Actually not if the EIO process object is generic. Where would this
>>> normally happen for a live process? In a subclass? I'm really surprised
>>> I don't remember... It's been a while :)
>>>
>>> Gabe
>>>
>>> Gabe Black wrote:
>>>       
>>>> This might be a reasonable fix for the immediate term, but I don't think
>>>> eio is limited to Alpha. A more appropriate place for this is probably
>>>> in the EIO process object constructor.
>>>>
>>>> Gabe
>>>>
>>>> [EMAIL PROTECTED] wrote:
>>>>
>>>>         
>>>>> changeset 2c7b9d01d542 in /z/repo/encumbered
>>>>> details:
>>>>> http://repo.m5sim.org/encumbered?cmd=changeset;node=2c7b9d01d542
>>>>> summary: fix multicore eio.
>>>>>
>>>>> diffstat:
>>>>>
>>>>> 0 files changed
>>>>>
>>>>> diffs (25 lines):
>>>>>
>>>>> diff -r 25ae7c9393d9 -r 2c7b9d01d542 eio/eio.cc
>>>>> --- a/eio/eio.cc     Tue Nov 04 11:40:05 2008 -0500
>>>>> +++ b/eio/eio.cc     Tue Nov 04 21:55:49 2008 -0500
>>>>> @@ -71,6 +71,7 @@
>>>>>  // field name in eval.h.
>>>>>  #include "eio/libexo.h"
>>>>>
>>>>> +using namespace AlphaISA;
>>>>>  using namespace std;
>>>>>
>>>>>  static struct {
>>>>> @@ -650,6 +651,13 @@
>>>>>      eio_close(chkpt_fd);
>>>>>      chkpt_fd = NULL;
>>>>>      }
>>>>> +    ThreadContext *tc = system->getThreadContext(contextIds[0]);
>>>>> +    //Operate in user mode
>>>>> +    tc->setMiscRegNoEffect(IPR_ICM, 0x18);
>>>>> +    //No super page mapping
>>>>> +    tc->setMiscRegNoEffect(IPR_MCSR, 0);
>>>>> +    //Set this to 0 for now, but it should be unique for each process
>>>>> +    tc->setMiscRegNoEffect(IPR_DTB_ASN, M5_pid << 57);
>>>>>  }
>>>>>
>>>>>
>>>>> _______________________________________________
>>>>> m5-dev mailing list
>>>>> m5-dev@m5sim.org
>>>>> http://m5sim.org/mailman/listinfo/m5-dev
>>>>>
>>>>>
>>>>>           
>>>> _______________________________________________
>>>> m5-dev mailing list
>>>> m5-dev@m5sim.org
>>>> http://m5sim.org/mailman/listinfo/m5-dev
>>>>
>>>>         
>>> _______________________________________________
>>> m5-dev mailing list
>>> m5-dev@m5sim.org
>>> http://m5sim.org/mailman/listinfo/m5-dev
>>>
>>>       
>> _______________________________________________
>> m5-dev mailing list
>> m5-dev@m5sim.org
>> http://m5sim.org/mailman/listinfo/m5-dev
>>
>>
>>     
> _______________________________________________
> m5-dev mailing list
> m5-dev@m5sim.org
> http://m5sim.org/mailman/listinfo/m5-dev
>   

_______________________________________________
m5-dev mailing list
m5-dev@m5sim.org
http://m5sim.org/mailman/listinfo/m5-dev

Reply via email to