Messages in this thread | | | Subject | Re: [openib-general] Re: [PATCH 4/6 v2] IB: address translation to map IP toIB addresses (GIDs) | From | Roland Dreier <> | Date | Tue, 21 Mar 2006 14:39:36 -0800 |
| |
Sean> "This is simply an attempt to reduce/combine work queues Sean> used by the Infiniband code. This keeps the threading a Sean> little simpler in the rdma_cm, since all callbacks are Sean> invoked using the same work queue. (I'm also using this Sean> with the local SA/multicast code, but that's not ready for Sean> merging.)"
How does it keep the threading model simpler? Is this an inter-module dependency.
Sean> There's no specific ordering constraint that's required. Sean> We're just ending up with several Infiniband modules Sean> creating their own work queues (ib_mad, ib_cm, ib_addr, Sean> rdma_cm, plus a couple more in modules under development), Sean> and this is an attempt to reduce that. If having separate Sean> work queues would work better, there shouldn't be anything Sean> that prevents this.
It seems like it would be cleaner for each module to have its own workqueue if it needs one. There's also schedule_work(), although that goes to a multi-threaded workqueue. Michael Tsirkin has suggested creating a system-wide single-threaded workqueue (ie something like schedule_ordered_work()) for everyone that occasionally needs a single-threaded workqueue.
- R. - To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
| |