Re: [PATCH] s390: fix invalid kmalloc flags

From: Andrew Morton
Date: Fri Aug 05 2005 - 19:41:10 EST


benoit.boissinot@xxxxxxxxxxx wrote:
>
> The following patch fixes the compilation (defconfig) of s390:
>
> arch/s390/mm/built-in.o(.text+0x152c): In function `query_segment_type':
> extmem.c: undefined reference to `__your_kmalloc_flags_are_not_valid'
> arch/s390/mm/built-in.o(.text+0x19ec): In function `segment_load':
> : undefined reference to `__your_kmalloc_flags_are_not_valid'
>
>
> Signed-off-by: Benoit Boissinot <benoit.boissinot@xxxxxxxxxxxx>
>
> --- a/arch/s390/mm/extmem.c 2005-08-06 01:32:56.000000000 +0200
> +++ b/arch/s390/mm/extmem.c 2005-07-31 17:46:36.000000000 +0200
> @@ -172,8 +172,8 @@ dcss_diag_translate_rc (int vm_rc) {
> static int
> query_segment_type (struct dcss_segment *seg)
> {
> - struct qin64 *qin = kmalloc (sizeof(struct qin64), GFP_DMA);
> - struct qout64 *qout = kmalloc (sizeof(struct qout64), GFP_DMA);
> + struct qin64 *qin = kmalloc (sizeof(struct qin64), GFP_DMA|GFP_KERNEL);
> + struct qout64 *qout = kmalloc (sizeof(struct qout64), GFP_DMA|GFP_KERNEL);

No, GFP_DMA should work OK. Except GFP_DMA doesn't have __GFP_VALID set.
It's strange that this didn't get noticed earlier.

Ben, was there a reason for not giving GFP_DMA the treatment?
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/