2.3.23pre4 problems on alpha

Jeff Dike (jdike@karaya.com)
Tue, 19 Oct 1999 20:36:23 -0400


borislav@lix.polytechnique.fr said:
Subject: Re: Emergent Call for help!
In-Reply-To: Your message of "Tue, 19 Oct 1999 20:33:32 +0200."
<19991019203332.A1571@wispa.polytechnique.fr>
Mime-Version: 1.0
Content-Type: text/plain; charset=us-ascii
Date: Tue, 19 Oct 1999 20:36:23 -0400
From: Jeff Dike <jdike@localhost>

> How difficult is it / when do you expect it to appear?

Not very/I don't know.

There are two things that need to be done to get an MP emulator:

- Give each process (and maybe each thread) its own address space. The tricky
part here is to share the kernel data. My current plan is to copy the data
segments into a file, unmap those segments, and map in the corresponding
sections of that file. Each process would do the same in its own address
space. This has the added benefit that it would greatly speed up context
switches in the uP kernel.

- Implement some kind of defensible locking. I think this means implementing
the lock/unlock primitives in terms of semaphores. This is straightforward,
except that the current interface has no provision for releasing lock data
when its data is freed, since there is no external data in a lock. This would
lead to bigtime semaphore leaks if [vk]malloced/[vk]freed structures contain
their own locks and are malloced/freed frequently. I'm currently pondering
some kind of semaphore GC. I'm wide open for ideas on this. If anyone knows
how to do this right, I'd love to know.

Jeff

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