[alsa-devel] [PATCH] Fix build error with strict mm checking
Turning on STRICT_MM_TYPECHECKS in include/asm/page.h causes a build error for sparc32. This patch against 2.6.21 fixes this.
Martin
Signed-off-by: Martin Habets errandir_news@mph.eclipse.co.uk --- --- linux/sound/core/sgbuf.c.orig 2007-06-06 23:53:34.000000000 +0100 +++ linux/sound/core/sgbuf.c 2007-06-06 23:54:45.000000000 +0100 @@ -96,7 +96,7 @@ void *snd_malloc_sgbuf_pages(struct devi }
sgbuf->size = size; - dmab->area = vmap(sgbuf->page_table, sgbuf->pages, VM_MAP, PAGE_KERNEL); + dmab->area = vmap(sgbuf->page_table, sgbuf->pages, VM_MAP, __pgprot(PAGE_KERNEL)); if (! dmab->area) goto _failed; return dmab->area;
At Wed, 13 Jun 2007 00:18:57 +0100, Martin Habets wrote:
Turning on STRICT_MM_TYPECHECKS in include/asm/page.h causes a build error for sparc32. This patch against 2.6.21 fixes this.
Are you sure that this fix is needed for the latest 2.6.22-rc? PAGE_KERNEL is basically defined like __pgprot(__PAGE_KERNEL) on most architectures. If you need extra __pgprot() there, then it must be a bug specific to sparc32 arch.
Takashi
Martin
Signed-off-by: Martin Habets errandir_news@mph.eclipse.co.uk
--- linux/sound/core/sgbuf.c.orig 2007-06-06 23:53:34.000000000 +0100 +++ linux/sound/core/sgbuf.c 2007-06-06 23:54:45.000000000 +0100 @@ -96,7 +96,7 @@ void *snd_malloc_sgbuf_pages(struct devi }
sgbuf->size = size;
- dmab->area = vmap(sgbuf->page_table, sgbuf->pages, VM_MAP, PAGE_KERNEL);
- dmab->area = vmap(sgbuf->page_table, sgbuf->pages, VM_MAP, __pgprot(PAGE_KERNEL)); if (! dmab->area) goto _failed; return dmab->area;
participants (2)
-
Martin Habets
-
Takashi Iwai