This is the mail archive of the libc-alpha@sourceware.org mailing list for the glibc project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: RFC: Automatically test IFUNC implementations


On 09/24/2012 03:30 PM, H.J. Lu wrote:
On Mon, Sep 24, 2012 at 6:05 AM, Jeff Law <law@redhat.com> wrote:
On 09/23/2012 04:05 PM, H.J. Lu wrote:

Hi,


http://sourceware.org/bugzilla/show_bug.cgi?id=14602

shows that we need to test all IFUNC implementations as much as we can.
I created hjl/ifunc/test branch to automatically test IFUNC
implementations.  Its goals are

1. Provide an infrastructure to tests all implementations supported
on build machine automatically.
2. No changes to IFUNC selectors.
3. Test the new IFUNC implementation by adding it to the list of
IFUNC functions.

Change IFUNC selector is not the goal of this branch. Any comments?

This is something I had discussed with our internal QE team a while back and it would be a big step forward.


My branch builds another libc.so. The difference is


[hjl@gnu-tools-1 build-x86_64-linux]$ diff -up libc.map libc_ifunc.map
--- libc.map	2012-09-23 15:23:44.196066030 -0700
+++ libc_ifunc.map	2012-09-23 15:23:44.267066799 -0700
@@ -903,4 +903,5 @@ GLIBC_PRIVATE {
      _nss_files_parse_grent; _nss_files_parse_pwent; _nss_files_parse_spent;
      errno;
      h_errno; __resp;
+    __libc_func;
  } GLIBC_2.17;
[hjl@gnu-tools-1 build-x86_64-linux]$

The ifunc tests are linked against this libc.so, using __libc_func, which takes
the name of function to be tested and returns a list of available IFUNC
implementations on build machine.  It builds the special libc.so and runs ifunc
tests only if mulit-arch is enabled.

So, you're building two libcs and one has this just extra symbol? In that case I suggest to build only one libc and have the symbol exported for everybody with a version in the namespace GLIBC_PRIVATE. My fear is that the duplicate building cases us more harm than good...


Andreas
--
 Andreas Jaeger aj@{suse.com,opensuse.org} Twitter/Identica: jaegerandi
  SUSE LINUX Products GmbH, Maxfeldstr. 5, 90409 Nürnberg, Germany
   GF: Jeff Hawn,Jennifer Guild,Felix Imendörffer,HRB16746 (AG Nürnberg)
    GPG fingerprint = 93A3 365E CE47 B889 DF7F  FED1 389A 563C C272 A126


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]