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

Function pointer signature mismatch in LF_HASH

Details

    Description

      When the server is built with cmake -DWITH_UBSAN=ON using clang instead of GCC, a lot of function pointer mismatch will be reported for various traversal of lock-free hash tables:

      10.4 96130b1898d34222d1f0543d75dc1acb6cdb8b09

      /mariadb/10.4/storage/innobase/include/trx0sys.h:534:12: runtime error: call to function trx_sys_t::copy_one_id(rw_trx_hash_element_t*, trx_sys_t::snapshot_ids_arg*) through pointer to incorrect function type 'char (*)(void *, void *)'
      /mariadb/10.4/storage/innobase/include/trx0sys.h:1155: note: trx_sys_t::copy_one_id(rw_trx_hash_element_t*, trx_sys_t::snapshot_ids_arg*) defined here
      

      Attachments

        Issue Links

          Activity

            Here is another example that is related to trx_sys.rw_trx_hash:

            10.5 bf0aa99aeb7dd2bb7497f5ae9a82d1e72e7ee1d5

            mysys/lf_hash.cc:419:3: runtime error: call to function rw_trx_hash_t::rw_trx_hash_initializer(st_lf_hash*, rw_trx_hash_element_t*, trx_t*) through pointer to incorrect function type 'void (*)(st_lf_hash *, void *, const void *)'
            

            marko Marko Mäkelä added a comment - Here is another example that is related to trx_sys.rw_trx_hash : 10.5 bf0aa99aeb7dd2bb7497f5ae9a82d1e72e7ee1d5 mysys/lf_hash.cc:419:3: runtime error: call to function rw_trx_hash_t::rw_trx_hash_initializer(st_lf_hash*, rw_trx_hash_element_t*, trx_t*) through pointer to incorrect function type 'void (*)(st_lf_hash *, void *, const void *)'

            People

              marko Marko Mäkelä
              marko Marko Mäkelä
              Votes:
              0 Vote for this issue
              Watchers:
              3 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.