Merge tag 'trace-tools-v6.5' of git://git.kernel.org/pub/scm/linux/kernel/git/trace...
[platform/kernel/linux-rpi.git] / scripts / atomic / fallbacks / dec_if_positive
1 cat <<EOF
2         ${int} dec, c = raw_${atomic}_read(v);
3
4         do {
5                 dec = c - 1;
6                 if (unlikely(dec < 0))
7                         break;
8         } while (!raw_${atomic}_try_cmpxchg(v, &c, dec));
9
10         return dec;
11 EOF