Hi Singh, This looks a lot better than the initial version. I only have one question: On Fri, Nov 20, 2015 at 06:40:20AM -0500, Shikha Singh wrote: > +/* > + * st95hf_send_recv_cmd() is for sending commands to ST95HF > + * that are described in the cmd_array[]. It can optionally > + * receive the response if the cmd request is of type > + * SYNC. For that to happen caller must pass true to recv_res. > + * For ASYNC request, recv_res is ignored and the > + * function will never try to receive the response on behalf > + * of the caller. > + */ > +static int st95hf_send_recv_cmd(struct st95hf_context *st95context, > + enum st95hf_cmd_list cmd, > + int no_modif, > + struct param_list *list_array, > + bool recv_res) > +{ > + unsigned char spi_cmd_buffer[MAX_CMD_LEN]; > + int i, ret; > + struct device *dev = &st95context->spicontext.spidev->dev; How do you know this driver is still valid at that point ? It seems to be a potential corner case against the driver's remove function, but it seems to be a race nevertheless. Cheers, Samuel. -- To unsubscribe from this list: send the line "unsubscribe linux-wireless" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html