Newsgroups: php.internals Path: news.php.net Xref: news.php.net php.internals:104380 Return-Path: Delivered-To: mailing list internals@lists.php.net Received: (qmail 55222 invoked from network); 13 Feb 2019 12:43:41 -0000 Received: from unknown (HELO mail-wr1-f53.google.com) (209.85.221.53) by pb1.pair.com with SMTP; 13 Feb 2019 12:43:41 -0000 Received: by mail-wr1-f53.google.com with SMTP id v16so1601826wrn.11 for ; Wed, 13 Feb 2019 01:26:47 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=mime-version:references:in-reply-to:from:date:message-id:subject:to :cc; bh=1e6tM74A+ATYjShQ5BKAmJUgKw2RRhEXFMMClNw0FJo=; b=UUpstvtgCeMNOpuHT+PeIbVm6WaTJENzQINYwfYdVbECmJ286yW0JuwWqXQNVrOfs8 2kAhfOCja8cdX6H0BGXWH+lk7iDikSr0d0iZMh0k8AFzI6FWieXPM7e0XVjzr7PjzeW2 a8Ik+8LPIcckVYiB7oplnt51f2zFBWRFOglZlzLkDCcT/AuCTYb0lz8dqqQMkOeWLzen 2ACE1vXWpOXtblJdl+iBRPAvBpJ+BIwRgrfZeHP+ECX8hzPYlZt2BvJAF//aoMIr4dAV aTCdkc4ZWpsZtn7dRwkcjr76CKxw3wjpe0gYsBJ8ewo4pmHYTqeyU4zcA870+iiywKUC CPTA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:mime-version:references:in-reply-to:from:date :message-id:subject:to:cc; bh=1e6tM74A+ATYjShQ5BKAmJUgKw2RRhEXFMMClNw0FJo=; b=HD+tZ0/CCxGMUm73i935AXA3O+TCRWMoXctD7kg9wFpDz8m9mH27uH6jnGZmglaVKq Y7W2mWsjqisX5bnEqNkCYmcFKap99IVnHElODbCE3VySH8W5qspC5cdzxWd0p/fsA7M9 oeTyLL2zONm5D76rY/a6hkHlFRor1wdnOtjzdOePEzjPOsVyLkqkZdlFVCK2IoWz1wy1 HJp2QqiRWPGs/jfLOhI6pGUkAqGPJ2E1ez0yOPnw33tg16yRzL/hKosiVhaKukSUUX+R KkdYv+y+bOr14DfFgFg4yUgFhqGtPfJtpvK23NukLQ6OqHuUh/bZ7o4j4OQf9KnvOeNn faMw== X-Gm-Message-State: AHQUAuZCvS7b2qk0unGPAEM22j1eyGb74xGeW0iVetan3xA+CFbqli8B HtMYNb2gkbG+iyZK2jvkBclQtaTsguZyZR7V2TA= X-Google-Smtp-Source: AHgI3IbMYW1PVpYJcJsLeQBenNp3wH0CXvzoFR4TeIFycKtGRMpbtsTFBcUX4ElWgdnNtmhoGDx950iR6+8iwa7sdWI= X-Received: by 2002:adf:fdc3:: with SMTP id i3mr5917107wrs.252.1550050006411; Wed, 13 Feb 2019 01:26:46 -0800 (PST) MIME-Version: 1.0 References: In-Reply-To: Date: Wed, 13 Feb 2019 10:26:35 +0100 Message-ID: To: Nikita Popov Cc: Dmitry Stogov , Bob Weinand , Nikita Popov , "Anatol Belski (ab@php.net)" , PHP internals Content-Type: multipart/alternative; boundary="000000000000042f340581c32484" Subject: Re: ZTS improvement idea From: krakjoe@gmail.com (Joe Watkins) --000000000000042f340581c32484 Content-Type: text/plain; charset="UTF-8" Morning all, I'm very pleased to see effort going into this, and the resulting ideas. I don't have anything to add about the implementation. Since most people are not interested in ZTS, there aren't going to be many voices pushing you to actually make changes, so I want to be that voice. The ZTS build is very commonly used in Windows today, and I'm sure everyone doing that would appreciate you making these changes as soon as reasonable, which looks like 7.4, beyond that before we can talk about developing JIT support in Windows, ZTS support must be in place. Thanks for the effort so far. Cheers Joe On Wed, 13 Feb 2019 at 10:02, Nikita Popov wrote: > On Wed, Feb 13, 2019 at 9:26 AM Dmitry Stogov wrote: > >> Hi, >> >> >> After JIT+ZTS related discussion with Joe and Bob, and some related >> analyzes. >> >> I came to more or less formed design idea and described it at >> https://wiki.php.net/zts-improvement >> >> This is not an RFC and I'm not sure, if I like to implement TSRM changes >> myself now. >> >> >> Comments are welcome. >> > > Hi Dmitry, > > Thanks for looking into this issue. As a possible alternative I would like > to suggest the use of ZEND_TLS (__thread) for the EG/CG/BG etc globals on > Linux (on Windows this is not possible due to DLL linkage restrictions). > __thread generates very good code (single load over %fs segment with > constant address) if the global is defined and used in an executable. I'm > not sure what kind of code it generates when TLS is declared in an > executable and used in a shared object, but as direct access from > extensions to the engine globals shouldn't be common, it's probably okay > even if it uses __tls_get_addr. > > Nikita > --000000000000042f340581c32484--