On Monday 29 February 2016 05:52:23 EXT Bill Fischofer wrote:
> I thought you were using ODP in an application.  This sounds like you're
> creating your own ODP implementation, in which case the result is that 
you
> have a properly typed definition of ODP_QUEUE_INVALID of type 
odp_queue_t.
> In this case the assignment works so I guess I'm now confused what the
> issue is.
> 

        Hi,

        Yes, this is the case, I'm working in supporting a platform in 
odp, and the code defines odp_queue_t as an union. In that context, 
defining ODP_QUEUE_INVALID as, for instance:

#define ODP_QUEUE_INVALID ~(unsigned)0

        Is not something we can afford, as it should be compared with 
queue.u64. Is there any other way to define ODP_QUEUE_INVALID that is 
not depending in _odp_cast_scalar()?

> An ODP application should never reference the internals of an ODP
> implementation, but of course an ODP implementation must do so.  If 
your
> implementation wishes to borrow constructs from linux-generic like
> _odp_cast_scalar() that's perfectly fine. That's why we provide reference
> implementations of ODP--to enable other implementations to use the 
code as
> scaffolding for their own implementations.
> 
> Have I misunderstood what the root issue is here?
> 

        I hope not, because otherwise I'm lacking ways to get this 
explained anymore.

        Coming back to the patch, it's just providing flexibility to let 
the platform provide it's own way to define the invalidation. If this is not 
something good enough, just feel free not to consider it.

        Best regards.

        José.

_______________________________________________
lng-odp mailing list
[email protected]
https://lists.linaro.org/mailman/listinfo/lng-odp

Reply via email to