``` /* FIXME: it would probably be nice to replace the "canceled" flag with a * single LIST_FOR_EACH_ENTRY_SAFE, but currently cancelling an async can * cause other asyncs to be removed via async_reselect() */ ```
After 3/8 this comment in cancel_async() is off, since there's no "canceled" flag. The comment is still basically true, mind—it's ugly to have to restart the iteration every time, and having async_reselect() mess with other asyncs makes things awfully complicated, including here.