- if (res == CLP_GANG_OKAY) {
- typeof(cl_page_own) *page_own;
-
- page_own = queue->pl_nr ?
- cl_page_own_try : cl_page_own;
- if (page_own(env, io, page) == 0) {
- cl_page_list_add(queue, page);
- } else if (page->cp_state != CPS_FREEING) {
- /* cl_page_own() won't fail unless
- * the page is being freed. */
- LASSERT(queue->pl_nr != 0);
- res = CLP_GANG_AGAIN;
- }
- }
+ if (res == CLP_GANG_OKAY)
+ res = (*cb)(env, io, page, cbdata);