Dan Carpenter <dan.carpen...@oracle.com> writes: > This comment is not related to your patch. > > On Wed, May 21, 2014 at 09:38:25AM +0200, jes.soren...@redhat.com wrote: >> static struct fwevent wlanevents[] = >> { >> - {0, rtw_dummy_event_callback23a}, /*0*/ >> + {0, &dummy_event_callback}, /*0*/ >> {0, NULL}, >> {0, NULL}, > > These are called from mlme_evt_hdl23a(), that code looks like this: > > drivers/staging/rtl8723au/core/rtw_mlme_ext.c > 6407 int mlme_evt_hdl23a(struct rtw_adapter *padapter, const u8 *pbuf) > 6408 { > 6409 u8 evt_code, evt_seq; > 6410 u16 evt_sz; > 6411 const struct C2HEvent_Header *c2h; > 6412 void (*event_callback)(struct rtw_adapter *dev, const u8 > *pbuf); > 6413 > 6414 c2h = (struct C2HEvent_Header *)pbuf; > 6415 evt_sz = c2h->len; > 6416 evt_seq = c2h->seq; > 6417 evt_code = c2h->ID; > 6418 > 6419 /* checking if event code is valid */ > 6420 if (evt_code >= MAX_C2HEVT) { > 6421 RT_TRACE(_module_rtl871x_cmd_c_, _drv_err_, ("\nEvent > Code(%d) mismatch!\n", evt_code)); > 6422 goto _abort_event_; > 6423 } > 6424 > 6425 /* checking if event size match the event parm size */ > 6426 if ((wlanevents[evt_code].parmsize != 0) && > 6427 (wlanevents[evt_code].parmsize != evt_sz)) { > 6428 RT_TRACE(_module_rtl871x_cmd_c_, _drv_err_, > ("\nEvent(%d) Parm Size mismatch (%d vs %d)!\n", > 6429 evt_code, wlanevents[evt_code].parmsize, > evt_sz)); > 6430 goto _abort_event_; > 6431 } > 6432 > 6433 event_callback = wlanevents[evt_code].event_callback; > > There should be a check for: > > if (!event_callback) > return H2C_SUCCESS; > > Because that array is full of NULL pointers. >
Seems fair - if you do a TODO list for this, you may want to add the 8188eu driver to the list. I would expect it to have the same problem. Cheers, Jes _______________________________________________ devel mailing list de...@linuxdriverproject.org http://driverdev.linuxdriverproject.org/mailman/listinfo/driverdev-devel