static struct request * sio_choose_expired_request(struct sio_data *sd) { struct request *rq; /* * Check expired requests. * Asynchronous requests have priority over synchronous. * Write requests have priority over read. */ rq = sio_expired_request(sd, ASYNC, WRITE); if (rq) return rq; rq = sio_expired_request(sd, ASYNC, READ); if (rq) return rq; rq = sio_expired_request(sd, SYNC, WRITE); if (rq) return rq; rq = sio_expired_request(sd, SYNC, READ); if (rq) return rq; return NULL; }
static struct request * sio_choose_expired_request(struct sio_data *sd) { struct request *sync = sio_expired_request(sd, SYNC); struct request *async = sio_expired_request(sd, ASYNC); /* * Check expired requests. Asynchronous requests have * priority over synchronous. */ if (sync && async) return async; if (sync) return sync; return async; }
static struct request * sio_choose_expired_request(struct sio_data *sd) { struct request *rq; rq = sio_expired_request(sd, ASYNC, WRITE); if (rq) return rq; rq = sio_expired_request(sd, ASYNC, READ); if (rq) return rq; rq = sio_expired_request(sd, SYNC, WRITE); if (rq) return rq; rq = sio_expired_request(sd, SYNC, READ); if (rq) return rq; return NULL; }