[PATCH] USB gadget: drain rndis response queue on disconnect
Drain the rndis response queue on disconnect. This fixes a problem in which an rndis response left in the queue from a previous session could cause a subsequent session to fail. Signed-off-by: Andy Lowe <alowe@mvista.com> Signed-off-by: David Brownell <dbrownell@users.sourceforge.net> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
This commit is contained in:
parent
45e45ab45c
commit
486e2df6ce
|
@ -1025,11 +1025,17 @@ int rndis_signal_disconnect (int configNr)
|
|||
|
||||
void rndis_uninit (int configNr)
|
||||
{
|
||||
u8 *buf;
|
||||
u32 length;
|
||||
|
||||
if (configNr >= RNDIS_MAX_CONFIGS)
|
||||
return;
|
||||
rndis_per_dev_params [configNr].used = 0;
|
||||
rndis_per_dev_params [configNr].state = RNDIS_UNINITIALIZED;
|
||||
return;
|
||||
|
||||
/* drain the response queue */
|
||||
while ((buf = rndis_get_next_response(configNr, &length)))
|
||||
rndis_free_response(configNr, buf);
|
||||
}
|
||||
|
||||
void rndis_set_host_mac (int configNr, const u8 *addr)
|
||||
|
|
Loading…
Reference in a new issue