Uploaded image for project: 'MariaDB Server'
  1. MariaDB Server
  2. MDEV-27936

hardware lock elision on ppc64{,le} failing to compile

    XMLWordPrintable

    Details

      Description

      From https://buildd.debian.org/status/fetch.php?pkg=mariadb-10.6&arch=ppc64&ver=1%3A10.6.7-1&stamp=1645322566&raw=0

      In file included from /<<PKGBUILDDIR>>/storage/innobase/include/transactional_lock_guard.h:73,
                       from /<<PKGBUILDDIR>>/storage/innobase/sync/srw_lock.cc:22:
      /usr/lib/gcc/powerpc64-linux-gnu/11/include/htmxlintrin.h: In function ‘void __TM_abort()’:
      /usr/lib/gcc/powerpc64-linux-gnu/11/include/htmxlintrin.h:94:3: error: ‘__builtin_tabort’ was not declared in this scope; did you mean ‘__builtin_abort’?
         94 |   __builtin_tabort (0);
            |   ^~~~~~~~~~~~~~~~
      

      Per https://gcc.gnu.org/onlinedocs/gcc/PowerPC-Hardware-Transactional-Memory-Built-in-Functions.html, the builtins are only available when -mhtm or -mcpu=power8 or later. Neither of these are used in the compile.

      bb-10.6-danielblack-MDEV-26769-htm-flag-for-ppc64 pushed, see how buildbots handle it. Proper fix might be to make the hardware lock ellision somehow dependent on compile flag detection. I'm also unsure if AIX supports it.

      HTM was introduced POWER8, so I'm unsure if older POWER will survive this change.

        Attachments

          Issue Links

            Activity

              People

              Assignee:
              danblack Daniel Black
              Reporter:
              danblack Daniel Black
              Votes:
              0 Vote for this issue
              Watchers:
              4 Start watching this issue

                Dates

                Created:
                Updated:
                Resolved:

                  Git Integration

                  Error rendering 'com.xiplink.jira.git.jira_git_plugin:git-issue-webpanel'. Please contact your Jira administrators.