On Wed, 04 Oct 2006 17:59:57 +0200, Jan Kiszka wrote:
> The reason is the invocation of rt2500usb's config handler in atomic
> context (timer handler). But this service requires schedulable context
> to submit and wait for some URBs.

Hm, I thought it had been fixed
(http://kernel.org/git/?p=linux/kernel/git/linville/wireless-dev.git;a=commit;h=d0d2b7a8ddc378ddea499f1537f6aea83d96d003).

We'll need to make something similar with sta_timer.

> That raises the question how to resolve the conflict best, at stack
> level by pushing such work into thread context (workqueues?) or at
> driver level by deferring these requests (if feasible at all without
> breaking the stack's timing)? What other callback handlers in
> ieee80211_hw can currently be called in atomic context? Given that all
> USB WLAN adapters will have to cope with this issue in some way, it may
> be wise to find a common solution.

It needs to be solved in the stack. ieee80211_hw->config callback should
return proper error code in a case of problems and this is not possible
when the work is deferred in the driver.

Thanks,

 Jiri

-- 
Jiri Benc
SUSE Labs
-
To unsubscribe from this list: send the line "unsubscribe netdev" in
the body of a message to [EMAIL PROTECTED]
More majordomo info at  http://vger.kernel.org/majordomo-info.html

Reply via email to