For future reference - I narrowed the problem down to some issue with the 
toolchain / linker being used on this platform.

The tables declared in JudyXTables.c would have weird values in them at runtime 
- ie. not the values which they were declared to have at compile time.

I assume the linker was doing something wrong with resolving the 'extern' 
references to them.

So I worked around it by patching libjudy to generate accessor functions for 
these arrays and to use these functions to access the values from them, rather 
than accessing the arrays directly via extern.

See attached if anyone is interested.

-----Original Message-----
From: Alex Murray [mailto:[email protected]] 
Sent: Tuesday, 2 August 2016 2:04 PM
To: judy
Subject: RE: Weird results on a particular ARM platform

As a follow-up - I've been able to run the Judy1LCheck test on the platform and 
it also fails almost immediately with:

    Judy1LCheck -n1000000 -S0 -B32

    Judy1LCheck 32 Bit version
    Total Pop Total Ins New Ins Total Del J1MU/I JLMU/I
    Error: JudyLGet failed - Index missing, population = 0, 
file='Judy1LCheck.c', 'function='TestJudyIns', line 539
    Error: JudyLGet failed - Index missing, population = 0, 
file='Judy1LCheck.c', 'function='TestJudyIns', line 539

Which confirms the original issue - and also rules out corruption due to other 
code etc.

Any further ideas would be really appreciated ☺

Thanks
Alex

-----Original Message-----
From: Alex Murray
Sent: Tuesday, 2 August 2016 1:42 PM
To: judy
Subject: RE: Weird results on a particular ARM platform

Hi John

Thanks for the suggestions - unfortunately there is no file-system on this 
platform - so I'm going to have a go at getting the existing Judy tests running 
on it first to see if that turns up anything.

Cheers
Alex

-----Original Message-----
From: john skaller [mailto:[email protected]]
Sent: Tuesday, 2 August 2016 1:20 PM
To: judy
Subject: Re: Weird results on a particular ARM platform

[BTW your Alex email address bounced]

Here is an idea, might help, don’t know:

For every Judy access, add code the writes the operation and data to a file.

Now, write a new program that just reads the file and repeats the operations.

[If have actually done this]

There are two outcomes:

(a) the results differ (the test program works)
(b) both fail

If the results differ, it is other code in your product corrupting Judy.

If the test program also fails, then its a bug in Judy (for that processor at 
least).


—
john skaller
[email protected]
http://felix-lang.org


------------------------------------------------------------------------------
_______________________________________________
Judy-devel mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/judy-devel

______________________________________________________________________
This email has been scanned by the Symantec Email Security.cloud service.
For more information please visit http://www.symanteccloud.com 
______________________________________________________________________

This communication may contain confidential or copyright information. If you 
are not an intended recipient, you must not keep, forward, copy, use, save or 
rely on this communication, and any such action is unauthorized and prohibited. 
If you have received this communication in error, please reply to this email to 
notify the sender of its incorrect delivery and then delete both the original 
message and your reply.
------------------------------------------------------------------------------
_______________________________________________
Judy-devel mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/judy-devel

______________________________________________________________________
This email has been scanned by the Symantec Email Security.cloud service.
For more information please visit http://www.symanteccloud.com 
______________________________________________________________________

This communication may contain confidential or copyright information. If you 
are not an intended recipient, you must not keep, forward, copy, use, save or 
rely on this communication, and any such action is unauthorized and prohibited. 
If you have received this communication in error, please reply to this email to 
notify the sender of its incorrect delivery and then delete both the original 
message and your reply.

Attachment: 0001-use-accessors-for-array-access.patch
Description: 0001-use-accessors-for-array-access.patch

------------------------------------------------------------------------------
_______________________________________________
Judy-devel mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/judy-devel

Reply via email to