Re: CLONE_KILLVMCH flag proposal

Alon Ziv (alonz@guidelet.com)
Tue, 15 Feb 2000 23:17:27 +0200


This is a multi-part message in MIME format.

------=_NextPart_000_002C_01BF780A.D3997980
Content-Type: text/plain;
charset="iso-8859-1"
Content-Transfer-Encoding: 7bit

Indeed, it is possible to just use the 'parent death' signal from prctl()
for this purpose.
Once (not so long ago...), when Tim Wragg was working on pthread
enhancements,
we tried out a (tricky) method which made the manager thread the parent of
all
other threads in the process (including the main thread); after this, if the
manager
failed, other threads got a signal (which they invited via prctl()) and
died.

----- Original Message -----
From: Richard Gooch <rgooch@ras.ucalgary.ca>
To: Pavel Krauz <xkr@nettest.dk>
Cc: <linux-kernel@vger.rutgers.edu>; <torvalds@transmeta.com>
Sent: Tuesday, February 15, 2000 21:38
Subject: Re: CLONE_KILLVMCH flag proposal

> Pavel Krauz writes:
> > Hello
> >
> > I am trying to modify pthread library a way in which it would not
> > need manager thread. It seems that it is pretty feasible with
> > CLONE_PARENT but one thing is missing.
> >
> > If the main thread dies due to some fatal error other threads will live
> > further. This problem is not easily solved without manager thread so
> > kernel will have to help here.
> >
> > This is an proposal for CLONE_KILLVMCH. The process/thread that
> > has this flag set will kill all its children that share the same VM
> > (were created with CLONE_VM) when it dies.
> > This way the main thread will clean threads when some fatal error
> > or kill occurs that cannot be caught in user space.
> > I think that this is the only obstacle to make pthread support without
> > manager thread and thus solve performance problems with creating and
> > managing threads.
> >
> > Any ideas are highly appreciated.
> >
> > Here goes the patch that implement CLONE_KILLVMCH. I think it is not
> > perfect but consider something like this as addition to the kernel.
>
> How about looking at prctl(2), which was added for just this purpose?
>
> Regards,
>
> Richard....
> Old: rgooch@atnf.csiro.au
> Current: rgooch@ras.ucalgary.ca
>
> -
> 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/
>

------=_NextPart_000_002C_01BF780A.D3997980
Content-Type: application/x-pkcs7-signature;
name="smime.p7s"
Content-Transfer-Encoding: base64
Content-Disposition: attachment;
filename="smime.p7s"

MIAGCSqGSIb3DQEHAqCAMIACAQExCzAJBgUrDgMCGgUAMIAGCSqGSIb3DQEHAQAAoIIIqjCCAl0w
ggHGoAMCAQICAwHtzjANBgkqhkiG9w0BAQQFADCBlDELMAkGA1UEBhMCWkExFTATBgNVBAgTDFdl
c3Rlcm4gQ2FwZTEUMBIGA1UEBxMLRHVyYmFudmlsbGUxDzANBgNVBAoTBlRoYXd0ZTEdMBsGA1UE
CxMUQ2VydGlmaWNhdGUgU2VydmljZXMxKDAmBgNVBAMTH1BlcnNvbmFsIEZyZWVtYWlsIFJTQSAx
OTk5LjkuMTYwHhcNMDAwMTEyMTQ1NTQ0WhcNMDEwMTExMTQ1NTQ0WjBEMR8wHQYDVQQDExZUaGF3
dGUgRnJlZW1haWwgTWVtYmVyMSEwHwYJKoZIhvcNAQkBFhJhbG9uekBndWlkZWxldC5jb20wXDAN
BgkqhkiG9w0BAQEFAANLADBIAkEAs4w8pTfHKFoYeuSElZem6WtW3oP2jK+l5SIblBcCAS8h4392
Rccc+8h+ycUevdoRIK9tCY3Vg5TtuOUJ/kqqFQIDAQABo1AwTjAdBgNVHREEFjAUgRJhbG9uekBn
dWlkZWxldC5jb20wDAYDVR0TAQH/BAIwADAfBgNVHSMEGDAWgBSIq/Fgg2ZV9ORYx0YdwGG9I9fD
jDANBgkqhkiG9w0BAQQFAAOBgQBbtjZgxGV34v2WqmbPai8Q10t/s7BkISX65Erv0YtQ8BuPmAsB
F/qk6r8tmiRk0c1lSZLWkV7fiK9BmT7eXrQ9oDdYawdoJc7N6tkJ4UrkrYcgmRMrZ8rJAhTg4IqW
Docxr73/Qi2JHJKEGYJevjtzasaohCxarwbw5JyjBg3zyTCCAxQwggJ9oAMCAQICAQswDQYJKoZI
hvcNAQEEBQAwgdExCzAJBgNVBAYTAlpBMRUwEwYDVQQIEwxXZXN0ZXJuIENhcGUxEjAQBgNVBAcT
CUNhcGUgVG93bjEaMBgGA1UEChMRVGhhd3RlIENvbnN1bHRpbmcxKDAmBgNVBAsTH0NlcnRpZmlj
YXRpb24gU2VydmljZXMgRGl2aXNpb24xJDAiBgNVBAMTG1RoYXd0ZSBQZXJzb25hbCBGcmVlbWFp
bCBDQTErMCkGCSqGSIb3DQEJARYccGVyc29uYWwtZnJlZW1haWxAdGhhd3RlLmNvbTAeFw05OTA5
MTYxNDAxNDBaFw0wMTA5MTUxNDAxNDBaMIGUMQswCQYDVQQGEwJaQTEVMBMGA1UECBMMV2VzdGVy
biBDYXBlMRQwEgYDVQQHEwtEdXJiYW52aWxsZTEPMA0GA1UEChMGVGhhd3RlMR0wGwYDVQQLExRD
ZXJ0aWZpY2F0ZSBTZXJ2aWNlczEoMCYGA1UEAxMfUGVyc29uYWwgRnJlZW1haWwgUlNBIDE5OTku
OS4xNjCBnzANBgkqhkiG9w0BAQEFAAOBjQAwgYkCgYEAs2lal9TQFgt6tcVd6SGcI3LNEkxL937P
x/vKciT0QlKsV5Xje2F6F4Tn/XI5OJS06u1lp5IGXr3gZfYZu5R5dkw+uWhwdYQc9BF0ALwFLE8J
AxcxzPRB1HLGpl3iiESwiy7ETfHw1oU+bPOVlHiRfkDpnNGNFVeOwnPlMN5G9U8CAwEAAaM3MDUw
EgYDVR0TAQH/BAgwBgEB/wIBADAfBgNVHSMEGDAWgBRyScJzNMZV9At2coF+d/SH58ayDjANBgkq
hkiG9w0BAQQFAAOBgQBrxlnpMfrptuyxA9jfcnL+kWBI6sZV3XvwZ47GYXDnbcKlN9idtxcoVgWL
3Vx1b8aRkMZsZnET0BB8a5FvhuAhNi3B1+qyCa3PLW3Gg1Kb+7v+nIed/LfpdJLkXJeu/H6syg1v
cnpnLGtz9Yb5nfUAbvQdB86dnoJjKe+TCX5V3jCCAy0wggKWoAMCAQICAQAwDQYJKoZIhvcNAQEE
BQAwgdExCzAJBgNVBAYTAlpBMRUwEwYDVQQIEwxXZXN0ZXJuIENhcGUxEjAQBgNVBAcTCUNhcGUg
VG93bjEaMBgGA1UEChMRVGhhd3RlIENvbnN1bHRpbmcxKDAmBgNVBAsTH0NlcnRpZmljYXRpb24g
U2VydmljZXMgRGl2aXNpb24xJDAiBgNVBAMTG1RoYXd0ZSBQZXJzb25hbCBGcmVlbWFpbCBDQTEr
MCkGCSqGSIb3DQEJARYccGVyc29uYWwtZnJlZW1haWxAdGhhd3RlLmNvbTAeFw05NjAxMDEwMDAw
MDBaFw0yMDEyMzEyMzU5NTlaMIHRMQswCQYDVQQGEwJaQTEVMBMGA1UECBMMV2VzdGVybiBDYXBl
MRIwEAYDVQQHEwlDYXBlIFRvd24xGjAYBgNVBAoTEVRoYXd0ZSBDb25zdWx0aW5nMSgwJgYDVQQL
Ex9DZXJ0aWZpY2F0aW9uIFNlcnZpY2VzIERpdmlzaW9uMSQwIgYDVQQDExtUaGF3dGUgUGVyc29u
YWwgRnJlZW1haWwgQ0ExKzApBgkqhkiG9w0BCQEWHHBlcnNvbmFsLWZyZWVtYWlsQHRoYXd0ZS5j
b20wgZ8wDQYJKoZIhvcNAQEBBQADgY0AMIGJAoGBANRp19SwlGRbcelH2AxRtupykbCEXn0tDY97
Et+FJXUodDpCLGMnn5V7S+9+GYcdhuqj3bnOlmQawhRuRKx85o/oTQ9xH0A4pgCjh3j2+ZSGXq3q
wF5269kUo11uenwMpUtVfwYZKX+emibVars4JAhqmMex2qOYkf152+VaxBy5AgMBAAGjEzARMA8G
A1UdEwEB/wQFMAMBAf8wDQYJKoZIhvcNAQEEBQADgYEAx+ySfk749ZalZ2IqpPBNEWDQb41gWGGs
JrtSNVwIzzD7qEqWih9iQiOMFw/0umScF6xHKd+dmF7SbGBxXKKs3Hnj524ARx+1DSjoAp3kmv0T
9KbZfLH43F8jJgmRgHPQFBveQ6mDJfLmnC8Vyv6mq4oHdYsM3VGEa+T40c53ooExggGLMIIBhwIB
ATCBnDCBlDELMAkGA1UEBhMCWkExFTATBgNVBAgTDFdlc3Rlcm4gQ2FwZTEUMBIGA1UEBxMLRHVy
YmFudmlsbGUxDzANBgNVBAoTBlRoYXd0ZTEdMBsGA1UECxMUQ2VydGlmaWNhdGUgU2VydmljZXMx
KDAmBgNVBAMTH1BlcnNvbmFsIEZyZWVtYWlsIFJTQSAxOTk5LjkuMTYCAwHtzjAJBgUrDgMCGgUA
oIGGMBgGCSqGSIb3DQEJAzELBgkqhkiG9w0BBwEwHAYJKoZIhvcNAQkFMQ8XDTAwMDIxNTIzMTcy
N1owIwYJKoZIhvcNAQkEMRYEFONT+6oVgwT4sGkrV6NaCVi+G/D8MCcGCSqGSIb3DQEJDzEaMBgw
DQYIKoZIhvcNAwICASgwBwYFKw4DAh0wDQYJKoZIhvcNAQEBBQAEQD4T10D9o04ja5scLymXKFUg
mxjusTHmhbm88LH03th86MyUIDrjk6EqTSaWQzOAsyHCYy/wZJCZ2n+u70g5sFIAAAAAAAA=

------=_NextPart_000_002C_01BF780A.D3997980--

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