From: Alex Elder <elder@linaro.org>
To: Vadym Kochan <vadym.kochan@plvision.eu>,
Alex Elder <elder@kernel.org>,
"David S. Miller" <davem@davemloft.net>,
Jakub Kicinski <kuba@kernel.org>,
netdev@vger.kernel.org
Cc: linux-kernel@vger.kernel.org
Subject: Re: [RFT net] net: ipa: fix u32_replace_bits by u32p_xxx version
Date: Wed, 9 Sep 2020 06:53:17 -0500 [thread overview]
Message-ID: <030185d3-8401-dd2f-8981-9dfe2239866a@linaro.org> (raw)
In-Reply-To: <20200908143237.8816-1-vadym.kochan@plvision.eu>
On 9/8/20 9:32 AM, Vadym Kochan wrote:
> Looks like u32p_replace_bits() should be used instead of
> u32_replace_bits() which does not modifies the value but returns the
> modified version.
>
> Fixes: 2b9feef2b6c2 ("soc: qcom: ipa: filter and routing tables")
> Signed-off-by: Vadym Kochan <vadym.kochan@plvision.eu>
You are correct! Thank you for finding this.
Your fix is good, and I have now tested it and verified it
works as desired.
FYI, this is currently used only for the SDM845 platform. It turns
out the register values (route and filter hash config) that are read
and intended to be updated always have value 0, so (fortunately) your
change has no effect there.
Nevertheless, you have fixed this bug and I appreciate it.
Reviewed-by: Alex Elder <elder@linaro.org>
> ---
> Found it while grepping of u32_replace_bits() usage and
> replaced it w/o testing.
>
> drivers/net/ipa/ipa_table.c | 4 ++--
> 1 file changed, 2 insertions(+), 2 deletions(-)
>
> diff --git a/drivers/net/ipa/ipa_table.c b/drivers/net/ipa/ipa_table.c
> index 2098ca2f2c90..b3790aa952a1 100644
> --- a/drivers/net/ipa/ipa_table.c
> +++ b/drivers/net/ipa/ipa_table.c
> @@ -521,7 +521,7 @@ static void ipa_filter_tuple_zero(struct ipa_endpoint *endpoint)
> val = ioread32(endpoint->ipa->reg_virt + offset);
>
> /* Zero all filter-related fields, preserving the rest */
> - u32_replace_bits(val, 0, IPA_REG_ENDP_FILTER_HASH_MSK_ALL);
> + u32p_replace_bits(&val, 0, IPA_REG_ENDP_FILTER_HASH_MSK_ALL);
>
> iowrite32(val, endpoint->ipa->reg_virt + offset);
> }
> @@ -573,7 +573,7 @@ static void ipa_route_tuple_zero(struct ipa *ipa, u32 route_id)
> val = ioread32(ipa->reg_virt + offset);
>
> /* Zero all route-related fields, preserving the rest */
> - u32_replace_bits(val, 0, IPA_REG_ENDP_ROUTER_HASH_MSK_ALL);
> + u32p_replace_bits(&val, 0, IPA_REG_ENDP_ROUTER_HASH_MSK_ALL);
>
> iowrite32(val, ipa->reg_virt + offset);
> }
>
next prev parent reply other threads:[~2020-09-09 12:17 UTC|newest]
Thread overview: 4+ messages / expand[flat|nested] mbox.gz Atom feed top
2020-09-08 14:32 Vadym Kochan
2020-09-09 11:53 ` Alex Elder [this message]
2020-09-09 12:02 ` Vadym Kochan
2020-09-09 12:04 ` Alex Elder
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=030185d3-8401-dd2f-8981-9dfe2239866a@linaro.org \
--to=elder@linaro.org \
--cc=davem@davemloft.net \
--cc=elder@kernel.org \
--cc=kuba@kernel.org \
--cc=linux-kernel@vger.kernel.org \
--cc=netdev@vger.kernel.org \
--cc=vadym.kochan@plvision.eu \
/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
all inboxes | Powered by JetHome®