Jelajahi Sumber

Merge "gsi: Fix NULL pointer dereference on event-less channels"

qctecmdr 4 tahun lalu
induk
melakukan
78ab233b35
1 mengubah file dengan 4 tambahan dan 2 penghapusan
  1. 4 2
      drivers/platform/msm/gsi/gsi.c

+ 4 - 2
drivers/platform/msm/gsi/gsi.c

@@ -2991,7 +2991,8 @@ int gsi_start_channel(unsigned long chan_hdl)
 	/* check if INTSET is in IRQ mode for GPI channel */
 	val = gsi_readl(gsi_ctx->base +
 			GSI_EE_n_CNTXT_INTSET_OFFS(gsi_ctx->per.ee));
-	if (ctx->evtr->props.intf == GSI_EVT_CHTYPE_GPI_EV &&
+	if (ctx->evtr &&
+		ctx->evtr->props.intf == GSI_EVT_CHTYPE_GPI_EV &&
 		val != GSI_INTR_IRQ) {
 		GSIERR("GSI_EE_n_CNTXT_INTSET_OFFS %d\n", val);
 		BUG();
@@ -3074,7 +3075,8 @@ int gsi_stop_channel(unsigned long chan_hdl)
 	/* check if INTSET is in IRQ mode for GPI channel */
 	val = gsi_readl(gsi_ctx->base +
 			GSI_EE_n_CNTXT_INTSET_OFFS(gsi_ctx->per.ee));
-	if (ctx->evtr->props.intf == GSI_EVT_CHTYPE_GPI_EV &&
+	if (ctx->evtr &&
+		ctx->evtr->props.intf == GSI_EVT_CHTYPE_GPI_EV &&
 		val != GSI_INTR_IRQ) {
 		GSIERR("GSI_EE_n_CNTXT_INTSET_OFFS %d\n", val);
 		BUG();