Messages in this thread | | | Date | Wed, 10 Apr 1996 20:58:19 +0200 (MET DST) | From | Matics Gyula <> | Subject | Re: Modules. What's the deal? |
| |
> > Some functions were renamed in the kernel. (invalidate_* renamed to > > flush_tlb_* ) > > > > The solution for dosemu is to hack emumod/vm86.c and tlb.c and replace > > calls to invalidate_all() to flush_tlb_all(). Or, better make an > > #ifdef kernel version >1.3.83 (may be 84) ... > > Although the above response wasn't quite correct, I did derive a fix > from it. Here's what I did. I edited /emumod/vm86.c , where there was > a call to invalidate(), I replaced it with invalid_op(), which I found > in /System.map. I did the same with /emumod/ldt.c. Did a make > clean;make in emumod, and the module now loads and dosemu works. > > ---russ >
if you do what I did dosemu will work also.... but the invalidate_all() call was replaced with flush_tlb_all() not with invalid_op()...... they are doing very different things. If you look at older kernels' System.map you'll not find in them invalidate_all() but will find invalid_op()
read patch-1.3.83
Gyula
-- Gyula Matics mgyula@sch.bme.hu Linux!
| |