Re: cryptoapi doesn't build

Marc-Christian Petersen
2003-08-27T22:05:46Z

[-- Attachment #1: Type: text/plain, Size: 791 bytes --]

On Tuesday 26 August 2003 12:23, James Morris wrote:

Hi James, Tom,

> > In file included from api.c:21:
> > internal.h:19:28: asm/kmap_types.h: No such file or directory
> > In file included from api.c:21:
> > internal.h:24: error: return type is an incomplete type
> > internal.h: In function rypto_kmap_type':
> > internal.h:25: error: invalid use of undefined type num km_type'
> > internal.h:25: warning: eturn' with a value, in function returning void
> > iirc, 2.4.21 had the same problem.
> What architecture did you see this on?

the problem is clear. crypto/internal.h includes asm/kmap_types.h, but alpha
does not have this.

I've sent a patch to fix this up and also cleanup the kmap_types.h mess around
.22-pre7 time ... Here it is again.

Marcelo, please apply.

ciao, Marc

[-- Attachment #2: 2.4-kmap-types-cleanup.patch --]
[-- Type: text/x-diff, Size: 7557 bytes --]

diff -Naurp a/crypto/internal.h b/crypto/internal.h
--- a/crypto/internal.h 2003-07-19 14:09:06.000000000 +0200
+++ b/crypto/internal.h 2003-07-19 14:18:58.000000000 +0200
@@ -14,9 +14,9 @@
#include <linux/mm.h>
#include <linux/highmem.h>
#include <linux/init.h>
+#include <linux/kmap_types.h>
#include <asm/hardirq.h>
#include <asm/softirq.h>
-#include <asm/kmap_types.h>

extern enum km_type crypto_km_types[];

diff -Naurp a/include/asm-i386/fixmap.h b/include/asm-i386/fixmap.h
--- a/include/asm-i386/fixmap.h 2003-07-19 14:09:31.000000000 +0200
+++ b/include/asm-i386/fixmap.h 2003-07-19 14:18:58.000000000 +0200
@@ -20,7 +20,7 @@
#include <asm/page.h>
#ifdef CONFIG_HIGHMEM
#include <linux/threads.h>
-#include <asm/kmap_types.h>
+#include <linux/kmap_types.h>
#endif

/*
diff -Naurp a/include/asm-i386/highmem.h b/include/asm-i386/highmem.h
--- a/include/asm-i386/highmem.h 2003-07-15 10:28:54.000000000 +0200
+++ b/include/asm-i386/highmem.h 2003-07-19 14:18:58.000000000 +0200
@@ -23,7 +23,6 @@
#include <linux/config.h>
#include <linux/init.h>
#include <linux/interrupt.h>
-#include <asm/kmap_types.h>
#include <asm/pgtable.h>

#ifdef CONFIG_DEBUG_HIGHMEM
diff -Naurp a/include/asm-i386/kmap_types.h b/include/asm-i386/kmap_types.h
--- a/include/asm-i386/kmap_types.h 2003-07-19 14:09:31.000000000 +0200
+++ b/include/asm-i386/kmap_types.h 1970-01-01 01:00:00.000000000 +0100
@@ -1,16 +0,0 @@
-#ifndef _ASM_KMAP_TYPES_H
-#define _ASM_KMAP_TYPES_H
-
-enum km_type {
- KM_BOUNCE_READ,
- KM_SKB_SUNRPC_DATA,
- KM_SKB_DATA_SOFTIRQ,
- KM_USER0,
- KM_USER1,
- KM_BH_IRQ,
- KM_SOFTIRQ0,
- KM_SOFTIRQ1,
- KM_TYPE_NR
-};
-
-#endif
diff -Naurp a/include/asm-m68k/kmap_types.h b/include/asm-m68k/kmap_types.h
--- a/include/asm-m68k/kmap_types.h 2003-07-19 14:09:33.000000000 +0200
+++ b/include/asm-m68k/kmap_types.h 1970-01-01 01:00:00.000000000 +0100
@@ -1,18 +0,0 @@
-#ifdef __KERNEL__
-#ifndef _ASM_KMAP_TYPES_H
-#define _ASM_KMAP_TYPES_H
-
-enum km_type {
- KM_BOUNCE_READ,
- KM_SKB_SUNRPC_DATA,
- KM_SKB_DATA_SOFTIRQ,
- KM_USER0,
- KM_USER1,
- KM_BH_IRQ,
- KM_SOFTIRQ0,
- KM_SOFTIRQ1,
- KM_TYPE_NR
-};
-
-#endif
-#endif /* __KERNEL__ */
diff -Naurp a/include/asm-mips/fixmap.h b/include/asm-mips/fixmap.h
--- a/include/asm-mips/fixmap.h 2002-09-27 23:26:03.000000000 +0200
+++ b/include/asm-mips/fixmap.h 2003-07-19 14:18:58.000000000 +0200
@@ -18,7 +18,7 @@
#include <asm/page.h>
#ifdef CONFIG_HIGHMEM
#include <linux/threads.h>
-#include <asm/kmap_types.h>
+#include <linux/kmap_types.h>
#endif

/*
diff -Naurp a/include/asm-mips/highmem.h b/include/asm-mips/highmem.h
--- a/include/asm-mips/highmem.h 2002-12-18 01:03:59.000000000 +0100
+++ b/include/asm-mips/highmem.h 2003-07-19 14:18:58.000000000 +0200
@@ -22,7 +22,6 @@

#include <linux/init.h>
#include <linux/interrupt.h>
-#include <asm/kmap_types.h>
#include <asm/pgtable.h>

/* undef for production */
diff -Naurp a/include/asm-mips/kmap_types.h b/include/asm-mips/kmap_types.h
--- a/include/asm-mips/kmap_types.h 2002-12-18 01:03:59.000000000 +0100
+++ b/include/asm-mips/kmap_types.h 1970-01-01 01:00:00.000000000 +0100
@@ -1,16 +0,0 @@
-#ifndef _ASM_KMAP_TYPES_H
-#define _ASM_KMAP_TYPES_H
-
-enum km_type {
- KM_BOUNCE_READ,
- KM_SKB_SUNRPC_DATA,
- KM_SKB_DATA_SOFTIRQ,
- KM_USER0,
- KM_USER1,
- KM_BH_IRQ,
- KM_SOFTIRQ0,
- KM_SOFTIRQ1,
- KM_TYPE_NR
-};
-
-#endif
diff -Naurp a/include/asm-ppc/highmem.h b/include/asm-ppc/highmem.h
--- a/include/asm-ppc/highmem.h 2003-07-19 14:09:33.000000000 +0200
+++ b/include/asm-ppc/highmem.h 2003-07-19 14:18:58.000000000 +0200
@@ -24,7 +24,7 @@

#include <linux/init.h>
#include <linux/interrupt.h>
-#include <asm/kmap_types.h>
+#include <linux/kmap_types.h>
#include <asm/pgtable.h>

/* undef for production */
diff -Naurp a/include/asm-ppc/kmap_types.h b/include/asm-ppc/kmap_types.h
--- a/include/asm-ppc/kmap_types.h 2003-07-19 14:09:33.000000000 +0200
+++ b/include/asm-ppc/kmap_types.h 1970-01-01 01:00:00.000000000 +0100
@@ -1,18 +0,0 @@
-#ifdef __KERNEL__
-#ifndef _ASM_KMAP_TYPES_H
-#define _ASM_KMAP_TYPES_H
-
-enum km_type {
- KM_BOUNCE_READ,
- KM_SKB_SUNRPC_DATA,
- KM_SKB_DATA_SOFTIRQ,
- KM_USER0,
- KM_USER1,
- KM_BH_IRQ,
- KM_SOFTIRQ0,
- KM_SOFTIRQ1,
- KM_TYPE_NR
-};
-
-#endif
-#endif /* __KERNEL__ */
diff -Naurp a/include/asm-ppc64/kmap_types.h b/include/asm-ppc64/kmap_types.h
--- a/include/asm-ppc64/kmap_types.h 2003-07-19 14:09:35.000000000 +0200
+++ b/include/asm-ppc64/kmap_types.h 1970-01-01 01:00:00.000000000 +0100
@@ -1,23 +0,0 @@
-#ifdef __KERNEL__
-#ifndef _ASM_KMAP_TYPES_H
-#define _ASM_KMAP_TYPES_H
-
-enum km_type {
- KM_BOUNCE_READ,
- KM_SKB_SUNRPC_DATA,
- KM_SKB_DATA_SOFTIRQ,
- KM_USER0,
- KM_USER1,
- KM_BIO_SRC_IRQ,
- KM_BIO_DST_IRQ,
- KM_PTE0,
- KM_PTE1,
- KM_IRQ0,
- KM_IRQ1,
- KM_SOFTIRQ0,
- KM_SOFTIRQ1,
- KM_TYPE_NR
-};
-
-#endif
-#endif /* __KERNEL__ */
diff -Naurp a/include/asm-sparc/highmem.h b/include/asm-sparc/highmem.h
--- a/include/asm-sparc/highmem.h 2003-07-15 10:28:56.000000000 +0200
+++ b/include/asm-sparc/highmem.h 2003-07-19 14:18:58.000000000 +0200
@@ -21,7 +21,7 @@
#ifdef __KERNEL__

#include <linux/interrupt.h>
-#include <asm/kmap_types.h>
+#include <linux/kmap_types.h>

/* undef for production */
#define HIGHMEM_DEBUG 1
diff -Naurp a/include/asm-sparc/kmap_types.h b/include/asm-sparc/kmap_types.h
--- a/include/asm-sparc/kmap_types.h 2003-07-19 14:09:37.000000000 +0200
+++ b/include/asm-sparc/kmap_types.h 1970-01-01 01:00:00.000000000 +0100
@@ -1,16 +0,0 @@
-#ifndef _ASM_KMAP_TYPES_H
-#define _ASM_KMAP_TYPES_H
-
-enum km_type {
- KM_BOUNCE_READ,
- KM_SKB_SUNRPC_DATA,
- KM_SKB_DATA_SOFTIRQ,
- KM_USER0,
- KM_USER1,
- KM_BH_IRQ,
- KM_SOFTIRQ0,
- KM_SOFTIRQ1,
- KM_TYPE_NR
-};
-
-#endif
diff -Naurp a/include/asm-sparc64/kmap_types.h b/include/asm-sparc64/kmap_types.h
--- a/include/asm-sparc64/kmap_types.h 2003-07-19 14:09:37.000000000 +0200
+++ b/include/asm-sparc64/kmap_types.h 1970-01-01 01:00:00.000000000 +0100
@@ -1,20 +0,0 @@
-#ifndef _ASM_KMAP_TYPES_H
-#define _ASM_KMAP_TYPES_H
-
-/* Dummy header just to define km_type. None of this
- * is actually used on sparc64. -DaveM
- */
-
-enum km_type {
- KM_BOUNCE_READ,
- KM_SKB_SUNRPC_DATA,
- KM_SKB_DATA_SOFTIRQ,
- KM_USER0,
- KM_USER1,
- KM_BH_IRQ,
- KM_SOFTIRQ0,
- KM_SOFTIRQ1,
- KM_TYPE_NR
-};
-
-#endif
diff -Naurp a/include/asm-x86_64/kmap_types.h b/include/asm-x86_64/kmap_types.h
--- a/include/asm-x86_64/kmap_types.h 2003-07-19 14:09:37.000000000 +0200
+++ b/include/asm-x86_64/kmap_types.h 1970-01-01 01:00:00.000000000 +0100
@@ -1,15 +0,0 @@
-#ifndef _ASM_KMAP_TYPES_H
-#define _ASM_KMAP_TYPES_H
-
-enum km_type {
- KM_BOUNCE_READ,
- KM_SKB_DATA,
- KM_SKB_DATA_SOFTIRQ,
- KM_USER0,
- KM_USER1,
- KM_SOFTIRQ0,
- KM_SOFTIRQ1,
- KM_TYPE_NR
-};
-
-#endif
diff -Naurp a/include/linux/highmem.h b/include/linux/highmem.h
--- a/include/linux/highmem.h 2003-07-19 14:09:37.000000000 +0200
+++ b/include/linux/highmem.h 2003-07-19 14:18:58.000000000 +0200
@@ -2,6 +2,7 @@
#define _LINUX_HIGHMEM_H

#include <linux/config.h>
+#include <linux/kmap_types.h>
#include <asm/pgalloc.h>

#ifdef CONFIG_HIGHMEM
diff -Naurp a/include/linux/kmap_types.h b/include/linux/kmap_types.h
--- a/include/linux/kmap_types.h 1970-01-01 01:00:00.000000000 +0100
+++ b/include/linux/kmap_types.h 2003-07-19 14:18:58.000000000 +0200
@@ -0,0 +1,16 @@
+#ifndef _LINUX_KMAP_TYPES_H
+#define _LINUX_KMAP_TYPES_H
+
+enum km_type {
+ KM_BOUNCE_READ,
+ KM_SKB_SUNRPC_DATA,
+ KM_SKB_DATA_SOFTIRQ,
+ KM_USER0,
+ KM_USER1,
+ KM_BH_IRQ,
+ KM_SOFTIRQ0,
+ KM_SOFTIRQ1,
+ KM_TYPE_NR
+};
+
+#endif