VirtualBox

Ticket #11171: diff_gfp_nowarn_2

File diff_gfp_nowarn_2, 1.9 KB (added by Frank Mehnert, 10 years ago)
Line 
1Index: src/VBox/Runtime/r0drv/linux/alloc-r0drv-linux.c
2===================================================================
3--- src/VBox/Runtime/r0drv/linux/alloc-r0drv-linux.c (revision 96198)
4+++ src/VBox/Runtime/r0drv/linux/alloc-r0drv-linux.c (revision 96199)
5@@ -164,7 +164,7 @@
6 pVmArea->nr_pages = 0; /* paranoia? */
7 pVmArea->pages = NULL; /* paranoia? */
8
9- papPages = (struct page **)kmalloc(cPages * sizeof(papPages[0]), GFP_KERNEL);
10+ papPages = (struct page **)kmalloc(cPages * sizeof(papPages[0]), GFP_KERNEL | __GFP_NOWARN);
11 if (!papPages)
12 {
13 vunmap(pVmArea->addr);
14@@ -254,11 +254,11 @@
15
16 # else /* !RTMEMALLOC_EXEC_HEAP */
17 # error "you don not want to go here..."
18- pHdr = (PRTMEMHDR)__vmalloc(cb + sizeof(*pHdr), GFP_KERNEL | __GFP_HIGHMEM, MY_PAGE_KERNEL_EXEC);
19+ pHdr = (PRTMEMHDR)__vmalloc(cb + sizeof(*pHdr), GFP_KERNEL | __GFP_HIGHMEM | __GFP_NOWARN, MY_PAGE_KERNEL_EXEC);
20 # endif /* !RTMEMALLOC_EXEC_HEAP */
21
22 #elif defined(PAGE_KERNEL_EXEC) && defined(CONFIG_X86_PAE)
23- pHdr = (PRTMEMHDR)__vmalloc(cb + sizeof(*pHdr), GFP_KERNEL | __GFP_HIGHMEM, MY_PAGE_KERNEL_EXEC);
24+ pHdr = (PRTMEMHDR)__vmalloc(cb + sizeof(*pHdr), GFP_KERNEL | __GFP_HIGHMEM | __GFP_NOWARN, MY_PAGE_KERNEL_EXEC);
25 #else
26 pHdr = (PRTMEMHDR)vmalloc(cb + sizeof(*pHdr));
27 #endif
28@@ -276,7 +276,8 @@
29 {
30 fFlags |= RTMEMHDR_FLAG_KMALLOC;
31 pHdr = kmalloc(cb + sizeof(*pHdr),
32- (fFlags & RTMEMHDR_FLAG_ANY_CTX_ALLOC) ? GFP_ATOMIC : GFP_KERNEL);
33+ (fFlags & RTMEMHDR_FLAG_ANY_CTX_ALLOC) ? (GFP_ATOMIC | __GFP_NOWARN)
34+ : (GFP_KERNEL | __GFP_NOWARN));
35 if (RT_UNLIKELY( !pHdr
36 && cb > PAGE_SIZE
37 && !(fFlags & RTMEMHDR_FLAG_ANY_CTX) ))

© 2024 Oracle Support Privacy / Do Not Sell My Info Terms of Use Trademark Policy