You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@trafficserver.apache.org by jpeach <gi...@git.apache.org> on 2016/10/11 20:52:33 UTC

[GitHub] trafficserver pull request #1096: TS-4955: Remove the global mutex from the ...

GitHub user jpeach opened a pull request:

    https://github.com/apache/trafficserver/pull/1096

    TS-4955: Remove the global mutex from the plugin session acceptor.

    ``plugin_http_accept`` has a global mutex which can be contended by protocol plugins. We don't require locking on ``HttpSessionAccept`` objects and the normal server port accept objects are not locked.


You can merge this pull request into a Git repository by running:

    $ git pull https://github.com/jpeach/trafficserver fix/4955

Alternatively you can review and apply these changes as the patch at:

    https://github.com/apache/trafficserver/pull/1096.patch

To close this pull request, make a commit to your master/trunk branch
with (at least) the following in the commit message:

    This closes #1096
    
----
commit 733c6113790fd5eb26492e1df3a14447118c6e40
Author: James Peach <jp...@apache.org>
Date:   2016-10-11T19:07:59Z

    TS-4955: Assign the Plugin VC acceptor at allocation time.
    
    Since we always require a continuation to receive the accept event,
    just require it at allocation time, rather than requiring the caller to
    remember to call an additional function.

commit c5906cae914787c4c6acf14f590a736b1eff9984
Author: James Peach <jp...@apache.org>
Date:   2016-10-11T20:44:42Z

    TS-4955: Allow Plugin VC accept continuation to be unlocked.
    
    We never need to hold the continuation lock when delivering
    NET_EVENT_ACCEPT, so allow a NULL continuation mutex in PluginVC to
    prevent lock contention on the plugin_http_accept object. We still hold
    the lock if it is present since in the intercept cases, the continuation
    can come from plugins that may be expecting us to lock.

----


---
If your project is set up for it, you can reply to this email and have your
reply appear on GitHub as well. If your project does not have this feature
enabled and wishes so, or if the feature is enabled but not working, please
contact infrastructure at infrastructure@apache.org or file a JIRA ticket
with INFRA.
---

[GitHub] trafficserver issue #1096: TS-4955: Remove the global mutex from the plugin ...

Posted by atsci <gi...@git.apache.org>.
Github user atsci commented on the issue:

    https://github.com/apache/trafficserver/pull/1096
  
    FreeBSD build *successful*! See https://ci.trafficserver.apache.org/job/Github-FreeBSD/970/ for details.
     



---
If your project is set up for it, you can reply to this email and have your
reply appear on GitHub as well. If your project does not have this feature
enabled and wishes so, or if the feature is enabled but not working, please
contact infrastructure at infrastructure@apache.org or file a JIRA ticket
with INFRA.
---

[GitHub] trafficserver issue #1096: TS-4955: Remove the global mutex from the plugin ...

Posted by atsci <gi...@git.apache.org>.
Github user atsci commented on the issue:

    https://github.com/apache/trafficserver/pull/1096
  
    Linux build *successful*! See https://ci.trafficserver.apache.org/job/Github-Linux/872/ for details.
     



---
If your project is set up for it, you can reply to this email and have your
reply appear on GitHub as well. If your project does not have this feature
enabled and wishes so, or if the feature is enabled but not working, please
contact infrastructure at infrastructure@apache.org or file a JIRA ticket
with INFRA.
---

[GitHub] trafficserver issue #1096: TS-4955: Remove the global mutex from the plugin ...

Posted by atsci <gi...@git.apache.org>.
Github user atsci commented on the issue:

    https://github.com/apache/trafficserver/pull/1096
  
    FreeBSD build *successful*! See https://ci.trafficserver.apache.org/job/Github-FreeBSD/980/ for details.
     



---
If your project is set up for it, you can reply to this email and have your
reply appear on GitHub as well. If your project does not have this feature
enabled and wishes so, or if the feature is enabled but not working, please
contact infrastructure at infrastructure@apache.org or file a JIRA ticket
with INFRA.
---

[GitHub] trafficserver pull request #1096: TS-4955: Remove the global mutex from the ...

Posted by bryancall <gi...@git.apache.org>.
Github user bryancall commented on a diff in the pull request:

    https://github.com/apache/trafficserver/pull/1096#discussion_r83042781
  
    --- Diff: proxy/InkAPI.cc ---
    @@ -6663,8 +6661,7 @@ TSHttpTxnServerIntercept(TSCont contp, TSHttpTxn txnp)
       sdk_assert(sdk_sanity_check_mutex(i->mutex) == TS_SUCCESS);
     
       http_sm->plugin_tunnel_type = HTTP_PLUGIN_AS_SERVER;
    -  http_sm->plugin_tunnel      = PluginVCCore::alloc();
    -  http_sm->plugin_tunnel->set_accept_cont(i);
    --- End diff --
    
    "i" - Should be a better variable name.


---
If your project is set up for it, you can reply to this email and have your
reply appear on GitHub as well. If your project does not have this feature
enabled and wishes so, or if the feature is enabled but not working, please
contact infrastructure at infrastructure@apache.org or file a JIRA ticket
with INFRA.
---

[GitHub] trafficserver pull request #1096: TS-4955: Remove the global mutex from the ...

Posted by jpeach <gi...@git.apache.org>.
Github user jpeach closed the pull request at:

    https://github.com/apache/trafficserver/pull/1096


---
If your project is set up for it, you can reply to this email and have your
reply appear on GitHub as well. If your project does not have this feature
enabled and wishes so, or if the feature is enabled but not working, please
contact infrastructure at infrastructure@apache.org or file a JIRA ticket
with INFRA.
---

[GitHub] trafficserver issue #1096: TS-4955: Remove the global mutex from the plugin ...

Posted by atsci <gi...@git.apache.org>.
Github user atsci commented on the issue:

    https://github.com/apache/trafficserver/pull/1096
  
    Linux build *successful*! See https://ci.trafficserver.apache.org/job/Github-Linux/862/ for details.
     



---
If your project is set up for it, you can reply to this email and have your
reply appear on GitHub as well. If your project does not have this feature
enabled and wishes so, or if the feature is enabled but not working, please
contact infrastructure at infrastructure@apache.org or file a JIRA ticket
with INFRA.
---