You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@trafficserver.apache.org by "Leif Hedstrom (JIRA)" <ji...@apache.org> on 2013/09/25 18:50:03 UTC
[jira] [Commented] (TS-2254) ink_atomic_increment should return the
old value
[ https://issues.apache.org/jira/browse/TS-2254?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13777731#comment-13777731 ]
Leif Hedstrom commented on TS-2254:
-----------------------------------
This is for the ARM path, right ? Nice catch!
> ink_atomic_increment should return the old value
> ------------------------------------------------
>
> Key: TS-2254
> URL: https://issues.apache.org/jira/browse/TS-2254
> Project: Traffic Server
> Issue Type: Bug
> Components: Core
> Reporter: Yu Qing
> Assignee: Yu Qing
> Attachments: 0001-TS-2254-ink_atomic_increment-should-return-the-old-v.patch
>
>
> lib/ts/ink_atomic.h
> 197 template<>
> 198 inline int64_t
> 199 ink_atomic_increment<int64_t>(pvint64 mem, int64_t value) {
> 200 int64_t curr;
> 201 ink_mutex_acquire(&__global_death);
> 202 curr = *mem;
> 203 *mem = curr + value;
> 204 ink_mutex_release(&__global_death);
> 205 return curr + value; //SHOULD return curr!
> 206 }
> this function should return the old value (curr, NOT curr + value). it should return same value as gcc inline function __sync_fetch_and_add.
--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira