All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH for-5.2 v3 0/4] hw/net/can/ctucan: fix Coverity and other issues
@ 2020-11-10 21:52 Pavel Pisa
  2020-11-10 21:52 ` [PATCH for-5.2 v3 1/4] hw/net/can/ctucan: Don't allow guest to write off end of tx_buffer Pavel Pisa
                   ` (4 more replies)
  0 siblings, 5 replies; 6+ messages in thread
From: Pavel Pisa @ 2020-11-10 21:52 UTC (permalink / raw)
  To: qemu-devel, Peter Maydell
  Cc: Pavel Pisa, Jason Wang, Vikram Garhwal, Ondrej Ille, Jan Charvát

Credit for finding and fixes goes to Peter Maydell

This patchset fixes a couple of issues spotted by Coverity:
 * incorrect address checks meant the guest could write off the
   end of the tx_buffer arrays
 * we had an unused value in ctucan_send_ready_buffers()
and also some I noticed while reading the code:
 * we don't adjust the device's non-portable use of bitfields
   on bigendian hosts
 * we should use stl_le_p() rather than casting uint_t* to
   uint32_t*

Tested with "make check" only.

Changes v1->v2: don't assert() the can't-happen case in patch 1,
to allow for future adjustment of #defines that correspond to
h/w synthesis parameters.

Changes v2->v3: minnor corrections of range checking,
support for unaligned and partial word writes into Tx
buffers. Tested on x86_64 guest on x86_64 host and bige-edian
MIPS guest on x86_64 host Pavel Pisa.

Peter Maydell (4):
  hw/net/can/ctucan: Don't allow guest to write off end of tx_buffer
  hw/net/can/ctucan: Avoid unused value in ctucan_send_ready_buffers()
  hw/net/can/ctucan_core: Handle big-endian hosts
  hw/net/can/ctucan_core: Use stl_le_p to write to tx_buffers

 hw/net/can/ctucan_core.c | 23 +++++++----------------
 hw/net/can/ctucan_core.h |  3 +--
 2 files changed, 8 insertions(+), 18 deletions(-)

-- 
2.20.1



^ permalink raw reply	[flat|nested] 6+ messages in thread

end of thread, other threads:[~2020-11-11 12:58 UTC | newest]

Thread overview: 6+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2020-11-10 21:52 [PATCH for-5.2 v3 0/4] hw/net/can/ctucan: fix Coverity and other issues Pavel Pisa
2020-11-10 21:52 ` [PATCH for-5.2 v3 1/4] hw/net/can/ctucan: Don't allow guest to write off end of tx_buffer Pavel Pisa
2020-11-10 21:52 ` [PATCH for-5.2 v3 2/4] hw/net/can/ctucan: Avoid unused value in ctucan_send_ready_buffers() Pavel Pisa
2020-11-10 21:52 ` [PATCH for-5.2 v3 3/4] hw/net/can/ctucan_core: Handle big-endian hosts Pavel Pisa
2020-11-10 21:52 ` [PATCH for-5.2 v3 4/4] hw/net/can/ctucan_core: Use stl_le_p to write to tx_buffers Pavel Pisa
2020-11-11 12:50 ` [PATCH for-5.2 v3 0/4] hw/net/can/ctucan: fix Coverity and other issues Jason Wang

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.