[M3devel] 5.8.6 LINUXLIBC6 breakage, kernel 2.6.23, glibc-2.6-4
Olaf Wagner
wagner at elegosoft.com
Thu Apr 21 16:47:33 CEST 2011
Quoting Tony Hosking <hosking at cs.purdue.edu>:
> I'm not familiar with the architecture of CVSup.
>
> On Apr 21, 2011, at 10:28 AM, Hendrik Boom wrote:
>
>> On Thu, Apr 21, 2011 at 10:20:54AM -0400, Tony Hosking wrote:
>>>
>>> On Apr 21, 2011, at 9:19 AM, Hendrik Boom wrote:
>>>
>>>> On Wed, Apr 20, 2011 at 10:58:06AM -0400, Tony Hosking wrote:
>>>>> Agreed. But CVSup used it and we were trying to be supportive.
>>>>
>>>> So, at present, CVSup presumably works with user threads.
>>>> Maybe the cure is to fix CVSup instead of fork().
>>>>
>>>> Why does CVSup needs a fork() that preserves all threads? Is
>>>> it essential to its design, or incidental?
>>>
>>> CVSup uses fork in an ill-defined way. fork is only well-defined
>>> for use as fork+exec. So, the fact that there are continuing
>>> threads is immaterial. CVSup wants to continue doing real work
>>> (without exec) after fork.
>>
>> Does it need to use fork() at all? Wuld it suffice to use Modula 3's
>> own thread system?
Not for real word server applications, where one problem in a user
session would crash dozens of other sessions. At least this was what
John Polstra reported. The additional safety of separate address
spaces _has_ its advantages.
I thought CVSup had been changed to work with pthreads though in CM3?
Or do I misremember?
Anyway, this shouldn't be our most important problem, but rather make
System pthreads and also M3 user threads work in a reliable and
fault-free way again.
Olaf
--
Olaf Wagner -- elego Software Solutions GmbH
Gustav-Meyer-Allee 25 / Gebäude 12, 13355 Berlin, Germany
phone: +49 30 23 45 86 96 mobile: +49 177 2345 869 fax: +49 30 23 45 86 95
http://www.elegosoft.com | Geschäftsführer: Olaf Wagner | Sitz: Berlin
Handelregister: Amtsgericht Charlottenburg HRB 77719 | USt-IdNr: DE163214194
More information about the M3devel
mailing list