-
Notifications
You must be signed in to change notification settings - Fork 7.8k
php-fpm: fix Solaris port events.mechanism #6913
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Conversation
sapi/fpm/fpm/events/port.c
Outdated
ev = (struct fpm_event_s *)events[i].portev_user; | ||
|
||
/* TODO: Escalate an error? */ | ||
fpm_event_port_add(ev); |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Is this part still needed? I remember that this might have not been port specific and possibly might be addressed by this commit 0ed6c37 from @nikic if I understand the description of the patch (comment from Rainer in the bug report). There has been some other changes to signal handling from @plmnikulin that could possibly resolve this.
@psumbera can you try it without this change and confirm if it's still needed?
I can confirm that it works fine even without the second part of the original patch. |
@psumbera Looks good. Please can you squash it to a single commit (push force it to this PR) and if you think it should go to PHP-7.4 (it means if you tested that in 7.4), then please change base branch of this PR to PHP-7.4. I will merge it then. |
Bug #65800 Fix by: [email protected]
98ec621
to
bc9e791
Compare
@psumbera something has gone wrong with the rebase |
Sorry, I don't really know how to change base branch to PHP-7.4 without making mess. Leaving it now at master branch. |
Merged as 04078a5 |
@krakjoe not sure how this happened. But there is missing ';' after 'int ret'. Can you please have look at it? |
@psumbera has this been actually tested against 7.4? That was the main reason why I didn't merge it before... |
Yes I have tested it on 7.4. |
Strangely, it seems that I do encounter the zombie behavior with PHP 7.4.26 on Solaris 11.4 SRU 44 running Nextcloud 22.2.7 as it is described in the third paragraph of Rainer Jung's message from [2015-09-20 08:33 UTC] posted here. The PHP binary I use comes from Oracle and has been built using GCC as described here. The behavior I see is as follows: After a few days, I get more and more zombie processes of PHP-FPM workers on my system. When doing a "truss", I see a behavior which seems to fit quite well to Rainer Jung's description:
While the server is running for a few days, I collect more and more zombies. I do see this on at least three non-global Solaris zones. Unfortunately, I cannot say, when the problem has started to occur. Due to a security problem in FPM a few months ago, I switched back from PHP-FPM to Apache module usage. In the former times (when I was using FPM), I never realized the problem. |
I was wrong. Call to fpm_event_port_add() is really needed. |
Bug #65800
Fix by: [email protected]