Version: 1
-Previous: 86316a2bfbf2390f9af06024485f78e7d546161d
-Head: 3adebc52bfcb7835bf6c3f0885a611365e536386
+Previous: 85877988e9391b396fc8ceacb84ffc8fe87bc044
+Head: f26357a61cf0f56bbc78d2043317b6e0ab37ac9c
Applied:
autoaddr: f7b588cb0a484c2a15c5bd81ef101c815bd992ee
addr_open: 5eb3d268fe35400cda8069a63415d51a035e5797
open_dev: 3adebc52bfcb7835bf6c3f0885a611365e536386
+ ep_active: f26357a61cf0f56bbc78d2043317b6e0ab37ac9c
Unapplied:
async_mc: c51c6e84981821b2541daba97cee9a29cd1d3709
addr_size: 8de02c47fbf595132105a7050ad6f755f49f9a7a
--- /dev/null
+Bottom: b9b25b60f3a7d69a05d63b0462a5835ba8da08d3
+Top: b9b25b60f3a7d69a05d63b0462a5835ba8da08d3
+Author: Sean Hefty <sean.hefty@intel.com>
+Date: 2011-01-20 17:06:28 -0800
+
+Move endpoint activation to another thread
+
+To support dynamic changes, move endpoint activation from
+the main thread into a dedicated thread that will also
+process asynchronous events (to be added separately). The
+main thread will still initialize the device and port
+list, but activation code will be handled by the new thread,
+so that endpoints can be deferred until their associated
+ports are activated.
+
+This also means that multicast joins are deferred, and
+additional state checking is needed to prevent the main
+thread (which processes client requests) from accessing
+endpoints which are not yet fully active.
+
+Signed-off-by: Sean Hefty <sean.hefty@intel.com>
+
+
+---
+
+