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

              danblack Daniel Black
              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.