From: Inaky Perez-Gonzalez Date: Wed, 7 Oct 2009 03:34:13 +0000 (+0900) Subject: wimax/i2400m: fix deadlock: don't do BUS reset under i2400m->init_mutex X-Git-Tag: v2.6.33-rc1~388^2~487^2~17 X-Git-Url: http://git.openpandora.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=b9ee95010bee6c0e17d18bc9d9c0cfab6e8cb73a;p=pandora-kernel.git wimax/i2400m: fix deadlock: don't do BUS reset under i2400m->init_mutex Since the addition of the pre/post reset handlers, it became clear that we cannot do a I2400M-RT-BUS type reset while holding the init_mutex, as in the case of USB, it will deadlock when trying to call i2400m_pre_reset(). Thus, the following changes: - clarify the fact that calling bus_reset() w/ I2400M_RT_BUS while holding init_mutex is a no-no. - i2400m_dev_reset_handle() will do a BUS reset to recover a gone device after unlocking init_mutex. - in the USB reset implementation, when cold and warm reset fails, fallback to QUEUING a usb reset, not executing a USB reset, so it happens from another context and does not deadlock. Signed-off-by: Inaky Perez-Gonzalez --- Reading git-diff-tree failed