All of lore.kernel.org
 help / color / mirror / Atom feed
From: Linus Torvalds <torvalds@linux-foundation.org>
To: Tejun Heo <tj@kernel.org>
Cc: Linux Kernel Mailing List <linux-kernel@vger.kernel.org>,
	Li Zefan <lizefan@huawei.com>,
	Johannes Weiner <hannes@cmpxchg.org>,
	cgroups <cgroups@vger.kernel.org>
Subject: Re: [GIT PULL] cgroup fixes for v4.15-rc7
Date: Mon, 8 Jan 2018 11:41:01 -0800	[thread overview]
Message-ID: <CA+55aFyQu8wTOJ8HdUjRA2NnLLdXRPvPyEyaws=5VULVJrDSxg@mail.gmail.com> (raw)
In-Reply-To: <20180108192801.GZ3668920@devbig577.frc2.facebook.com>

On Mon, Jan 8, 2018 at 11:28 AM, Tejun Heo <tj@kernel.org> wrote:
>
> Dang, I was reading the different str*cpy() functions and suggested
> strscpy() and then forgot about it and blindly applied strlcpy()
> blindly after the build warning report.  It'd be great to weed out the
> useless ones.  These are places where truncation is fine.  Would the
> right thing to do be adding (void) in front, which is kinda ugly?

Yeah, I don't know. The actual code looks fine, and I pulled it, but I
really hate strlcpy().

Having us have extra warnings for strscpy() that turns people off from
using the right function is all kinds of sad.

I do think KASAN was unhappy about strscpy() too, because of the
word-at-a-time optimization (even if that one is very careful to not
cross pages etc).

Ho humm. I don't know what the right fix is. But I do suspect we
could/should just remove the __must_check from strscpy(), because one
of the points of that function really is that it always does the right
thing regardless of what you pass into it.

But some people absolutely love those idiotic warnings, even when they
demonstrably result in people writing worse code due to them.

Because "not checking error returns is a bug". Bah, humbug.

If just removing the __must_check makes cgroup happy, I would suggest
you send me a patch with that removal and the strlcpy turned back into
strscpy. Because I definitely _will_ apply such a patch.

                Linus

  reply	other threads:[~2018-01-08 19:42 UTC|newest]

Thread overview: 17+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2018-01-08 14:52 [GIT PULL] cgroup fixes for v4.15-rc7 Tejun Heo
2018-01-08 19:20 ` Linus Torvalds
2018-01-08 19:20   ` Linus Torvalds
2018-01-08 19:23   ` Linus Torvalds
2018-01-08 19:28     ` Tejun Heo
2018-01-08 19:28       ` Tejun Heo
2018-01-08 19:41       ` Linus Torvalds [this message]
2018-01-09 15:21         ` [PATCH] string: drop __must_check from strscpy() and restore strscpy() usages in cgroup Tejun Heo
2018-01-09 15:21           ` Tejun Heo
2018-01-12 19:38           ` Tejun Heo
2018-01-19 16:50           ` Tejun Heo
2018-01-19 16:50             ` Tejun Heo
2018-01-19 17:27             ` Linus Torvalds
2018-01-19 17:27               ` Linus Torvalds
2018-01-19 17:31               ` Tejun Heo
2018-01-19 17:35                 ` Linus Torvalds
2018-01-19 17:35                   ` Linus Torvalds

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='CA+55aFyQu8wTOJ8HdUjRA2NnLLdXRPvPyEyaws=5VULVJrDSxg@mail.gmail.com' \
    --to=torvalds@linux-foundation.org \
    --cc=cgroups@vger.kernel.org \
    --cc=hannes@cmpxchg.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=lizefan@huawei.com \
    --cc=tj@kernel.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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.