History log of /external/libdrm/xf86atomic.h
Revision Date Author Comments (<<< Hide modified files) (Show modified files >>>)
cec65e2fcc8ddd3a2a094d446d49d7a7f52ff55d 21-Sep-2015 Emil Velikov <emil.l.velikov@gmail.com> Fix SunOS/NetBSD atomic macro

Reported-by: Evgeny Litvinenko <evgeny.v.litvinenko@gmail.com>
Signed-off-by: Emil Velikov <emil.l.velikov@gmail.com>
/external/libdrm/xf86atomic.h
7caa442e761ab5e48698c937aea9ce18f4522ecb 26-Feb-2015 Maarten Lankhorst <maarten.lankhorst@ubuntu.com> Use __sync_add_and_fetch instead of __sync_fetch_and_add for atomic_dec_and_test

Signed-off-by: Maarten Lankhorst <maarten.lankhorst@ubuntu.com>
Acked-By: Emil Velikov <emil.l.velikov@gmail.com>
/external/libdrm/xf86atomic.h
cd4685498b7926cf3fb39c6d0d25b2bc76c29f68 26-Feb-2015 Maarten Lankhorst <maarten.lankhorst@ubuntu.com> Add atomic_inc_return to atomics.

Signed-off-by: Maarten Lankhorst <maarten.lankhorst@ubuntu.com>
Acked-By: Emil Velikov <emil.l.velikov@gmail.com>
/external/libdrm/xf86atomic.h
dd89e1efd05299ec4015d144158d2eceeb6a6484 07-Feb-2015 Alan Coopersmith <alan.coopersmith@oracle.com> Stop undefining _ATOMIC_TYPE in Solaris/NetBSD section of xf86atomic.h

Since the atomic_set() macro references _ATOMIC_TYPE, undefining it
broke that macro, resulting in build errors of:
"intel_bufmgr_gem.c", line 775: undefined symbol: _ATOMIC_TYPE

Now that we're leaving the macro in the namespace, renamed it to start
with LIBDRM_ instead of _ to avoid polluting others namespace.

Regression introduced in 87fdd32c8779648 Add NetBSD atomic ops support.

Signed-off-by: Alan Coopersmith <alan.coopersmith@oracle.com>
Reviewed-By: Thomas Klausner <wiz@NetBSD.org>
/external/libdrm/xf86atomic.h
87fdd32c87796482638de54988027d0aca0c4f12 20-Jul-2014 Thomas Klausner <wiz@NetBSD.org> Add NetBSD atomic ops support.

Signed-off-by: Thomas Klausner <wiz@NetBSD.org>
Reviewed-by: Maarten Lankhorst <maarten.lankhorst@canonical.com>
Signed-off-by: Maarten Lankhorst <maarten.lankhorst@ubuntu.com>
/external/libdrm/xf86atomic.h
96cf45542503dd4c892c7875340957d5515163ac 20-Jul-2014 Thomas Klausner <wiz@NetBSD.org> Fix libdrm's atomic_dec_and_test on Solaris.

_nv means new value, not old value!

Signed-off-by: Thomas Klausner <wiz@NetBSD.org>
Reviewed-by: Maarten Lankhorst <maarten.lankhorst@canonical.com>
Signed-off-by: Maarten Lankhorst <maarten.lankhorst@ubuntu.com>
/external/libdrm/xf86atomic.h
63fc571863aa646834004fae2a8aee1326b775dc 12-Sep-2014 Lionel Landwerlin <lionel.g.landwerlin@intel.com> atomic: add atomic_add_unless()

Reviewed-by: Chris Wilson <chris@chris-wilson.co.uk>
Signed-off-by: Damien Lespiau <damien.lespiau@intel.com>
Signed-off-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com>
/external/libdrm/xf86atomic.h
c9065c5963db1b8196d278c47b8da2c33a3c49d1 17-Apr-2010 Alan Coopersmith <alan.coopersmith@oracle.com> Correct the Solaris definitions of atomic_add & atomic_dec

The #defines added in 966c9907c040b4fe4b288b4a9d82598797aee743 were
mapping these to functions that don't exist.

Signed-off-by: Alan Coopersmith <alan.coopersmith@oracle.com>
/external/libdrm/xf86atomic.h
966c9907c040b4fe4b288b4a9d82598797aee743 28-Aug-2009 Pauli Nieminen <suokkos@gmail.com> libdrm_radeon: Optimize cs_gem_reloc to do less looping.

bo->referenced_in_cs is checked if bo is already in cs. Adding and removing
reference in bo is done with atomic operations to allow parallel access to a
bo from multiple contexts.

cs->id generation code quarentees there is not duplicated ids which limits
number of cs->ids to 32. If there is more cs objects rest will get id 0.

V2:
- Fix configure to check for atomics operations if libdrm_radeon is only selected.
- Make atomic operations private to libdrm.

This optimization decreases cs_write_reloc share of torcs profiling from 4.3%
to 2.6%.

Tested-by: Michel Dänzer <michel@daenzer.net>
Signed-off-by: Pauli Nieminen <suokkos@gmail.com>
/external/libdrm/xf86atomic.h
21105bc186d188f0bfc2f41c52b4b0ceb6742cf5 10-Mar-2010 Pauli Nieminen <suokkos@gmail.com> libdrm: Move intel_atomic.h to libdrm core for sharing.

intel_atomic.h includes very usefull atomic operations for
lock free parrallel access of variables. Moving these to
core libdrm for code sharing with radeon.

Signed-off-by: Pauli Nieminen <suokkos@gmail.com>
/external/libdrm/xf86atomic.h