On Mon, Apr 24, 2000 at 09:09:41PM +0200, Florian Lohoff wrote:
> > Yeah, I noted that it didn't make any difference to revert your change
> > except
> > that the algorithm breaks and I get spammed with zillions of ``hm, page
> > already marked as reserved'' messages when we try to reserve the already
> > reserved memory. Is it possible to detect this with the PROM version or
> > something?
> One might check if you walk through the memory table the
> arc gives back and free it via the bootmem api you can check whether
> you got back a memory chunk which contains the kernel (Or overlaps)
> and realloc it after freeing or just not free it up. Should be obvious
> and trivial after the change i made ...
I don't see why the kernel memory could ever be treated as free. Initially
the entire memory is considered to be allocated. Then all areas that are
free as per ARC(S) firmware get freed. The kernel itself should of course
not be part of those areas. Then even later once again as part of
free_initmem() the rest of the ARC(S) memory gets freed, that's all the
firmware temporary areas. Again the kernel memory should not reside in
any of those areas. So I can't make any sense out of your changes?