Newsgroups: php.internals Path: news.php.net Xref: news.php.net php.internals:45912 Return-Path: Mailing-List: contact internals-help@lists.php.net; run by ezmlm Delivered-To: mailing list internals@lists.php.net Received: (qmail 2523 invoked from network); 30 Oct 2009 11:52:27 -0000 Received: from unknown (HELO lists.php.net) (127.0.0.1) by localhost with SMTP; 30 Oct 2009 11:52:27 -0000 Authentication-Results: pb1.pair.com header.from=yoarvi@gmail.com; sender-id=pass; domainkeys=bad Authentication-Results: pb1.pair.com smtp.mail=yoarvi@gmail.com; spf=pass; sender-id=pass Received-SPF: pass (pb1.pair.com: domain gmail.com designates 209.85.222.172 as permitted sender) DomainKey-Status: bad X-DomainKeys: Ecelerity dk_validate implementing draft-delany-domainkeys-base-01 X-PHP-List-Original-Sender: yoarvi@gmail.com X-Host-Fingerprint: 209.85.222.172 mail-pz0-f172.google.com Received: from [209.85.222.172] ([209.85.222.172:35491] helo=mail-pz0-f172.google.com) by pb1.pair.com (ecelerity 2.1.1.9-wez r(12769M)) with ESMTP id 6A/56-57355-A73DAEA4 for ; Fri, 30 Oct 2009 06:52:27 -0500 Received: by pzk2 with SMTP id 2so1866291pzk.26 for ; Fri, 30 Oct 2009 04:52:23 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=gamma; h=domainkey-signature:mime-version:received:date:message-id:subject :from:to:content-type; bh=r0nEZal0aAEkWfuM/kw7dTqDQKlgYQ9sRTP9URvpSeQ=; b=DLci4KB0QNxqJhEgGW3aN38+DpfNf8qVT3aakEAbyboOlZ9iMcNSZ2f/ZvOjdX2eSx XhX8ywrKrjhDWoxg4udXcYSqi18mDYAcMl0OmahdGnkJZ3voZ93wWfhESd5smWWJmpRl +ktFCC7jLBQK5JzbwG14Lp2PG3GJ/Hl3fJGAA= DomainKey-Signature: a=rsa-sha1; c=nofws; d=gmail.com; s=gamma; h=mime-version:date:message-id:subject:from:to:content-type; b=JxaUIvcB7aQlqsxuocQnp5OVeR2W233q4AzziMynDvIo8awCBHceYVKiBTHRZBPsmv 0Xbg9YDfxr9E9ZTMhDF8qrHc1ZA9Nw69mcHeBwAtgciBDJfrCebfuDftZfCy8SMXk3hf LAuoy/C8KofiSVEipo7XIle6xMba+0wocIpdY= MIME-Version: 1.0 Received: by 10.143.24.37 with SMTP id b37mr145221wfj.183.1256903543680; Fri, 30 Oct 2009 04:52:23 -0700 (PDT) Date: Fri, 30 Oct 2009 17:22:23 +0530 Message-ID: To: internals@lists.php.net Content-Type: multipart/mixed; boundary=001636e0a7583cee82047725a9e8 Subject: [PATCH] - Use pool_strdup instead of STRDUP in the NSAPI plugin for PHP From: yoarvi@gmail.com (Arvind Srinivasan) --001636e0a7583cee82047725a9e8 Content-Type: text/plain; charset=ISO-8859-1 The STRDUP macro in NSAPI ends up invoking pthread_get_specific each time. Since the PHP NSAPI plugin has access to the pool member of the Session variable, it can use pool_strdup instead of STRDUP. Please review the attached patch that uses pool_strdup instead of STRDUP thereby reducing the number of times pthread_getspecific is invoked when the PHP engine is executing within Sun Web Server. thanks, arvi --001636e0a7583cee82047725a9e8 Content-Type: text/plain; charset=US-ASCII; name="nsapi4-patch.txt" Content-Disposition: attachment; filename="nsapi4-patch.txt" Content-Transfer-Encoding: base64 X-Attachment-Id: f_g1ewdhtk0 ZGlmZiAtciA0YTRmNzYxYWM2ZWIgc2FwaS9uc2FwaS9uc2FwaS5jCi0tLSBhL3NhcGkvbnNhcGkv bnNhcGkuYwlUaHUgU2VwIDEwIDE3OjQ2OjM0IDIwMDkgKzA1MzAKKysrIGIvc2FwaS9uc2FwaS9u c2FwaS5jCVRodSBTZXAgMTAgMTc6NTk6NDQgMjAwOSArMDUzMApAQCAtMTIzLDE0ICsxMjMsNiBA QAogCiAvKiB0aGlzIHBhcmFtZXRlcnMgdG8gIlNlcnZpY2UiLyJFcnJvciIgYXJlIE5TQVBJIG9u ZXMgd2hpY2ggc2hvdWxkIG5vdCBiZSBwaHAuaW5pIGtleXMgYW5kIGFyZSBleGNsdWRlZCAqLwog c3RhdGljIGNoYXIgKm5zYXBpX2V4Y2x1ZGVfZnJvbV9pbmlfZW50cmllc1tdID0geyAiZm4iLCAi dHlwZSIsICJtZXRob2QiLCAiZGlyZWN0aXZlIiwgImNvZGUiLCAicmVhc29uIiwgInNjcmlwdCIs ICJidWNrZXQiLCBOVUxMIH07Ci0KLXN0YXRpYyBjaGFyICpuc2FwaV9zdHJkdXAoY2hhciAqc3Ry KQotewotCWlmIChzdHIgIT0gTlVMTCkgewotCQlyZXR1cm4gU1RSRFVQKHN0cik7Ci0JfQotCXJl dHVybiBOVUxMOwotfQogCiBzdGF0aWMgdm9pZCBuc2FwaV9mcmVlKHZvaWQgKmFkZHIpCiB7CkBA IC00OTEsNyArNDgzLDcgQEAKIAluc2FwaV9yZXF1ZXN0X2NvbnRleHQgKnJjID0gKG5zYXBpX3Jl cXVlc3RfY29udGV4dCAqKVNHKHNlcnZlcl9jb250ZXh0KTsKIAkKIAkvKiBjb3B5IHRoZSBoZWFk ZXIsIGJlY2F1c2UgTlNBUEkgbmVlZHMgcmVmb3JtYXR0aW5nIGFuZCB3ZSBkbyBub3Qgd2FudCB0 byBjaGFuZ2UgdGhlIHBhcmFtZXRlciAqLwotCWhlYWRlcl9uYW1lID0gbnNhcGlfc3RyZHVwKHNh cGlfaGVhZGVyLT5oZWFkZXIpOworCWhlYWRlcl9uYW1lID0gcG9vbF9zdHJkdXAocmMtPnNuLT5w b29sLCBzYXBpX2hlYWRlci0+aGVhZGVyKTsKIAogCS8qIGV4dHJhY3QgbmFtZSwgdGhpcyB3b3Jr cywgaWYgb25seSB0aGUgaGVhZGVyIHdpdGhvdXQgJzonIGlzIGdpdmVuLCB0b28gKi8KIAlpZiAo cCA9IHN0cmNocihoZWFkZXJfbmFtZSwgJzonKSkgewpAQCAtNTA1LDcgKzQ5Nyw3IEBACiAJCiAJ LyogcmVtb3ZlIHRoZSBoZWFkZXIgKi8KIAlwYXJhbV9mcmVlKHBibG9ja19yZW1vdmUoaGVhZGVy X25hbWUsIHJjLT5ycS0+c3J2aGRycykpOwotCW5zYXBpX2ZyZWUoaGVhZGVyX25hbWUpOworCXBv b2xfZnJlZShyYy0+c24tPnBvb2wsIGhlYWRlcl9uYW1lKTsKIAkKIAlyZXR1cm4gWkVORF9IQVNI X0FQUExZX0tFRVA7CiB9CkBAIC01MjksNyArNTIxLDcgQEAKIAkJY2FzZSBTQVBJX0hFQURFUl9B REQ6CiAJCWNhc2UgU0FQSV9IRUFERVJfUkVQTEFDRToKIAkJCS8qIGNvcHkgdGhlIGhlYWRlciwg YmVjYXVzZSBOU0FQSSBuZWVkcyByZWZvcm1hdHRpbmcgYW5kIHdlIGRvIG5vdCB3YW50IHRvIGNo YW5nZSB0aGUgcGFyYW1ldGVyICovCi0JCQloZWFkZXJfbmFtZSA9IG5zYXBpX3N0cmR1cChzYXBp X2hlYWRlci0+aGVhZGVyKTsKKwkJCWhlYWRlcl9uYW1lID0gcG9vbF9zdHJkdXAocmMtPnNuLT5w b29sLCBzYXBpX2hlYWRlci0+aGVhZGVyKTsKIAogCQkJLyogc3BsaXQgaGVhZGVyIGFuZCBhbGln biBwb2ludGVyIGZvciBjb250ZW50ICovCiAJCQloZWFkZXJfY29udGVudCA9IHN0cmNocihoZWFk ZXJfbmFtZSwgJzonKTsKQEAgLTU1Miw3ICs1NDQsNyBAQAogCQkJCXBibG9ja19udmluc2VydCho ZWFkZXJfbmFtZSwgaGVhZGVyX2NvbnRlbnQsIHJjLT5ycS0+c3J2aGRycyk7CiAJCQl9CiAJCQkK LQkJCW5zYXBpX2ZyZWUoaGVhZGVyX25hbWUpOworCQkJcG9vbF9mcmVlKHJjLT5zbi0+cG9vbCwg aGVhZGVyX25hbWUpOwogCQkJcmV0dXJuIFNBUElfSEVBREVSX0FERDsKIAkJCQogCQlkZWZhdWx0 Ogo= --001636e0a7583cee82047725a9e8--