@@ -227,7 +227,7 @@ static int qeth_alloc_buffer_pool(struct qeth_card *card)
return -ENOMEM;
}
for (j = 0; j < QETH_MAX_BUFFER_ELEMENTS(card); ++j) {
- ptr = (void *) __get_free_page(GFP_KERNEL);
+ ptr = (void *) __get_free_page(GFP_KERNEL|__GFP_MEMALLOC);
if (!ptr) {
while (j > 0)
free_page((unsigned long)
@@ -2612,7 +2612,7 @@ static struct qeth_buffer_pool_entry *qeth_find_free_buffer_pool_entry(
struct qeth_buffer_pool_entry, list);
for (i = 0; i < QETH_MAX_BUFFER_ELEMENTS(card); ++i) {
if (page_count(virt_to_page(entry->elements[i])) > 1) {
- page = alloc_page(GFP_ATOMIC);
+ page = dev_alloc_page();
if (!page) {
return NULL;
} else {