Date: Mon, 24 Jan 2000 23:04:52 -0800 (PST) From: John Polstra <jdp@polstra.com> To: current@freebsd.org Subject: Need testers for libc_r patch Message-ID: <XFMail.000124230452.jdp@polstra.com>
next in thread | raw e-mail | index | archive | help
This message is in MIME format --_=XFMail.1.3.p0.FreeBSD:000124230452:13367=_ Content-Type: text/plain; charset=us-ascii The attached patch makes libc_r use the recently added hooks in the dynamic linker to provide locking so that the dynamic linker is thread-safe. I have tested it in a simple program and I believe it works OK. If any of you have a -current system with a non-trivial libc_r application, I would appreciate it if you'd give this patch a try and let me know whether you see any problems with it. You can apply the patch by getting into "src/lib/libc_r" and typing "patch -IEp < libc_r.patch" Also, if anybody can point me to programs in the ports collection that use libc_r and aren't too hard to set up and run, that would be helpful too. Thanks, John --- John Polstra jdp@polstra.com John D. Polstra & Co., Inc. Seattle, Washington USA "Disappointment is a good sign of basic intelligence." -- Chögyam Trungpa --_=XFMail.1.3.p0.FreeBSD:000124230452:13367=_ Content-Disposition: attachment; filename="libc_r.patch" Content-Transfer-Encoding: base64 Content-Description: libc_r.patch Content-Type: application/octet-stream; name=libc_r.patch; SizeOnDisk=4952 SW5kZXg6IHV0aHJlYWQvTWFrZWZpbGUuaW5jCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KUkNTIGZpbGU6IC9ob21lL25j dnMvc3JjL2xpYi9saWJjX3IvdXRocmVhZC9NYWtlZmlsZS5pbmMsdgpyZXRyaWV2aW5nIHJldmlz aW9uIDEuMjIKZGlmZiAtdSAtcjEuMjIgTWFrZWZpbGUuaW5jCi0tLSB1dGhyZWFkL01ha2VmaWxl LmluYwkyMDAwLzAxLzIwIDA3OjU0OjQ4CTEuMjIKKysrIHV0aHJlYWQvTWFrZWZpbGUuaW5jCTIw MDAvMDEvMjUgMDY6NDA6MTUKQEAgLTMzLDYgKzMzLDcgQEAKIAl1dGhyZWFkX2Nvbm5lY3QuYyBc CiAJdXRocmVhZF9jcmVhdGUuYyBcCiAJdXRocmVhZF9kZXRhY2guYyBcCisJdXRocmVhZF9kbGxv Y2suYyBcCiAJdXRocmVhZF9kdXAuYyBcCiAJdXRocmVhZF9kdXAyLmMgXAogCXV0aHJlYWRfZXF1 YWwuYyBcCkluZGV4OiB1dGhyZWFkL3B0aHJlYWRfcHJpdmF0ZS5oCj09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KUkNTIGZp bGU6IC9ob21lL25jdnMvc3JjL2xpYi9saWJjX3IvdXRocmVhZC9wdGhyZWFkX3ByaXZhdGUuaCx2 CnJldHJpZXZpbmcgcmV2aXNpb24gMS4zNgpkaWZmIC11IC1yMS4zNiBwdGhyZWFkX3ByaXZhdGUu aAotLS0gdXRocmVhZC9wdGhyZWFkX3ByaXZhdGUuaAkyMDAwLzAxLzIwIDIxOjUzOjU4CTEuMzYK KysrIHV0aHJlYWQvcHRocmVhZF9wcml2YXRlLmgJMjAwMC8wMS8yNSAwNjo1NToyMgpAQCAtMTAz Niw2ICsxMDM2LDcgQEAKIHZvaWQgICAgX3RocmVhZF9mZF91bmxvY2tfb3duZWQocHRocmVhZF90 KTsKIHZvaWQgICAgKl90aHJlYWRfY2xlYW51cChwdGhyZWFkX3QpOwogdm9pZCAgICBfdGhyZWFk X2NsZWFudXBzcGVjaWZpYyh2b2lkKTsKK3ZvaWQgICAgX3RocmVhZF9kbGxvY2tpbml0KHZvaWQp Owogdm9pZCAgICBfdGhyZWFkX2R1bXBfaW5mbyh2b2lkKTsKIHZvaWQgICAgX3RocmVhZF9pbml0 KHZvaWQpOwogdm9pZCAgICBfdGhyZWFkX2tlcm5fc2NoZWQodWNvbnRleHRfdCAqKTsKSW5kZXg6 IHV0aHJlYWQvdXRocmVhZF9kbGxvY2suYwo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ClJDUyBmaWxlOiB1dGhyZWFkX2Rs bG9jay5jCmRpZmYgLU4gdXRocmVhZF9kbGxvY2suYwotLS0gL2Rldi9udWxsCU1vbiBKYW4gMjQg MjE6NTU6NTMgMjAwMAorKysgdXRocmVhZF9kbGxvY2suYwlNb24gSmFuIDI0IDIyOjQ0OjIxIDIw MDAKQEAgLTAsMCArMSw4OCBAQAorLyoKKyAqIENvcHlyaWdodCAoYykgMjAwMCBKb2huIEQuIFBv bHN0cmEKKyAqIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisgKgorICogUmVkaXN0cmlidXRpb24gYW5k IHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0CisgKiBtb2Rp ZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRp dGlvbnMKKyAqIGFyZSBtZXQ6CisgKiAxLiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUg bXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodAorICogICAgbm90aWNlLCB0aGlzIGxpc3Qg b2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgorICogMi4gUmVkaXN0 cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5cmln aHQKKyAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dp bmcgZGlzY2xhaW1lciBpbiB0aGUKKyAqICAgIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1h dGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCisgKiAzLiBBbGwgYWR2ZXJ0 aXNpbmcgbWF0ZXJpYWxzIG1lbnRpb25pbmcgZmVhdHVyZXMgb3IgdXNlIG9mIHRoaXMgc29mdHdh cmUKKyAqICAgIG11c3QgZGlzcGxheSB0aGUgZm9sbG93aW5nIGFja25vd2xlZGdlbWVudDoKKyAq CVRoaXMgcHJvZHVjdCBpbmNsdWRlcyBzb2Z0d2FyZSBkZXZlbG9wZWQgYnkgSm9obiBCaXJyZWxs LgorICogNC4gTmVpdGhlciB0aGUgbmFtZSBvZiB0aGUgYXV0aG9yIG5vciB0aGUgbmFtZXMgb2Yg YW55IGNvLWNvbnRyaWJ1dG9ycworICogICAgbWF5IGJlIHVzZWQgdG8gZW5kb3JzZSBvciBwcm9t b3RlIHByb2R1Y3RzIGRlcml2ZWQgZnJvbSB0aGlzIHNvZnR3YXJlCisgKiAgICB3aXRob3V0IHNw ZWNpZmljIHByaW9yIHdyaXR0ZW4gcGVybWlzc2lvbi4KKyAqCisgKiBUSElTIFNPRlRXQVJFIElT IFBST1ZJREVEIEJZIFRIRSBBVVRIT1IgQU5EIENPTlRSSUJVVE9SUyBgYEFTIElTJycgQU5ECisg KiBBTlkgRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVCBM SU1JVEVEIFRPLCBUSEUKKyAqIElNUExJRUQgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkg QU5EIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFCisgKiBBUkUgRElTQ0xBSU1FRC4g IElOIE5PIEVWRU5UIFNIQUxMIFRIRSBBVVRIT1IgT1IgQ09OVFJJQlVUT1JTIEJFIExJQUJMRQor ICogRk9SIEFOWSBESVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLCBTUEVDSUFMLCBFWEVNUExB UlksIE9SIENPTlNFUVVFTlRJQUwKKyAqIERBTUFHRVMgKElOQ0xVRElORywgQlVUIE5PVCBMSU1J VEVEIFRPLCBQUk9DVVJFTUVOVCBPRiBTVUJTVElUVVRFIEdPT0RTCisgKiBPUiBTRVJWSUNFUzsg TE9TUyBPRiBVU0UsIERBVEEsIE9SIFBST0ZJVFM7IE9SIEJVU0lORVNTIElOVEVSUlVQVElPTikK KyAqIEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkgVEhFT1JZIE9GIExJQUJJTElUWSwgV0hFVEhF UiBJTiBDT05UUkFDVCwgU1RSSUNUCisgKiBMSUFCSUxJVFksIE9SIFRPUlQgKElOQ0xVRElORyBO RUdMSUdFTkNFIE9SIE9USEVSV0lTRSkgQVJJU0lORyBJTiBBTlkgV0FZCisgKiBPVVQgT0YgVEhF IFVTRSBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZ IE9GCisgKiBTVUNIIERBTUFHRS4KKyAqCisgKiAkRnJlZUJTRCQKKyAqLworCisjaW5jbHVkZSA8 ZGxmY24uaD4KKyNpbmNsdWRlIDxzdGRsaWIuaD4KKyNpZmRlZiBfVEhSRUFEX1NBRkUKKyNpbmNs dWRlIDxwdGhyZWFkLmg+CisjaW5jbHVkZSAicHRocmVhZF9wcml2YXRlLmgiCisKK3N0YXRpYyB2 b2lkICoKK2xvY2tfY3JlYXRlKHZvaWQgKmN0eCkKK3sKKwlwdGhyZWFkX3J3bG9ja190ICpsb2Nr OworCisJaWYgKChsb2NrID0gbWFsbG9jKHNpemVvZihwdGhyZWFkX3J3bG9ja190KSkpID09IE5V TEwpCisJCVBBTklDKCJDYW5ub3QgYWxsb2NhdGUgcndsb2NrIGZvciBkeW5hbWljIGxpbmtlciIp OworCWlmIChwdGhyZWFkX3J3bG9ja19pbml0KGxvY2ssIE5VTEwpICE9IDApCisJCVBBTklDKCJD YW5ub3QgaW5pdGlhbGl6ZSByd2xvY2sgZm9yIGR5bmFtaWMgbGlua2VyIik7CisJcmV0dXJuIGxv Y2s7Cit9CisKK3N0YXRpYyB2b2lkCitybG9ja19hY3F1aXJlKHZvaWQgKmxvY2spCit7CisJaWYg KHB0aHJlYWRfcndsb2NrX3JkbG9jaygocHRocmVhZF9yd2xvY2tfdCAqKWxvY2spICE9IDApCisJ CVBBTklDKCJDYW5ub3QgbG9jayBkeW5hbWljIGxpbmtlciByd2xvY2sgZm9yIHJlYWRpbmciKTsK K30KKworc3RhdGljIHZvaWQKK3dsb2NrX2FjcXVpcmUodm9pZCAqbG9jaykKK3sKKwlpZiAocHRo cmVhZF9yd2xvY2tfd3Jsb2NrKChwdGhyZWFkX3J3bG9ja190ICopbG9jaykgIT0gMCkKKwkJUEFO SUMoIkNhbm5vdCBsb2NrIGR5bmFtaWMgbGlua2VyIHJ3bG9jayBmb3Igd3JpdGluZyIpOworfQor CitzdGF0aWMgdm9pZAorbG9ja19yZWxlYXNlKHZvaWQgKmxvY2spCit7CisJaWYgKHB0aHJlYWRf cndsb2NrX3VubG9jaygocHRocmVhZF9yd2xvY2tfdCAqKWxvY2spICE9IDApCisJCVBBTklDKCJD YW5ub3QgdW5sb2NrIGR5bmFtaWMgbGlua2VyIHJ3bG9jayIpOworfQorCitzdGF0aWMgdm9pZAor bG9ja19kZXN0cm95KHZvaWQgKmxvY2spCit7CisJaWYgKHB0aHJlYWRfcndsb2NrX2Rlc3Ryb3ko KHB0aHJlYWRfcndsb2NrX3QgKilsb2NrKSAhPSAwKQorCQlQQU5JQygiQ2Fubm90IGRlc3Ryb3kg ZHluYW1pYyBsaW5rZXIgcndsb2NrIik7CisJZnJlZShsb2NrKTsKK30KKwordm9pZAorX3RocmVh ZF9kbGxvY2tpbml0KHZvaWQpCit7CisJZGxsb2NraW5pdChOVUxMLCBsb2NrX2NyZWF0ZSwgcmxv Y2tfYWNxdWlyZSwgd2xvY2tfYWNxdWlyZSwKKwkgICAgbG9ja19yZWxlYXNlLCBsb2NrX2Rlc3Ry b3ksIE5VTEwpOworfQorI2VuZGlmCkluZGV4OiB1dGhyZWFkL3V0aHJlYWRfaW5pdC5jCj09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT0KUkNTIGZpbGU6IC9ob21lL25jdnMvc3JjL2xpYi9saWJjX3IvdXRocmVhZC91dGhyZWFk X2luaXQuYyx2CnJldHJpZXZpbmcgcmV2aXNpb24gMS4yMwpkaWZmIC11IC1yMS4yMyB1dGhyZWFk X2luaXQuYwotLS0gdXRocmVhZC91dGhyZWFkX2luaXQuYwkyMDAwLzAxLzE5IDA3OjA0OjQ3CTEu MjMKKysrIHV0aHJlYWQvdXRocmVhZF9pbml0LmMJMjAwMC8wMS8yNSAwNjozNjoyMQpAQCAtMzYw LDYgKzM2MCw5IEBACiAJICAgIHB0aHJlYWRfY29uZF9pbml0KCZfZ2NfY29uZCxOVUxMKSAhPSAw KQogCQlQQU5JQygiRmFpbGVkIHRvIGluaXRpYWxpc2UgZ2FyYmFnZSBjb2xsZWN0b3IgbXV0ZXgg b3IgY29uZHZhciIpOwogCisJLyogU2V0IHVwIHRoZSBsb2NraW5nIHRvIG1ha2UgdGhlIGR5bmFt aWMgbGlua2VyIHRocmVhZC1zYWZlLiAqLworCV90aHJlYWRfZGxsb2NraW5pdCgpOworCiAJZ2V0 dGltZW9mZGF5KCZrZXJuX2luY19wcmlvX3RpbWUsIE5VTEwpOwogCiAJcmV0dXJuOwo= --_=XFMail.1.3.p0.FreeBSD:000124230452:13367=_-- End of MIME message To Unsubscribe: send mail to majordomo@FreeBSD.org with "unsubscribe freebsd-current" in the body of the message
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?XFMail.000124230452.jdp>