All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH] staging: nvec: Avoid the use of BUG_ON
@ 2016-02-21  8:15 Laura Garcia Liebana
  2016-02-21 12:31 ` [Outreachy kernel] " Julia Lawall
  0 siblings, 1 reply; 4+ messages in thread
From: Laura Garcia Liebana @ 2016-02-21  8:15 UTC (permalink / raw)
  To: outreachy-kernel

Prevent a kernel panic by avoiding the use of the BUG_ON macro and using the
WARN_ON macro instead. Checkpatch detected this issue.

Signed-off-by: Laura Garcia Liebana <nevola@gmail.com>
---
 drivers/staging/nvec/nvec.c | 14 ++++++++++++--
 1 file changed, 12 insertions(+), 2 deletions(-)

diff --git a/drivers/staging/nvec/nvec.c b/drivers/staging/nvec/nvec.c
index c335ae2..3b5b94f 100644
--- a/drivers/staging/nvec/nvec.c
+++ b/drivers/staging/nvec/nvec.c
@@ -641,11 +641,21 @@ static irqreturn_t nvec_interrupt(int irq, void *dev)
 			nvec_msg_free(nvec, nvec->rx);
 			nvec->state = 3;
 			nvec_tx_set(nvec);
-			BUG_ON(nvec->tx->size < 1);
+			if (WARN_ON(nvec->tx->size < 1)) {
+				dev_err(nvec->dev,
+					"Invalid TX size\n");
+				nvec->state = 0;
+				break;
+			}
 			to_send = nvec->tx->data[0];
 			nvec->tx->pos = 1;
 		} else if (status == (I2C_SL_IRQ)) {
-			BUG_ON(nvec->rx == NULL);
+			if (WARN_ON(!nvec->rx)) {
+				dev_err(nvec->dev,
+					"Invalid RX\n");
+				nvec->state = 0;
+				break;
+			}
 			nvec->rx->data[1] = received;
 			nvec->rx->pos = 2;
 			nvec->state = 4;
-- 
2.7.0



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

end of thread, other threads:[~2016-02-22  0:43 UTC | newest]

Thread overview: 4+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2016-02-21  8:15 [PATCH] staging: nvec: Avoid the use of BUG_ON Laura Garcia Liebana
2016-02-21 12:31 ` [Outreachy kernel] " Julia Lawall
2016-02-21 16:51   ` Laura Garcia
2016-02-22  0:43     ` Julia Lawall

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.