From: Catalin Marinas <catalin.marinas@arm.com>
To: Macpaul Lin <macpaul.lin@mediatek.com>
Cc: Sasha Levin <sashal@kernel.org>, Shen Jing <jingx.shen@intel.com>,
CC Hwang <cc.hwang@mediatek.com>,
Mediatek WSD Upstream <wsd_upstream@mediatek.com>,
Jerry Zhang <zhangjerry@google.com>,
andreyknvl@google.com, linux-usb@vger.kernel.org,
Loda Chou <loda.chou@mediatek.com>,
linux-kernel@vger.kernel.org, stable@vger.kernel.org,
Andrzej Pietrasiewicz <andrzej.p@collabora.com>,
John Stultz <john.stultz@linaro.org>,
Al Viro <viro@zeniv.linux.org.uk>,
Vincent Pelletier <plr.vincent@gmail.com>,
Matthias Brugger <matthias.bgg@gmail.com>,
linux-mediatek@lists.infradead.org,
linux-arm-kernel@lists.infradead.org
Subject: Re: [PATCH v3] usb: gadget: f_fs: try to fix AIO issue under ARM 64 bit TAGGED mode
Date: Tue, 25 Feb 2020 11:52:41 +0000 [thread overview]
Message-ID: <20200225115241.GB2410978@arrakis.emea.arm.com> (raw)
In-Reply-To: <1582627315-21123-1-git-send-email-macpaul.lin@mediatek.com>
On Tue, Feb 25, 2020 at 06:41:55PM +0800, Macpaul Lin wrote:
> diff --git a/drivers/usb/gadget/function/f_fs.c b/drivers/usb/gadget/function/f_fs.c
> index ce1d023..728c260 100644
> --- a/drivers/usb/gadget/function/f_fs.c
> +++ b/drivers/usb/gadget/function/f_fs.c
> @@ -35,6 +35,7 @@
> #include <linux/mmu_context.h>
> #include <linux/poll.h>
> #include <linux/eventfd.h>
> +#include <linux/thread_info.h>
>
> #include "u_fs.h"
> #include "u_f.h"
> @@ -826,6 +827,10 @@ static void ffs_user_copy_worker(struct work_struct *work)
> if (io_data->read && ret > 0) {
> mm_segment_t oldfs = get_fs();
>
> +#if defined(CONFIG_ARM64)
> + if (IS_ENABLED(CONFIG_ARM64_TAGGED_ADDR_ABI))
> + set_thread_flag(TIF_TAGGED_ADDR);
> +#endif
> set_fs(USER_DS);
> use_mm(io_data->mm);
> ret = ffs_copy_to_iter(io_data->buf, ret, &io_data->data);
I really don't think that's the correct fix. The TIF_TAGGED_ADDR is a
per-thread property and not really compatible with use_mm(). We've had
tagged pointers in arm64 user-space since day 0 and access_ok() would
have prevented them, so this config is not something new. For some
reason, adb now passes them to the kernel (presumably because user-space
makes more use of them). If you have strong reasons not to fix it in
adb, the next best thing may be to untag the addresses in the usb gadget
driver.
--
Catalin
_______________________________________________
linux-arm-kernel mailing list
linux-arm-kernel@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-arm-kernel
next prev parent reply other threads:[~2020-02-25 11:52 UTC|newest]
Thread overview: 12+ messages / expand[flat|nested] mbox.gz Atom feed top
2020-02-23 15:49 [PATCH v2] usb: gadget: f_fs: try to fix AIO issue under ARM 64 bit TAGGED mode Macpaul Lin
2020-02-25 8:12 ` Peter Chen
2020-02-25 10:41 ` [PATCH v3] " Macpaul Lin
2020-02-25 11:07 ` Miles Chen
2020-02-25 11:52 ` Catalin Marinas [this message]
2020-02-26 12:01 ` [PATCH v4] " Macpaul Lin
2020-02-27 9:55 ` Catalin Marinas
2020-02-27 10:28 ` Macpaul Lin
2020-02-28 16:48 ` Catalin Marinas
2020-03-01 3:20 ` Macpaul Lin
2020-03-02 16:19 ` Catalin Marinas
[not found] ` <CAFKCwrj-0aQN_cUxf8=h7AbfS_rLEwxqePZN2kGHZxgWi2=ncw@mail.gmail.com>
2020-03-04 2:42 ` Macpaul Lin
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=20200225115241.GB2410978@arrakis.emea.arm.com \
--to=catalin.marinas@arm.com \
--cc=andreyknvl@google.com \
--cc=andrzej.p@collabora.com \
--cc=cc.hwang@mediatek.com \
--cc=jingx.shen@intel.com \
--cc=john.stultz@linaro.org \
--cc=linux-arm-kernel@lists.infradead.org \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-mediatek@lists.infradead.org \
--cc=linux-usb@vger.kernel.org \
--cc=loda.chou@mediatek.com \
--cc=macpaul.lin@mediatek.com \
--cc=matthias.bgg@gmail.com \
--cc=plr.vincent@gmail.com \
--cc=sashal@kernel.org \
--cc=stable@vger.kernel.org \
--cc=viro@zeniv.linux.org.uk \
--cc=wsd_upstream@mediatek.com \
--cc=zhangjerry@google.com \
/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 NNTP newsgroup(s).