{"id":2231634,"url":"http://patchwork.ozlabs.org/api/1.1/patches/2231634/?format=json","web_url":"http://patchwork.ozlabs.org/project/glibc/patch/20260501005428.4105376-1-pcc@google.com/","project":{"id":41,"url":"http://patchwork.ozlabs.org/api/1.1/projects/41/?format=json","name":"GNU C Library","link_name":"glibc","list_id":"libc-alpha.sourceware.org","list_email":"libc-alpha@sourceware.org","web_url":"","scm_url":"","webscm_url":""},"msgid":"<20260501005428.4105376-1-pcc@google.com>","date":"2026-05-01T00:54:28","name":"resolv, rt: Change some extern inline functions to static inline","commit_ref":null,"pull_url":null,"state":"new","archived":false,"hash":"a3a8f93117c1f40c77d9cb7abbebf5846804eaab","submitter":{"id":64962,"url":"http://patchwork.ozlabs.org/api/1.1/people/64962/?format=json","name":"Peter Collingbourne","email":"pcc@google.com"},"delegate":null,"mbox":"http://patchwork.ozlabs.org/project/glibc/patch/20260501005428.4105376-1-pcc@google.com/mbox/","series":[{"id":502411,"url":"http://patchwork.ozlabs.org/api/1.1/series/502411/?format=json","web_url":"http://patchwork.ozlabs.org/project/glibc/list/?series=502411","date":"2026-05-01T00:54:28","name":"resolv, rt: Change some extern inline functions to static inline","version":1,"mbox":"http://patchwork.ozlabs.org/series/502411/mbox/"}],"comments":"http://patchwork.ozlabs.org/api/patches/2231634/comments/","check":"pending","checks":"http://patchwork.ozlabs.org/api/patches/2231634/checks/","tags":{},"headers":{"Return-Path":"<libc-alpha-bounces~incoming=patchwork.ozlabs.org@sourceware.org>","X-Original-To":["incoming@patchwork.ozlabs.org","libc-alpha@sourceware.org"],"Delivered-To":["patchwork-incoming@legolas.ozlabs.org","libc-alpha@sourceware.org"],"Authentication-Results":["legolas.ozlabs.org;\n\tdkim=pass (2048-bit key;\n unprotected) header.d=google.com header.i=@google.com header.a=rsa-sha256\n header.s=20251104 header.b=nQuck36H;\n\tdkim-atps=neutral","legolas.ozlabs.org;\n spf=pass (sender SPF authorized) smtp.mailfrom=sourceware.org\n (client-ip=2620:52:6:3111::32; helo=vm01.sourceware.org;\n envelope-from=libc-alpha-bounces~incoming=patchwork.ozlabs.org@sourceware.org;\n receiver=patchwork.ozlabs.org)","sourceware.org;\n\tdkim=pass (2048-bit key,\n unprotected) header.d=google.com header.i=@google.com header.a=rsa-sha256\n header.s=20251104 header.b=nQuck36H","sourceware.org;\n dmarc=pass (p=reject dis=none) header.from=google.com","sourceware.org;\n spf=pass smtp.mailfrom=flex--pcc.bounces.google.com","server2.sourceware.org;\n arc=none smtp.remote-ip=2607:f8b0:4864:20::124a"],"Received":["from vm01.sourceware.org (vm01.sourceware.org\n [IPv6:2620:52:6:3111::32])\n\t(using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)\n\t key-exchange x25519 server-signature ECDSA (secp384r1) server-digest SHA384)\n\t(No client certificate requested)\n\tby legolas.ozlabs.org (Postfix) with ESMTPS id 4g6CHy3MJPz1y1d\n\tfor <incoming@patchwork.ozlabs.org>; Fri, 01 May 2026 10:55:10 +1000 (AEST)","from vm01.sourceware.org (localhost [127.0.0.1])\n\tby sourceware.org (Postfix) with ESMTP id C99C8437423F\n\tfor <incoming@patchwork.ozlabs.org>; Fri,  1 May 2026 00:55:02 +0000 (GMT)","from mail-dl1-x124a.google.com (mail-dl1-x124a.google.com\n [IPv6:2607:f8b0:4864:20::124a])\n by sourceware.org (Postfix) with ESMTPS id 6D224437423E\n for <libc-alpha@sourceware.org>; Fri,  1 May 2026 00:54:41 +0000 (GMT)","by mail-dl1-x124a.google.com with SMTP id\n a92af1059eb24-12c8de02a4dso8642372c88.1\n for <libc-alpha@sourceware.org>; Thu, 30 Apr 2026 17:54:41 -0700 (PDT)"],"DKIM-Filter":["OpenDKIM Filter v2.11.0 sourceware.org C99C8437423F","OpenDKIM Filter v2.11.0 sourceware.org 6D224437423E"],"DMARC-Filter":"OpenDMARC Filter v1.4.2 sourceware.org 6D224437423E","ARC-Filter":"OpenARC Filter v1.0.0 sourceware.org 6D224437423E","ARC-Seal":"i=1; a=rsa-sha256; d=sourceware.org; s=key; t=1777596881; cv=none;\n b=Mc804kCXPWPDrAa12azWRTOWjyf2F/EJUIZtq5m41CpgVUaui6DUWBgTrCYI/a4rftecugTC0hmdQIY4yBjrl0v2Lbk1w3IbkR1jHAvh5S97ITGYg46zfAUwjggqpVdch9DDpwzqS+cPUcCWuCESizP6Fv5VGk4WJ04KdHMxDj8=","ARC-Message-Signature":"i=1; a=rsa-sha256; d=sourceware.org; s=key;\n t=1777596881; c=relaxed/simple;\n bh=HHvSmkbaA5/m8PnXiuBZp+XmLg5+xeDHeltF6rf2DmU=;\n h=DKIM-Signature:Date:Mime-Version:Message-ID:Subject:From:To;\n b=FSpYb7VQWzyVkiMBpELmzr0GFh687suPNIb/g7ZVqDNJHSecWH8QHLGyI4R4zRqSVwCkJD/pu6qKGo6n0NXzBws/fVeKGRV2HzEk5ikaJlhxwiN9yFhDFGDVHK7e1o8329wMYjs2E6SquNzFXG0lDQUvTXa+qxtnqQY1WimD3bc=","ARC-Authentication-Results":"i=1; server2.sourceware.org","DKIM-Signature":"v=1; a=rsa-sha256; c=relaxed/relaxed;\n d=google.com; s=20251104; t=1777596879; x=1778201679; darn=sourceware.org;\n h=cc:to:from:subject:message-id:mime-version:date:from:to:cc:subject\n :date:message-id:reply-to;\n bh=b5yZKL8sjcK/kfcVktd2iGJ/s3DmWyLXicGNZbLHLb8=;\n b=nQuck36H2X4D7AgyCEkfywzXfu8bhtb0k5xql6cmpXTnBplovSCS34K5GZa8DjSyvM\n 0J2Rajc13ISoOUpmDqojYCwdV/t06U4oU++GCtQCG1aBP2ExC4DgeoCslwqZXUNSoZMf\n gpiy38b1P3t7xtsmhk9XZRqZgutabcaPJy8Kra9Sk7eLenMbHE/W2ch4egaDoJ+8+eP1\n qHKS1iY2TMGzV9g9qOjao71l9ncI69KUur+16YfLQWBvDsmVyJOAhfhii/aazk88QI6P\n 6+4b4YJBQ6wj4RHfDVKo8rQu0IlRZuXXA+bQskeRyQj42eB8CrbNJYfDm9HJiy7EMp90\n CaXQ==","X-Google-DKIM-Signature":"v=1; a=rsa-sha256; c=relaxed/relaxed;\n d=1e100.net; s=20251104; t=1777596879; x=1778201679;\n h=cc:to:from:subject:message-id:mime-version:date:x-gm-message-state\n :from:to:cc:subject:date:message-id:reply-to;\n bh=b5yZKL8sjcK/kfcVktd2iGJ/s3DmWyLXicGNZbLHLb8=;\n b=KADM/P8V0GxX3pnsjDcXrfpStZ+7MRj2RHccvYabcxRVyo1PDoJJCRQ7chO1Pv6ODg\n NNO+9Lu+5fBkC9W0zjiEx37/RxJ9SJJO0Uvhi0i7+uNYdlqIn7hDtC1yRk20OQB/Rk7O\n RZiFKUqobZu1x+JKVoZeIU7iP3pXRR6vIi+q5gqU2Lupmr+/oFV1LvZ0Z34NDsvAaX8h\n 7NuhtTAgbLXo+pmBRTh6cvnmWLhQ+qa5MiIv7Q2ktZr6TjOdaKYVHcqsCNElvO3mo6bT\n 9gDcHL4GlgcCRcWG4dMXK83G7T8qdhtjvq4QSRO+/GOqJzhLVzGgKi5Qw8Qh/VjJ0OFS\n R2xQ==","X-Gm-Message-State":"AOJu0Yw5w3NhtuZ8Xh+/PEvEHAgwXPKSPx7PSsy05tdM/SHBziXDq7po\n 3Dl2PRHgt6jH34QOj1Vcc5acRg3PNwW2L4BHgkEi0EqucRBSZA/skKwAP9in3e7ip3FcFuXEpgk\n xmDS6dzs7IRASHZg6xYZph9u0EOl1ecBAtf6bM3XrlSxJIIsy8LQ+Lw8zejx1CI6EyXxj3BfLrW\n MTuJZDiMEP5STS8eRx0NZf9iGJ","X-Received":"from dlaj10.prod.google.com\n ([2002:a05:701b:280a:b0:12c:912f:7d3f])\n (user=pcc job=prod-delivery.src-stubby-dispatcher) by\n 2002:a05:7022:eacf:b0:12d:ea4f:99e0\n with SMTP id a92af1059eb24-12dea9b6679mr2833387c88.0.1777596878554; Thu, 30\n Apr 2026 17:54:38 -0700 (PDT)","Date":"Thu, 30 Apr 2026 17:54:28 -0700","Mime-Version":"1.0","X-Mailer":"git-send-email 2.54.0.545.g6539524ca2-goog","Message-ID":"<20260501005428.4105376-1-pcc@google.com>","Subject":"[PATCH] resolv,\n rt: Change some extern inline functions to static inline","From":"Peter Collingbourne <pcc@google.com>","To":"libc-alpha@sourceware.org","Cc":"Peter Collingbourne <pcc@google.com>","Content-Type":"text/plain; charset=\"UTF-8\"","X-BeenThere":"libc-alpha@sourceware.org","X-Mailman-Version":"2.1.30","Precedence":"list","List-Id":"Libc-alpha mailing list <libc-alpha.sourceware.org>","List-Unsubscribe":"<https://sourceware.org/mailman/options/libc-alpha>,\n <mailto:libc-alpha-request@sourceware.org?subject=unsubscribe>","List-Archive":"<https://sourceware.org/pipermail/libc-alpha/>","List-Post":"<mailto:libc-alpha@sourceware.org>","List-Help":"<mailto:libc-alpha-request@sourceware.org?subject=help>","List-Subscribe":"<https://sourceware.org/mailman/listinfo/libc-alpha>,\n <mailto:libc-alpha-request@sourceware.org?subject=subscribe>","Errors-To":"libc-alpha-bounces~incoming=patchwork.ozlabs.org@sourceware.org"},"content":"The following functions:\n\n__aio_create_helper_thread\n__aio_start_notify_thread\n__gai_create_helper_thread\n__gai_start_notify_thread\n\nare declared as extern inline, but no translation unit provides their\nreal definitions. This can lead to a link failure if the functions are\nnot inlined. Fix it by declaring them as static inline instead.\n---\n resolv/gai_misc.c                  | 2 +-\n rt/aio_misc.c                      | 2 +-\n sysdeps/mach/hurd/gai_misc.h       | 4 ++--\n sysdeps/nptl/gai_misc.h            | 4 ++--\n sysdeps/unix/sysv/linux/aio_misc.h | 4 ++--\n 5 files changed, 8 insertions(+), 8 deletions(-)","diff":"diff --git a/resolv/gai_misc.c b/resolv/gai_misc.c\nindex 5cf6d7c149..3f13dc4520 100644\n--- a/resolv/gai_misc.c\n+++ b/resolv/gai_misc.c\n@@ -28,7 +28,7 @@\n #ifndef gai_create_helper_thread\n # define gai_create_helper_thread __gai_create_helper_thread\n \n-extern inline int\n+static inline int\n __gai_create_helper_thread (pthread_t *threadp, void *(*tf) (void *),\n \t\t\t    void *arg)\n {\ndiff --git a/rt/aio_misc.c b/rt/aio_misc.c\nindex 724486e66f..639d693418 100644\n--- a/rt/aio_misc.c\n+++ b/rt/aio_misc.c\n@@ -33,7 +33,7 @@\n #ifndef aio_create_helper_thread\n # define aio_create_helper_thread __aio_create_helper_thread\n \n-extern inline int\n+static inline int\n __aio_create_helper_thread (pthread_t *threadp, void *(*tf) (void *), void *arg)\n {\n   pthread_attr_t attr;\ndiff --git a/sysdeps/mach/hurd/gai_misc.h b/sysdeps/mach/hurd/gai_misc.h\nindex 0237e59bf6..832c5ae1b6 100644\n--- a/sysdeps/mach/hurd/gai_misc.h\n+++ b/sysdeps/mach/hurd/gai_misc.h\n@@ -22,7 +22,7 @@\n #define gai_start_notify_thread __gai_start_notify_thread\n #define gai_create_helper_thread __gai_create_helper_thread\n \n-extern inline void\n+static inline void\n __gai_start_notify_thread (void)\n {\n   sigset_t ss;\n@@ -32,7 +32,7 @@ __gai_start_notify_thread (void)\n   assert_perror (sigerr);\n }\n \n-extern inline int\n+static inline int\n __gai_create_helper_thread (pthread_t *threadp, void *(*tf) (void *),\n \t\t\t    void *arg)\n {\ndiff --git a/sysdeps/nptl/gai_misc.h b/sysdeps/nptl/gai_misc.h\nindex 0416e271f4..8461fa88bf 100644\n--- a/sysdeps/nptl/gai_misc.h\n+++ b/sysdeps/nptl/gai_misc.h\n@@ -76,7 +76,7 @@\n #define gai_start_notify_thread __gai_start_notify_thread\n #define gai_create_helper_thread __gai_create_helper_thread\n \n-extern inline void\n+static inline void\n __gai_start_notify_thread (void)\n {\n   sigset_t ss;\n@@ -84,7 +84,7 @@ __gai_start_notify_thread (void)\n   (void) __pthread_sigmask (SIG_SETMASK, &ss, NULL);\n }\n \n-extern inline int\n+static inline int\n __gai_create_helper_thread (pthread_t *threadp, void *(*tf) (void *),\n \t\t\t    void *arg)\n {\ndiff --git a/sysdeps/unix/sysv/linux/aio_misc.h b/sysdeps/unix/sysv/linux/aio_misc.h\nindex 578ff1cf27..81a917f42d 100644\n--- a/sysdeps/unix/sysv/linux/aio_misc.h\n+++ b/sysdeps/unix/sysv/linux/aio_misc.h\n@@ -25,7 +25,7 @@\n # define aio_start_notify_thread __aio_start_notify_thread\n # define aio_create_helper_thread __aio_create_helper_thread\n \n-extern inline void\n+static inline void\n __aio_start_notify_thread (void)\n {\n   sigset_t ss;\n@@ -34,7 +34,7 @@ __aio_start_notify_thread (void)\n \t\t\t __NSIG_BYTES);\n }\n \n-extern inline int\n+static inline int\n __aio_create_helper_thread (pthread_t *threadp, void *(*tf) (void *),\n \t\t\t    void *arg)\n {\n","prefixes":[]}