How about:
/**
* Find next cpu in mask
*
* Finds the next cpu in the CPU mask, starting at the cpu passed.
* Use with odp_cpumask_first to traverse a CPU mask, i.e.
*
* int cpu = odp_cpumask_first(&mask);
* while (0 <= cpu) {
* ...
* ...
* cpu = odp_cpumask_next(&mask, cpu);
* }
*
* @param mask CPU mask to find next cpu in
* @param cpu CPU to start from
* @return cpu found else -1
*/
-----Original Message-----
From: Ola Liljedahl [mailto:[email protected]]
Sent: Tuesday, January 13, 2015 10:58 AM
To: Robbie King (robking)
Cc: Savolainen, Petri (NSN - FI/Espoo); [email protected]
Subject: Re: [lng-odp] [PATCHv2 1/2] Convert linux thread/proc helpers to use
core mask
On 13 January 2015 at 16:35, Robbie King (robking) <[email protected]> wrote:
> Yes, that’s a good point. A quick usage blurb would be useful.
A little code snippet in the header file perhaps?
>
> -----Original Message-----
> From: Savolainen, Petri (NSN - FI/Espoo) [mailto:[email protected]]
> Sent: Tuesday, January 13, 2015 10:33 AM
> To: Robbie King (robking); [email protected]
> Subject: RE: [lng-odp] [PATCHv2 1/2] Convert linux thread/proc helpers to use
> core mask
>
> It makes sense. I managed to mix things up. Should we add documentation that
> "cpu" parameter is typically coming from odp_cpumask_first().
>
> -Petri
>
>> -----Original Message-----
>> From: ext Robbie King (robking) [mailto:[email protected]]
>> Sent: Tuesday, January 13, 2015 5:23 PM
>> To: Savolainen, Petri (NSN - FI/Espoo); [email protected]
>> Subject: RE: [lng-odp] [PATCHv2 1/2] Convert linux thread/proc helpers to
>> use core mask
>>
>> Hey Petri, I think it needs to be there at least the way I am currently
>> using it. You begin the process by calling "odp_cpumask_first" to get
>> your starting CPU, and the "next" function is the continuation. So
>> the CPU number passed into the function is assumed to be the previously
>> set CPU, and we are searching for the next one. So the "+1" is necessary
>> to skip over the CPU passed in (else you would just keep finding the
>> same CPU).
>>
>> If you wanted to only use "odp_cpumask_next", I think it could be
>> done with passing in "-1" as the CPU to indicate start versus
>> continuation.
>>
>> Hope this makes sense.
>>
>> > +int odp_cpumask_next(const odp_cpumask_t *mask, int cpu)
>> > +{
>> > + for (cpu += 1; cpu < CPU_SETSIZE; cpu++)
>>
>>
>> First valid cpu ID is 0. So, "cpu += 1" should not be there, right?
>>
>> -Petri
>>
>>
>> > + if (odp_cpumask_isset(mask, cpu))
>> > + return cpu;
>> > + return -1;
>> > +}
> _______________________________________________
> lng-odp mailing list
> [email protected]
> http://lists.linaro.org/mailman/listinfo/lng-odp
_______________________________________________
lng-odp mailing list
[email protected]
http://lists.linaro.org/mailman/listinfo/lng-odp