From: Jacob Keller <jacob.e.keller@intel.com>
To: intel-wired-lan@osuosl.org
Subject: [Intel-wired-lan] [PATCH 16/19] fm10k: cast page_addr to u8 * when incrementing it
Date: Mon, 8 Jul 2019 16:12:33 -0700 [thread overview]
Message-ID: <20190708231236.20516-17-jacob.e.keller@intel.com> (raw)
In-Reply-To: <20190708231236.20516-1-jacob.e.keller@intel.com>
The page_addr variable is a void pointer. Incrementing it before calling
prefetch is technically undefined. Fix this by casting it to a u8*
pointer before incrementing it. This ensures that we increment the
pointer value in byte units, instead of relying on this undefined
behavior.
This was detected by cppcheck, and resolves the following warning
produced by that tool:
[fm10k_main.c:328]: (portability) 'page_addr' is of type 'void *'. When
using void pointers in calculations, the behaviour is undefined.
Signed-off-by: Jacob Keller <jacob.e.keller@intel.com>
---
drivers/net/ethernet/intel/fm10k/fm10k_main.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/drivers/net/ethernet/intel/fm10k/fm10k_main.c b/drivers/net/ethernet/intel/fm10k/fm10k_main.c
index 3bacf35fbfad..cf87812bdf4a 100644
--- a/drivers/net/ethernet/intel/fm10k/fm10k_main.c
+++ b/drivers/net/ethernet/intel/fm10k/fm10k_main.c
@@ -315,7 +315,7 @@ static struct sk_buff *fm10k_fetch_rx_buffer(struct fm10k_ring *rx_ring,
/* prefetch first cache line of first page */
prefetch(page_addr);
#if L1_CACHE_BYTES < 128
- prefetch(page_addr + L1_CACHE_BYTES);
+ prefetch((void *)((u8 *)page_addr + L1_CACHE_BYTES));
#endif
/* allocate a skb to store the frags */
--
2.22.0.214.g8dca754b1e87
next prev parent reply other threads:[~2019-07-08 23:12 UTC|newest]
Thread overview: 39+ messages / expand[flat|nested] mbox.gz Atom feed top
2019-07-08 23:12 [Intel-wired-lan] [PATCH 00/19] cleanup cppcheck warnings for fm10k driver Jacob Keller
2019-07-08 23:12 ` [Intel-wired-lan] [PATCH 01/19] fm10k: reduce scope of the err variable Jacob Keller
2019-07-12 17:59 ` Bowers, AndrewX
2019-07-08 23:12 ` [Intel-wired-lan] [PATCH 02/19] fm10k: reduce scope of *p local variable Jacob Keller
2019-07-12 17:59 ` Bowers, AndrewX
2019-07-08 23:12 ` [Intel-wired-lan] [PATCH 03/19] fm10k: reduce the scope of qv " Jacob Keller
2019-07-12 18:00 ` Bowers, AndrewX
2019-07-08 23:12 ` [Intel-wired-lan] [PATCH 04/19] fm10k: reduce the scope of local err variable Jacob Keller
2019-07-12 18:00 ` Bowers, AndrewX
2019-07-08 23:12 ` [Intel-wired-lan] [PATCH 05/19] fm10k: reduce the scope of the q_idx local variable Jacob Keller
2019-07-12 18:01 ` Bowers, AndrewX
2019-07-08 23:12 ` [Intel-wired-lan] [PATCH 06/19] fm10k: reduce the scope of the tx_buffer variable Jacob Keller
2019-07-12 18:02 ` Bowers, AndrewX
2019-07-08 23:12 ` [Intel-wired-lan] [PATCH 07/19] fm10k: reduce the scope of the err variable Jacob Keller
2019-07-12 18:02 ` Bowers, AndrewX
2019-07-08 23:12 ` [Intel-wired-lan] [PATCH 08/19] fm10k: reduce the scope of the local i variable Jacob Keller
2019-07-12 18:02 ` Bowers, AndrewX
2019-07-08 23:12 ` [Intel-wired-lan] [PATCH 09/19] fm10k: reduce the scope of the local msg variable Jacob Keller
2019-07-12 18:03 ` Bowers, AndrewX
2019-07-08 23:12 ` [Intel-wired-lan] [PATCH 10/19] fm10k: reduce the scope of the result local variable Jacob Keller
2019-07-12 18:04 ` Bowers, AndrewX
2019-07-08 23:12 ` [Intel-wired-lan] [PATCH 11/19] fm10k: reduce scope of the ring variable Jacob Keller
2019-07-12 18:04 ` Bowers, AndrewX
2019-07-08 23:12 ` [Intel-wired-lan] [PATCH 12/19] fm10k: remove unnecessary variable initializer Jacob Keller
2019-07-12 18:05 ` Bowers, AndrewX
2019-07-08 23:12 ` [Intel-wired-lan] [PATCH 13/19] fm10k: remove needless assignment of err local variable Jacob Keller
2019-07-12 18:05 ` Bowers, AndrewX
2019-07-08 23:12 ` [Intel-wired-lan] [PATCH 14/19] fm10k: remove needless initialization of size " Jacob Keller
2019-07-12 18:06 ` Bowers, AndrewX
2019-07-08 23:12 ` [Intel-wired-lan] [PATCH 15/19] fm10k: explicitly return 0 on success path in function Jacob Keller
2019-07-12 18:06 ` Bowers, AndrewX
2019-07-08 23:12 ` Jacob Keller [this message]
2019-07-12 18:07 ` [Intel-wired-lan] [PATCH 16/19] fm10k: cast page_addr to u8 * when incrementing it Bowers, AndrewX
2019-07-08 23:12 ` [Intel-wired-lan] [PATCH 17/19] fm10k: mark unused parameters with __always_unused Jacob Keller
2019-07-12 18:07 ` Bowers, AndrewX
2019-07-08 23:12 ` [Intel-wired-lan] [PATCH 18/19] fm10k: convert NON_Q_VECTORS(hw) into NON_Q_VECTORS Jacob Keller
2019-07-12 18:08 ` Bowers, AndrewX
2019-07-08 23:12 ` [Intel-wired-lan] [PATCH 19/19] fm10k: fix fm10k_get_fault_pf to read correct address Jacob Keller
2019-07-12 18:08 ` Bowers, AndrewX
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=20190708231236.20516-17-jacob.e.keller@intel.com \
--to=jacob.e.keller@intel.com \
--cc=intel-wired-lan@osuosl.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