Hello,

I have found the problem. SYSTEM_TD member of kernel_data has type
TD_STRUCT and not (as I would expect) TD_STRUCT_PTR. SYSTEM_TD member
exists before TD_LIST and because TD_STRUCT has different size
depending on configuration it makes impossible to use static offset. I
think there might be a way to loop indirectly by ACTIVE_PTR. I will
try to make it work in next few days.

Marian


2015-03-10 20:55 GMT+01:00 Richard Braun <rbr...@sceen.net>:
> On Tue, Mar 10, 2015 at 08:36:18PM +0100, Marian Cingel wrote:
>> Hello,
>>
>> Yes, I had used MQX 4.1.1.
>> The offsets of structs (kernel_data_struct, td_struct) I'm using are
>> stable - they haven't changed
>> for years. It should work the same as with old MQX 3.7 as with new MQX/SDK 
>> 1.1.
>> If there is anything what need to be improved it would be process of
>> reading context switch stack. It depends on several runtime settings.
>
> Please keep the mailing list CC'd.
>
> In my version (MQX 4.1.1 for Linux), MQX_KERNEL_OFFSET_TDLIST is now
> 0x114. At 0x108, there's TASK_TEMPLATE_LIST_PTR. It may have worked
> incorrectly because I'm creating tasks dynamically instead of using a
> static task table.
>
> I'm currently adding support for FPU autodetection, this seems easy and
> reliable enough.
>
> --
> Richard Braun

------------------------------------------------------------------------------
Dive into the World of Parallel Programming The Go Parallel Website, sponsored
by Intel and developed in partnership with Slashdot Media, is your hub for all
things parallel software development, from weekly thought leadership blogs to
news, videos, case studies, tutorials and more. Take a look and join the 
conversation now. http://goparallel.sourceforge.net/
_______________________________________________
OpenOCD-devel mailing list
OpenOCD-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/openocd-devel

Reply via email to