intel-gfx.lists.freedesktop.org archive mirror
 help / color / mirror / Atom feed
* [PATCH 1/4] drm/i915: Sanity check DP AUX message buffer and size
@ 2016-01-29 12:52 Imre Deak
  2016-01-29 12:52 ` [PATCH 2/4] drm/i915/chv: Fix error path in GPU freq helpers Imre Deak
                   ` (6 more replies)
  0 siblings, 7 replies; 13+ messages in thread
From: Imre Deak @ 2016-01-29 12:52 UTC (permalink / raw)
  To: intel-gfx

While we are calling intel_dp_aux_transfer() with msg->size=0 whenever
msg->buffer is NULL, passing NULL to memcpy() is undefined according to
the ISO C standard. I haven't found any notes about this in the GNU C's
or the kernel's documentation of the function and can't imagine what it
would do with the NULL ptr. To better document this use of the
parameters it still make sense to add an explicit check for this to the
code.

Caught by Coverity.

Signed-off-by: Imre Deak <imre.deak@intel.com>
---
 drivers/gpu/drm/i915/intel_dp.c | 5 ++++-
 1 file changed, 4 insertions(+), 1 deletion(-)

diff --git a/drivers/gpu/drm/i915/intel_dp.c b/drivers/gpu/drm/i915/intel_dp.c
index e2bea710..2aed36e 100644
--- a/drivers/gpu/drm/i915/intel_dp.c
+++ b/drivers/gpu/drm/i915/intel_dp.c
@@ -979,7 +979,10 @@ intel_dp_aux_transfer(struct drm_dp_aux *aux, struct drm_dp_aux_msg *msg)
 		if (WARN_ON(txsize > 20))
 			return -E2BIG;
 
-		memcpy(txbuf + HEADER_SIZE, msg->buffer, msg->size);
+		if (msg->buffer)
+			memcpy(txbuf + HEADER_SIZE, msg->buffer, msg->size);
+		else
+			WARN_ON(msg->size);
 
 		ret = intel_dp_aux_ch(intel_dp, txbuf, txsize, rxbuf, rxsize);
 		if (ret > 0) {
-- 
2.5.0

_______________________________________________
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
http://lists.freedesktop.org/mailman/listinfo/intel-gfx

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

end of thread, other threads:[~2016-02-02 16:34 UTC | newest]

Thread overview: 13+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2016-01-29 12:52 [PATCH 1/4] drm/i915: Sanity check DP AUX message buffer and size Imre Deak
2016-01-29 12:52 ` [PATCH 2/4] drm/i915/chv: Fix error path in GPU freq helpers Imre Deak
2016-01-29 13:55   ` David Weinehall
2016-01-29 12:52 ` [PATCH 3/4] drm/i915: Add debug info for failed MSI enabling Imre Deak
2016-01-29 13:58   ` David Weinehall
2016-01-29 12:52 ` [PATCH 4/4] drm/i915: Properly terminate KMS mode name string during tv init Imre Deak
2016-01-29 14:00   ` David Weinehall
2016-01-29 13:04 ` ✗ Fi.CI.BAT: failure for series starting with [1/4] drm/i915: Sanity check DP AUX message buffer and size Patchwork
2016-01-29 13:19 ` ✓ Fi.CI.BAT: success " Patchwork
2016-02-02 16:34   ` Imre Deak
2016-01-29 13:54 ` [PATCH 1/4] " David Weinehall
2016-02-01  6:12 ` Thulasimani, Sivakumar
2016-02-01 11:38   ` Imre Deak

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).