[Bug 2001975] Re: overflow bug in wcsncmp_avx2

Simon Chopin 2001975 at bugs.launchpad.net
Wed Jun 28 15:39:02 UTC 2023


Verified in a fresh LXD container:

root at focal-glibc:~# gcc -static -o test_wcsncmp test_wcsncmp.c
In file included from test_wcsncmp.c:2:
test_wcsncmp.c: In function ‘main’:
test_wcsncmp.c:6:12: warning: implicit declaration of function ‘__wcsncmp_avx2’ [-Wimplicit-function-declaration]
    6 |     assert(__wcsncmp_avx2(L"abc", L"abd", (1UL << 62)) != 0);
      |            ^~~~~~~~~~~~~~
root at focal-glibc:~# ./test_wcsncmp && echo OK
OK

** Tags removed: verification-needed verification-needed-focal
** Tags added: verification-done verification-done-focal

-- 
You received this bug notification because you are a member of Ubuntu
Foundations Bugs, which is subscribed to glibc in Ubuntu.
https://bugs.launchpad.net/bugs/2001975

Title:
  overflow bug in wcsncmp_avx2

Status in GLibC:
  Fix Released
Status in glibc package in Ubuntu:
  Fix Released
Status in glibc source package in Focal:
  Fix Committed

Bug description:
  [Impact]

  See https://sourceware.org/bugzilla/show_bug.cgi?id=28755

  Note that we're only impacted by the avx2 issue, the evex-optimized
  version isn't present in the 2.31 branch.

  [Test case]

  > test_wcsncmp.c cat <<EOF
  #include <wchar.h>
  #include <assert.h>

  int
  main(int argc, char ** argv) {
      assert(__wcsncmp_avx2(L"abc", L"abd", (1UL << 62)) != 0);
  }
  EOF
  gcc -static -o test_wcsncmp test_wcsncmp.c
  ./test_scsncmp

  [Regression potential]

  The patch is contained within the AVX-2 optimized routine, but it
  could still cause introduce a new bug there. In addition, we could see
  performance regressions.

To manage notifications about this bug go to:
https://bugs.launchpad.net/glibc/+bug/2001975/+subscriptions




More information about the foundations-bugs mailing list