> We could check ctx->reqs_active before scheduling to determine whether > or not we are waiting for I/O, but this would require taking the > context lock in order to be accurate. Given that the test would be > only for the sake of book keeping, it might be okay to do it outside > of the lock. > > Zach, what are your thoughts on this?
I agree that it'd be OK to test it outside the lock, though we'll want some commentary: /* Try to only show up in io wait if there are ops in flight */ if (ctx->reqs_active) io_schedule(); else schedule(); It's cheap, safe, and accurate the overwhelming majority of the time :). We only need it in read_events(). The other two io_schedule() calls are only reached to wait on pending reqs specifically. It still won't make sense for iocbs which aren't performing IO, but I guess that's one more bridge to cross when we come to it. Do you want to throw this tiny patch together and submit it? - z -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to [EMAIL PROTECTED] More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/