- if (req->rq_peer.peer_nid == 0) {
- /* dst->addr is a user address, but in a different task! */
- char *buf = (char *)(long)dst->addr;
-
- set_fs(KERNEL_DS);
- rc = mds_fs_readpage(&req->rq_obd->u.mds, file, buf, PAGE_SIZE,
- &offset);
- set_fs(oldfs);
-
- if (rc != PAGE_SIZE) {
- rc = -EIO;
- GOTO(out, rc);
- }
- EXIT;
- } else {
- struct ptlrpc_bulk_desc *bulk;
- char *buf;
-
- bulk = ptlrpc_prep_bulk(&req->rq_peer);
- if (bulk == NULL) {
- rc = -ENOMEM;
- GOTO(out, rc);
- }
-
- bulk->b_xid = req->rq_xid;