Re: 2.3.29 fails compile (resource_fixup)

James Manning (jmm@raleigh.ibm.com)
Wed, 24 Nov 1999 13:22:09 -0500


[ Wednesday, November 24, 1999 ] Pete Clements wrote:
> FYI:
>
> kernel/kernel.o: In function `find_resource':
> kernel/kernel.o(.text+0xb322): undefined reference to `resource_fixup'
> make: *** [vmlinux] Error 1
>
> This box is an i486 without a PCI, thus pci is not configured.

I'd have to imagine that since resource_fixup looks to be PCI-specific,
that you'd be able to simply ifdef it

--- kernel/resource.c.orig Wed Nov 24 13:14:27 1999
+++ kernel/resource.c Wed Nov 24 13:13:41 1999
@@ -142,7 +142,9 @@
if (end > max)
end = max;
start = (start + align - 1) & ~(align - 1);
+#ifdef CONFIG_PCI
start = resource_fixup (dev, new, start, size);
+#endif
if (start < end && end - start + 1 >= size) {
new->start = start;
new->end = start + size - 1;

I'm not sure about this, though, since kernel/resource.c includes the
linux/ioport.h which includes allocate_resource as well, pci-specific,
without such a ifdef... I don't *think* kernel/resource.c was supposed
to be pci-specific (although with multiple non-ifdef'd pci references
in it, it's hard to know for sure), but if it is, then we could simply
fix the Makefile with something like:

--- kernel/Makefile.orig Wed Nov 24 13:20:08 1999
+++ kernel/Makefile Wed Nov 24 13:20:35 1999
@@ -12,10 +12,14 @@

O_TARGET := kernel.o
O_OBJS = sched.o dma.o fork.o exec_domain.o panic.o printk.o sys.o \
- module.o exit.o itimer.o info.o time.o softirq.o resource.o \
+ module.o exit.o itimer.o info.o time.o softirq.o \
sysctl.o acct.o capability.o ptrace.o

OX_OBJS += signal.o

+ifeq ($(CONFIG_PCI),y)
+O_OBJS += resource.o
+endif

ifeq ($(CONFIG_KMOD),y)
O_OBJS += kmod.o

James

-- 
Miscellaneous Engineer --- IBM Netfinity Performance Development

- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.rutgers.edu Please read the FAQ at http://www.tux.org/lkml/