From: Vineet Gupta <Vineet.Gupta1@synopsys.com>
To: Andrey Konovalov <andreyknvl@google.com>
Cc: linux-arch <linux-arch@vger.kernel.org>,
Kees Cook <keescook@chromium.org>, Arnd Bergmann <arnd@arndb.de>,
Peter Zijlstra <peterz@infradead.org>,
LKML <linux-kernel@vger.kernel.org>,
Aleksa Sarai <cyphar@cyphar.com>, Ingo Molnar <mingo@kernel.org>,
Khalid Aziz <khalid.aziz@oracle.com>,
Christian Brauner <christian.brauner@ubuntu.com>,
"linux-snps-arc@lists.infradead.org"
<linux-snps-arc@lists.infradead.org>,
Linus Torvalds <torvalds@linux-foundation.org>,
Andrew Morton <akpm@linux-foundation.org>
Subject: Re: [RFC 2/4] lib/strncpy_from_user: Remove redundant user space pointer range check
Date: Wed, 15 Jan 2020 23:00:17 +0000 [thread overview]
Message-ID: <ff24ea2b-e232-36a2-4e11-c89400feff45@synopsys.com> (raw)
In-Reply-To: <CAAeHK+zxVw6jOu-NzjR14U_i5cpDynE=OC3D5WswTvqT8o5NhQ@mail.gmail.com>
On 1/15/20 6:42 AM, Andrey Konovalov wrote:
>> - max_addr = user_addr_max();
>> - src_addr = (unsigned long)untagged_addr(src);
>
> If you end up changing this code, you need to keep the untagged_addr()
> logic, otherwise this breaks arm64 tagged address ABI [1].
It is moot point now, but fwiw untagged_addr() would not have been needed anymore
as it was only needed to compute the pointer difference which my patch got rid of.
>
> [1] https://www.kernel.org/doc/html/latest/arm64/tagged-address-abi.html
>
>> - if (likely(src_addr < max_addr)) {
>> - unsigned long max = max_addr - src_addr;
>> + kasan_check_write(dst, count);
>> + check_object_size(dst, count, false);
>> + if (user_access_begin(src, count)) {
WARNING: multiple messages have this Message-ID (diff)
From: Vineet Gupta <Vineet.Gupta1@synopsys.com>
To: Andrey Konovalov <andreyknvl@google.com>
Cc: linux-arch <linux-arch@vger.kernel.org>,
Kees Cook <keescook@chromium.org>, Arnd Bergmann <arnd@arndb.de>,
Khalid Aziz <khalid.aziz@oracle.com>,
Peter Zijlstra <peterz@infradead.org>,
LKML <linux-kernel@vger.kernel.org>,
Andrew Morton <akpm@linux-foundation.org>,
Aleksa Sarai <cyphar@cyphar.com>,
Christian Brauner <christian.brauner@ubuntu.com>,
"linux-snps-arc@lists.infradead.org"
<linux-snps-arc@lists.infradead.org>,
Linus Torvalds <torvalds@linux-foundation.org>,
Ingo Molnar <mingo@kernel.org>
Subject: Re: [RFC 2/4] lib/strncpy_from_user: Remove redundant user space pointer range check
Date: Wed, 15 Jan 2020 23:00:17 +0000 [thread overview]
Message-ID: <ff24ea2b-e232-36a2-4e11-c89400feff45@synopsys.com> (raw)
In-Reply-To: <CAAeHK+zxVw6jOu-NzjR14U_i5cpDynE=OC3D5WswTvqT8o5NhQ@mail.gmail.com>
On 1/15/20 6:42 AM, Andrey Konovalov wrote:
>> - max_addr = user_addr_max();
>> - src_addr = (unsigned long)untagged_addr(src);
>
> If you end up changing this code, you need to keep the untagged_addr()
> logic, otherwise this breaks arm64 tagged address ABI [1].
It is moot point now, but fwiw untagged_addr() would not have been needed anymore
as it was only needed to compute the pointer difference which my patch got rid of.
>
> [1] https://www.kernel.org/doc/html/latest/arm64/tagged-address-abi.html
>
>> - if (likely(src_addr < max_addr)) {
>> - unsigned long max = max_addr - src_addr;
>> + kasan_check_write(dst, count);
>> + check_object_size(dst, count, false);
>> + if (user_access_begin(src, count)) {
_______________________________________________
linux-snps-arc mailing list
linux-snps-arc@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-snps-arc
next prev parent reply other threads:[~2020-01-15 23:00 UTC|newest]
Thread overview: 44+ messages / expand[flat|nested] mbox.gz Atom feed top
2020-01-14 20:08 [RFC 0/4] Switching ARC to optimized generic strncpy_from_user Vineet Gupta
2020-01-14 20:08 ` Vineet Gupta
2020-01-14 20:08 ` Vineet Gupta
2020-01-14 20:08 ` [RFC 1/4] asm-generic/uaccess: don't define inline functions if noinline lib/* in use Vineet Gupta
2020-01-14 20:08 ` Vineet Gupta
2020-01-14 20:57 ` Arnd Bergmann
2020-01-14 20:57 ` Arnd Bergmann
2020-01-15 23:01 ` Vineet Gupta
2020-01-15 23:01 ` Vineet Gupta
2020-01-16 11:43 ` Arnd Bergmann
2020-01-16 11:43 ` Arnd Bergmann
2020-01-14 21:32 ` Linus Torvalds
2020-01-14 21:32 ` Linus Torvalds
2020-01-15 9:08 ` Arnd Bergmann
2020-01-15 9:08 ` Arnd Bergmann
2020-01-15 14:12 ` Al Viro
2020-01-15 14:12 ` Al Viro
2020-01-15 14:21 ` Arnd Bergmann
2020-01-15 14:21 ` Arnd Bergmann
2020-01-14 20:08 ` [RFC 2/4] lib/strncpy_from_user: Remove redundant user space pointer range check Vineet Gupta
2020-01-14 20:08 ` Vineet Gupta
2020-01-14 21:22 ` Linus Torvalds
2020-01-14 21:22 ` Linus Torvalds
2020-01-14 21:52 ` Vineet Gupta
2020-01-14 21:52 ` Vineet Gupta
2020-01-14 23:46 ` Al Viro
2020-01-14 23:46 ` Al Viro
2020-01-15 14:42 ` Andrey Konovalov
2020-01-15 14:42 ` Andrey Konovalov
2020-01-15 14:42 ` Andrey Konovalov
2020-01-15 23:00 ` Vineet Gupta [this message]
2020-01-15 23:00 ` Vineet Gupta
2020-01-14 20:08 ` [RFC 3/4] ARC: uaccess: remove noinline variants of __strncpy_from_user() and friends Vineet Gupta
2020-01-14 20:08 ` Vineet Gupta
2020-01-14 20:08 ` [RFC 4/4] ARC: uaccess: use optimized generic __strnlen_user/__strncpy_from_user Vineet Gupta
2020-01-14 20:08 ` Vineet Gupta
2020-01-14 20:42 ` Arnd Bergmann
2020-01-14 20:42 ` Arnd Bergmann
2020-01-14 21:36 ` Vineet Gupta
2020-01-14 21:36 ` Vineet Gupta
2020-01-14 21:49 ` Linus Torvalds
2020-01-14 21:49 ` Linus Torvalds
2020-01-14 22:14 ` Vineet Gupta
2020-01-14 22:14 ` Vineet Gupta
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=ff24ea2b-e232-36a2-4e11-c89400feff45@synopsys.com \
--to=vineet.gupta1@synopsys.com \
--cc=akpm@linux-foundation.org \
--cc=andreyknvl@google.com \
--cc=arnd@arndb.de \
--cc=christian.brauner@ubuntu.com \
--cc=cyphar@cyphar.com \
--cc=keescook@chromium.org \
--cc=khalid.aziz@oracle.com \
--cc=linux-arch@vger.kernel.org \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-snps-arc@lists.infradead.org \
--cc=mingo@kernel.org \
--cc=peterz@infradead.org \
--cc=torvalds@linux-foundation.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.