kdebug-1.1 on kernel 1.3.100, unresolved symbols for kdebug.o

lilo (TaRDiS@mail.utexas.edu)
Fri, 10 May 1996 21:18:41 -0500 (CDT)


Hi All,

Using `depmod -a' to resolve symbols required to load kdebug.o, I get the
following (I'm running modules-1.3.69f):

*** Unresolved symbols in module /lib/modules/1.3.100/misc/kdebug.o
_save
_reg
_call
printk
high_memory
vverify
simple_strtoul
current_set
register_chrdev
unregister_chrdev

I assume these problems are due to the relative age of the package. If
someone's played with this I'd appreciate some feedback. I used the
following patches against the kernel source. It's final examination time,
so I'm being a bit tied up, but would appreciate any help! :)

lilo

--- linux/Makefile Wed May 8 02:33:17 1996
+++ linux/Makefile.NEW Fri May 10 12:33:10 1996
@@ -87,7 +87,7 @@
# standard CFLAGS
#

-CFLAGS = -Wall -Wstrict-prototypes -O2 -fomit-frame-pointer -fno-strength-reduce
+CFLAGS = -Wall -Wstrict-prototypes -O0 -g -fno-strength-reduce

ifdef CONFIG_CPP
CFLAGS := $(CFLAGS) -x c++
--- linux/include/linux/mm.h Fri May 10 03:33:52 1996
+++ linux/include/linux/mm.h.NEW Fri May 10 12:28:21 1996
@@ -280,6 +280,7 @@
extern void * vremap(unsigned long offset, unsigned long size);
extern void vfree(void * addr);
extern int vread(char *buf, char *addr, int count);
+extern int vverify(char *addr, int count);

/* mmap.c */
extern unsigned long do_mmap(struct file * file, unsigned long addr, unsigned long len,
--- linux/kernel/ksyms.c Sat Apr 27 16:45:54 1996
+++ linux/kernel/ksyms.c.NEW Fri May 10 12:28:21 1996
@@ -130,6 +130,7 @@
X(vmalloc),
X(vremap),
X(vfree),
+ X(vverify),
X(mem_map),
X(remap_page_range),
X(high_memory),
--- linux/mm/vmalloc.c Wed Apr 3 01:59:33 1996
+++ linux/mm/vmalloc.c.NEW Fri May 10 12:28:21 1996
@@ -349,3 +349,18 @@
finished:
return buf - buf_start;
}
+
+int vverify(char *addr, int count)
+{
+ struct vm_struct **p, *tmp;
+ char *vaddr;
+
+ for (p = &vmlist; (tmp = *p) ; p = &tmp->next) {
+ vaddr = (char *) tmp->addr;
+ if (addr < vaddr)
+ return -EPERM;
+ if (addr+count <= vaddr+tmp->size-PAGE_SIZE)
+ return 0;
+ }
+ return -EPERM;
+}