public inbox for libc-alpha@sourceware.org
 help / color / mirror / Atom feed
From: "Frédéric Bérat" <fberat@redhat.com>
To: libc-alpha@sourceware.org
Cc: siddhesh@gotplt.org, fberat@redhat.com
Subject: [PATCH v4 00/15] Fix warn unused result
Date: Fri, 28 Apr 2023 14:21:27 +0200	[thread overview]
Message-ID: <20230428122142.928135-1-fberat@redhat.com> (raw)
In-Reply-To: <20230418121130.844302-1-fberat@redhat.com>

Hello,

Enabling _FORTIFY_SOURCE on Glibc itself implies that some function get the
__wur macro enabed.
This leads to build failures when -Werror is set.

I went for multiple patches for these fixes, a big one that cover the tests,
and then separate one for the other ones, assuming they may need to get a
closer look at.

While most of the changes look trivial, decision I made on how to fix them may
be open to debate, e.g. the additional checks may lead to failures while they
weren't earlier, some other have no impact while it may be useful to have one.

Feedback is therefore highly appreciated.

Fred.

Changes since v1:
 - "tests: fix warn unused result" has been split into several sub-patches. New
   x-variant of functions have been created when necessary.
 - "inet/rcmd.c" is removed has it has been merged upstream.
 - catgets/gencat.c:
   - introduced a static write_all routine, that mimics support/xwrite
   - fixed review findings (declaration of array_size where defined)
 - locale/programs/locarchive.c: untouched (I forgot it)
 - malloc/{memusage.c,memusagestat.c}: introduced write_all/read_all functions
 - nptl_db/thread_dbP.h: fixed missing white space.
 - sunrpc/netname.c: fixed missing whitespace, and "return 0;" indent.
 - sysdeps/pthread/eintr.c: Added comment on why the if statement is used.

Changes since v2:
 - Rebased on master
 - catgets/gencat.c: Don't use errno if write returns 0.
 - locale/programs/locarchive.c: Freeing normalized_codeset before returning.
 - malloc/{memusage.c,memusagestat.c}: Don't use errno if write returns 0.
 - tests: replace read by xread:
   - Add missing xunistd.h includes
   - Add libsupport to tst-fini1mod.so
 - tests: replace fread by xfread:
   - Fixed xfread prototype
   - Add missing xstdio.h include

Changes since v3:
 - Rebased on master

---
Frédéric Bérat (15):
  catgets/gencat.c: fix warn unused result
  locale/programs/locarchive.c: fix warn unused result
  malloc/{memusage.c,memusagestat.c}: fix warn unused result
  nptl_db/thread_dbP.h: fix warn unused result
  sunrpc/netname.c: fix warn unused result
  sysdeps/pthread/eintr.c: fix warn unused result
  tests: fix warn unused result on asprintf calls
  tests: replace write by xwrite
  tests: replace read by xread
  tests: replace system by xsystem
  tests: replace fread by xfread
  tests: replace ftruncate by xftruncate
  tests: replace fgets by xfgets
  tests: Replace various function calls with their x variant
  tests: fix warn unused results

 argp/argp-test.c               |  8 +++--
 assert/test-assert-perr.c      |  8 +++--
 assert/test-assert.c           |  8 +++--
 catgets/gencat.c               | 41 +++++++++++++++++++-------
 crypt/cert.c                   |  6 +++-
 dirent/tst-fdopendir.c         |  7 +++--
 elf/tst-stackguard1.c          |  2 +-
 io/tst-copy_file_range.c       |  2 +-
 io/tst-faccessat.c             |  3 +-
 io/tst-fchmodat.c              |  3 +-
 io/tst-fchownat.c              |  3 +-
 io/tst-fstatat.c               |  3 +-
 io/tst-futimesat.c             |  3 +-
 io/tst-linkat.c                |  3 +-
 io/tst-openat.c                |  3 +-
 io/tst-renameat.c              |  3 +-
 io/tst-symlinkat.c             |  3 +-
 io/tst-unlinkat.c              |  3 +-
 libio/bug-fseek.c              |  7 +++--
 libio/bug-mmap-fflush.c        |  7 +++--
 libio/bug-ungetc.c             |  4 ++-
 libio/bug-ungetc3.c            |  4 ++-
 libio/bug-ungetc4.c            |  4 ++-
 libio/bug-wfflush.c            |  4 ++-
 libio/bug-wsetpos.c            |  4 ++-
 locale/programs/locarchive.c   | 24 ++++++++++-----
 malloc/memusage.c              | 53 ++++++++++++++++++++++++++--------
 malloc/memusagestat.c          | 48 +++++++++++++++++++++++++++---
 misc/tst-efgcvt-template.c     |  4 +--
 misc/tst-error1.c              |  2 +-
 nptl/tst-cancel7.c             |  3 +-
 nptl/tst-cleanup4.c            |  4 ++-
 nptl/tst-stackguard1.c         |  6 ++--
 nptl/tst-tls3.c                |  2 ++
 nptl/tst-tls3mod.c             |  5 ++--
 nptl_db/thread_dbP.h           |  2 +-
 nss/tst-nss-db-endpwent.c      |  3 +-
 nss/tst-reload2.c              |  6 +++-
 posix/tst-chmod.c              |  9 ++++--
 posix/tst-execl2.c             |  8 ++---
 posix/tst-execle2.c            |  8 ++---
 posix/tst-execlp2.c            | 11 ++-----
 posix/tst-execv2.c             |  8 ++---
 posix/tst-execve2.c            |  8 ++---
 posix/tst-execvp2.c            | 17 +++--------
 posix/tst-getopt-cancel.c      |  3 +-
 posix/tst-nice.c               |  3 +-
 posix/wordexp-test.c           | 12 ++++++--
 rt/tst-cpuclock2.c             |  4 ++-
 rt/tst-cputimer1.c             |  4 ++-
 rt/tst-cputimer2.c             |  4 ++-
 rt/tst-cputimer3.c             |  4 ++-
 stdio-common/bug12.c           | 12 ++++----
 stdio-common/bug19.c           |  9 ++++--
 stdio-common/bug3.c            |  4 ++-
 stdio-common/bug4.c            |  4 ++-
 stdio-common/bug5.c            |  4 ++-
 stdio-common/bug6.c            |  8 ++---
 stdio-common/test-fwrite.c     |  4 ++-
 stdio-common/test_rdwr.c       | 11 +++----
 stdio-common/tst-cookie.c      |  5 +++-
 stdio-common/tst-fmemopen3.c   |  4 ++-
 stdio-common/tst-fseek.c       |  5 ++--
 stdio-common/tst-perror.c      |  3 +-
 stdio-common/tstscanf.c        | 14 +++++++--
 stdlib/test-canon.c            | 25 +++++++++++++---
 sunrpc/netname.c               |  3 +-
 support/Makefile               |  4 +++
 support/test-container.c       | 15 +++++-----
 support/xfgets.c               | 32 ++++++++++++++++++++
 support/xfread.c               | 39 +++++++++++++++++++++++++
 support/xread.c                | 36 +++++++++++++++++++++++
 support/xstdio.h               |  2 ++
 support/xstdlib.h              | 31 ++++++++++++++++++++
 support/xsystem.c              | 29 +++++++++++++++++++
 support/xunistd.h              |  3 ++
 sysdeps/pthread/Makefile       |  2 +-
 sysdeps/pthread/eintr.c        |  6 ++--
 sysdeps/pthread/tst-cancel11.c |  4 ++-
 sysdeps/pthread/tst-cancel16.c |  6 +++-
 sysdeps/pthread/tst-cancel20.c | 10 ++-----
 sysdeps/pthread/tst-cancel21.c |  9 ++----
 sysdeps/pthread/tst-cancel4.c  |  6 ++--
 sysdeps/pthread/tst-cancel6.c  |  3 +-
 sysdeps/pthread/tst-cond18.c   |  4 ++-
 sysdeps/pthread/tst-fini1mod.c |  4 ++-
 sysdeps/pthread/tst-flock1.c   |  3 +-
 sysdeps/pthread/tst-flock2.c   |  3 +-
 sysdeps/pthread/tst-key1.c     | 11 +++----
 sysdeps/pthread/tst-signal1.c  |  3 +-
 sysdeps/pthread/tst-signal2.c  |  3 +-
 sysdeps/pthread/tst-timer.c    |  3 +-
 time/tst-cpuclock1.c           |  4 ++-
 93 files changed, 587 insertions(+), 214 deletions(-)
 create mode 100644 support/xfgets.c
 create mode 100644 support/xfread.c
 create mode 100644 support/xread.c
 create mode 100644 support/xstdlib.h
 create mode 100644 support/xsystem.c

-- 
2.39.2


  parent reply	other threads:[~2023-04-28 12:35 UTC|newest]

Thread overview: 109+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2023-04-18 12:11 [PATCH 0/8] " Frédéric Bérat
2023-04-18 12:11 ` [PATCH 1/8] tests: fix " Frédéric Bérat
2023-04-18 12:23   ` Siddhesh Poyarekar
2023-04-28 12:21   ` [PATCH v4 07/15] tests: fix warn unused result on asprintf calls Frédéric Bérat
2023-05-25  1:07     ` Siddhesh Poyarekar
2023-05-31 14:36       ` Frederic Berat
2023-04-28 12:21   ` [PATCH v4 08/15] tests: replace write by xwrite Frédéric Bérat
2023-05-25  1:16     ` Siddhesh Poyarekar
2023-06-01 16:39       ` Siddhesh Poyarekar
2023-04-28 12:21   ` [PATCH v4 09/15] tests: replace read by xread Frédéric Bérat
2023-04-28 12:21   ` [PATCH v4 10/15] tests: replace system by xsystem Frédéric Bérat
2023-05-25  1:22     ` Siddhesh Poyarekar
2023-04-28 12:21   ` [PATCH v4 11/15] tests: replace fread by xfread Frédéric Bérat
2023-04-28 12:21   ` [PATCH v4 12/15] tests: replace ftruncate by xftruncate Frédéric Bérat
2023-05-25  1:25     ` Siddhesh Poyarekar
2023-06-01 16:42       ` Siddhesh Poyarekar
2023-04-28 12:21   ` [PATCH v4 13/15] tests: replace fgets by xfgets Frédéric Bérat
2023-04-28 12:21   ` [PATCH v4 14/15] tests: Replace various function calls with their x variant Frédéric Bérat
2023-05-25  1:29     ` Siddhesh Poyarekar
2023-05-25 16:10       ` Frederic Berat
2023-04-28 12:21   ` [PATCH v4 15/15] tests: fix warn unused results Frédéric Bérat
2023-05-25  1:35     ` Siddhesh Poyarekar
2023-06-01 14:27   ` [PATCH v5 04/12] tests: fix warn unused result on asprintf calls Frédéric Bérat
2023-06-01 16:52     ` Siddhesh Poyarekar
2023-06-01 14:27   ` [PATCH v5 07/12] tests: replace system by xsystem Frédéric Bérat
2023-06-01 16:56     ` Siddhesh Poyarekar
2023-06-01 14:27   ` [PATCH v5 12/12] tests: fix warn unused results Frédéric Bérat
2023-06-01 16:57     ` Siddhesh Poyarekar
2023-04-18 12:11 ` [PATCH 2/8] catgets/gencat.c: fix warn unused result Frédéric Bérat
2023-04-18 12:36   ` Siddhesh Poyarekar
2023-04-28 12:21   ` [PATCH v4 01/15] " Frédéric Bérat
2023-05-24 22:47     ` Siddhesh Poyarekar
2023-06-01 14:27   ` [PATCH v5 01/12] " Frédéric Bérat
2023-06-01 16:47     ` Siddhesh Poyarekar
2023-04-18 12:11 ` [PATCH 3/8] inet/rcmd.c: " Frédéric Bérat
2023-04-18 12:37   ` Siddhesh Poyarekar
2023-04-18 13:40   ` Andreas Schwab
2023-04-18 13:50     ` Siddhesh Poyarekar
2023-04-18 12:11 ` [PATCH 4/8] locale/programs/locarchive.c: " Frédéric Bérat
2023-04-18 12:43   ` Siddhesh Poyarekar
2023-04-28 12:21   ` [PATCH v4 02/15] " Frédéric Bérat
2023-05-24 22:49     ` Siddhesh Poyarekar
2023-06-01 14:27   ` [PATCH v5 02/12] malloc/{memusage.c,memusagestat.c}: " Frédéric Bérat
2023-06-01 16:49     ` Siddhesh Poyarekar
2023-04-18 12:11 ` [PATCH 5/8] " Frédéric Bérat
2023-04-18 12:47   ` [PATCH 5/8] malloc/{memusage.c, memusagestat.c}: " Siddhesh Poyarekar
2023-04-28 12:21   ` [PATCH v4 03/15] malloc/{memusage.c,memusagestat.c}: " Frédéric Bérat
2023-05-25  0:50     ` Siddhesh Poyarekar
2023-06-01 15:55       ` [PATCH] Move {read,write}_all functions to a dedicated header Frédéric Bérat
2023-06-01 17:07         ` Siddhesh Poyarekar
2023-06-02  6:10           ` Frederic Berat
2023-06-02 10:01             ` Siddhesh Poyarekar
2023-04-18 12:11 ` [PATCH 6/8] nptl_db/thread_dbP.h: fix warn unused result Frédéric Bérat
2023-04-18 12:49   ` Siddhesh Poyarekar
2023-04-18 12:51     ` Siddhesh Poyarekar
2023-04-28 12:21   ` [PATCH v4 04/15] " Frédéric Bérat
2023-05-25  0:51     ` Siddhesh Poyarekar
2023-05-25  1:52       ` Siddhesh Poyarekar
2023-06-01 14:27   ` [PATCH v5 03/12] " Frédéric Bérat
2023-06-01 16:49     ` Siddhesh Poyarekar
2023-04-18 12:11 ` [PATCH 7/8] sunrpc/netname.c: " Frédéric Bérat
2023-04-18 12:51   ` Siddhesh Poyarekar
2023-04-28 12:21   ` [PATCH v4 05/15] " Frédéric Bérat
2023-05-25  0:53     ` Siddhesh Poyarekar
2023-04-18 12:11 ` [PATCH 8/8] sysdeps/pthread/eintr.c: " Frédéric Bérat
2023-04-18 12:54   ` Siddhesh Poyarekar
2023-04-28 12:21   ` [PATCH v4 06/15] " Frédéric Bérat
2023-05-25  0:59     ` Siddhesh Poyarekar
2023-04-28 12:21 ` Frédéric Bérat [this message]
2023-05-25  1:53   ` [PATCH v4 00/15] Fix " Siddhesh Poyarekar
2023-06-02 15:28 ` [PATCH v6 0/7] " Frédéric Bérat
2023-06-02 15:28   ` [PATCH v6 1/7] tests: fix warn unused result on asprintf calls Frédéric Bérat
2023-06-06  6:18     ` Siddhesh Poyarekar
2023-06-02 15:28   ` [PATCH v6 2/7] tests: replace read by xread Frédéric Bérat
2023-06-06  6:21     ` Siddhesh Poyarekar
2023-06-06  8:00       ` Frederic Berat
2023-06-12 14:22         ` Siddhesh Poyarekar
2023-06-07 19:04     ` Frederic Berat
2023-06-02 15:28   ` [PATCH v6 3/7] tests: replace system by xsystem Frédéric Bérat
2023-06-06 12:17     ` Siddhesh Poyarekar
2023-06-02 15:28   ` [PATCH v6 4/7] tests: replace fread by xfread Frédéric Bérat
2023-06-06 12:18     ` Siddhesh Poyarekar
2023-06-07 19:03     ` Frederic Berat
2023-06-02 15:28   ` [PATCH v6 5/7] tests: replace fgets by xfgets Frédéric Bérat
2023-06-06 12:20     ` Siddhesh Poyarekar
2023-06-08  5:50     ` Maxim Kuvyrkov
2023-06-08  6:57       ` Frederic Berat
2023-06-02 15:28   ` [PATCH v6 6/7] tests: Replace various function calls with their x variant Frédéric Bérat
2023-06-06 12:20     ` Siddhesh Poyarekar
2023-06-02 15:28   ` [PATCH v6 7/7] Move {read,write}_all functions to a dedicated header Frédéric Bérat
2023-06-06 12:21     ` Siddhesh Poyarekar
2023-06-12 15:18 ` [PATCH v7 0/4] Fix warn unused result Frédéric Bérat
2023-06-12 15:18   ` [PATCH v7 1/4] tests: replace read by xread Frédéric Bérat
2023-06-12 16:57     ` Joseph Myers
2023-06-13 14:22       ` Frederic Berat
2023-06-14  8:52     ` [PATCH v8 1/2] " Frédéric Bérat
2023-06-14 11:51       ` Siddhesh Poyarekar
2023-06-12 15:18   ` [PATCH v7 2/4] tests: replace system by xsystem Frédéric Bérat
2023-06-13 14:10     ` Siddhesh Poyarekar
2023-06-13 14:13     ` Adhemerval Zanella Netto
2023-06-13 14:16       ` Siddhesh Poyarekar
2023-06-14  8:52     ` [PATCH 2/2] " Frédéric Bérat
2023-06-14 11:53       ` Siddhesh Poyarekar
2023-06-12 15:18   ` [PATCH v7 3/4] tests: replace fread by xfread Frédéric Bérat
2023-06-13 23:57     ` Siddhesh Poyarekar
2023-06-12 15:18   ` [PATCH v7 4/4] tests: replace fgets by xfgets Frédéric Bérat
2023-06-13 12:23     ` Siddhesh Poyarekar
2023-06-13 18:25       ` Joseph Myers
2023-06-13 23:56         ` Siddhesh Poyarekar

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20230428122142.928135-1-fberat@redhat.com \
    --to=fberat@redhat.com \
    --cc=libc-alpha@sourceware.org \
    --cc=siddhesh@gotplt.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).