|
21 | 21 |
|
22 | 22 | #include <xen/xen-front-pgdir-shbuf.h>
|
23 | 23 |
|
24 |
| -#ifndef GRANT_INVALID_REF |
25 |
| -/* |
26 |
| - * FIXME: usage of grant reference 0 as invalid grant reference: |
27 |
| - * grant reference 0 is valid, but never exposed to a PV driver, |
28 |
| - * because of the fact it is already in use/reserved by the PV console. |
29 |
| - */ |
30 |
| -#define GRANT_INVALID_REF 0 |
31 |
| -#endif |
32 |
| - |
33 | 24 | /**
|
34 | 25 | * This structure represents the structure of a shared page
|
35 | 26 | * that contains grant references to the pages of the shared
|
|
38 | 29 | */
|
39 | 30 | struct xen_page_directory {
|
40 | 31 | grant_ref_t gref_dir_next_page;
|
| 32 | +#define XEN_GREF_LIST_END 0 |
41 | 33 | grant_ref_t gref[1]; /* Variable length */
|
42 | 34 | };
|
43 | 35 |
|
@@ -83,7 +75,7 @@ grant_ref_t
|
83 | 75 | xen_front_pgdir_shbuf_get_dir_start(struct xen_front_pgdir_shbuf *buf)
|
84 | 76 | {
|
85 | 77 | if (!buf->grefs)
|
86 |
| - return GRANT_INVALID_REF; |
| 78 | + return INVALID_GRANT_REF; |
87 | 79 |
|
88 | 80 | return buf->grefs[0];
|
89 | 81 | }
|
@@ -142,7 +134,7 @@ void xen_front_pgdir_shbuf_free(struct xen_front_pgdir_shbuf *buf)
|
142 | 134 | int i;
|
143 | 135 |
|
144 | 136 | for (i = 0; i < buf->num_grefs; i++)
|
145 |
| - if (buf->grefs[i] != GRANT_INVALID_REF) |
| 137 | + if (buf->grefs[i] != INVALID_GRANT_REF) |
146 | 138 | gnttab_end_foreign_access(buf->grefs[i], 0UL);
|
147 | 139 | }
|
148 | 140 | kfree(buf->grefs);
|
@@ -355,7 +347,7 @@ static void backend_fill_page_dir(struct xen_front_pgdir_shbuf *buf)
|
355 | 347 | }
|
356 | 348 | /* Last page must say there is no more pages. */
|
357 | 349 | page_dir = (struct xen_page_directory *)ptr;
|
358 |
| - page_dir->gref_dir_next_page = GRANT_INVALID_REF; |
| 350 | + page_dir->gref_dir_next_page = XEN_GREF_LIST_END; |
359 | 351 | }
|
360 | 352 |
|
361 | 353 | /**
|
@@ -384,7 +376,7 @@ static void guest_fill_page_dir(struct xen_front_pgdir_shbuf *buf)
|
384 | 376 |
|
385 | 377 | if (grefs_left <= XEN_NUM_GREFS_PER_PAGE) {
|
386 | 378 | to_copy = grefs_left;
|
387 |
| - page_dir->gref_dir_next_page = GRANT_INVALID_REF; |
| 379 | + page_dir->gref_dir_next_page = XEN_GREF_LIST_END; |
388 | 380 | } else {
|
389 | 381 | to_copy = XEN_NUM_GREFS_PER_PAGE;
|
390 | 382 | page_dir->gref_dir_next_page = buf->grefs[i + 1];
|
|
0 commit comments