Re: Modules. What's the deal?

Matics Gyula (mgyula@garfield.sch.bme.hu)
Wed, 10 Apr 1996 20:58:19 +0200 (MET DST)


> > 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!