[CDRIVER-365] don't use __sync_fetch_and_add for 64-bit when on gcc 4.1 on 32-bit x86. Created: 13/May/14 Updated: 03/May/17 Resolved: 19/May/14 |
|
| Status: | Closed |
| Project: | C Driver |
| Component/s: | None |
| Affects Version/s: | None |
| Fix Version/s: | None |
| Type: | Bug | Priority: | Major - P3 |
| Reporter: | Christian Hergert | Assignee: | Christian Hergert |
| Resolution: | Done | Votes: | 0 |
| Labels: | None | ||
| Remaining Estimate: | Not Specified | ||
| Time Spent: | Not Specified | ||
| Original Estimate: | Not Specified | ||
| Issue Links: |
|
||||||||
| Description |
|
It looks like there is a bug with 64-bit atomics on 32-bit gcc 4.1. We need to fall back and use our locked code with this. (RHEL 5 ships this compiler). The bug was apparently fixed in 4.2. |
| Comments |
| Comment by Christian Hergert [ 19/May/14 ] |
|
Fixed in git master. https://github.com/mongodb/libbson/commit/e0af62fbe02ff07e0498814d1dfdba07644687c7 |