Commit | Line | Data |
---|---|---|
022cae36 VJJ |
1 | /* |
2 | * Copyright IBM Corporation, 2010 | |
3 | * Author Venkateswararao Jujjuri <jvrao@linux.vnet.ibm.com> | |
4 | * | |
5 | * This program is free software; you can redistribute it and/or modify it | |
6 | * under the terms of version 2.1 of the GNU Lesser General Public License | |
7 | * as published by the Free Software Foundation. | |
8 | * | |
9 | * This program is distributed in the hope that it would be useful, but | |
10 | * WITHOUT ANY WARRANTY; without even the implied warranty of | |
11 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. | |
12 | * | |
13 | */ | |
14 | ||
4038866d VJJ |
15 | /* TRUE if it is user context */ |
16 | #define P9_IS_USER_CONTEXT (!segment_eq(get_fs(), KERNEL_DS)) | |
17 | ||
022cae36 VJJ |
18 | /** |
19 | * struct trans_rpage_info - To store mapped page information in PDU. | |
20 | * @rp_alloc:Set if this structure is allocd, not a reuse unused space in pdu. | |
21 | * @rp_nr_pages: Number of mapped pages | |
22 | * @rp_data: Array of page pointers | |
23 | */ | |
24 | struct trans_rpage_info { | |
25 | u8 rp_alloc; | |
26 | int rp_nr_pages; | |
27 | struct page *rp_data[0]; | |
28 | }; | |
29 | ||
30 | void p9_release_req_pages(struct trans_rpage_info *); | |
31 | int p9_payload_gup(struct p9_req_t *, size_t *, int *, int, u8); | |
32 | int p9_nr_pages(struct p9_req_t *); |