Re: stuck php processes after upgrade to 13.1-RELEASE

From: Martin_Waschbüsch <martin_at_waschbuesch.de>
Date: Sun, 12 Jun 2022 16:33:03 UTC
Hi Franco,

good to know I am not the only one.
(For me it is frequent enough to be annoying, though.) :-)

There may be additional situations where something like this occurred 
(twice now and on different webservers):

Having stopped php-fpm and made sure that there are no dangling 
processes. "service php-fpm start" then got stuck after the line

"Starting php_fpm."

Waited a couple of minutes before killing it. (CTRL+C worked).

No idea it is related, however.

Am 07.06.22 um 15:27 schrieb Franco Fichtner:
> Hi Martin,
> 
>> On 6. Jun 2022, at 23:38, Martin Waschbüsch <martin@waschbuesch.de> wrote:
>>
>> Hi there,
>>
>> ever since I upgraded some of my webservers to FreeBSD 13.1-RELEASE, 
>> some cronjobs executing php scripts seem to end up stuck.
>> It does not always happen. I have not been able to pinpoint the 
>> circumstances. Nor have I managed to come up with a way to reproduce 
>> the issue.
> 
> We are seeing the same thing under fringe conditions on stable/13 from 
> beginning of this year:
> 
> Configuring firewall.......done.
> load: 0.53  cmd: php 69829 [nanslp] 65.89r 0.34u 0.23s 0% 27696k
> mi_switch+0xc2 sleepq_catch_signals+0x2e6 sleepq_timedwait_sig+0x12 
> _sleep+0x1d1 kern_clock_nanosleep+0x1c1 sys_nanosleep+0x3b 
> amd64_syscall+0x10c fast_syscall_common+0xf8
> [doesn't continue]
> 
> Haven’t looked at this more closely as it only happens intermittently on 
> OPNsense 22.1 live images.
> 
> The process reacts to CTRL+C just fine and the process ends.
> 
> 
> Cheers,
> Franco
> 
>>
>> With every processes that gets stuck that way, I can do
>>
>> truss -p <pid>
>>
>> and will get a neverending output of:
>>
>> sched_yield()                     = 0 (0x0)
>>
>> which to me looks like an attempt to let other threads get on with 
>> work, but being rescheduled immediately.
>>
>> Scripts this has happened with were magento2 and shopware 5.7 
>> maintenance cronjobs running with PHP 7.4.29.
>>
>> Also note, in case this makes a difference, that all of these servers 
>> are running on VMs provided using kvm (I use a proxmox cluster for 
>> virtualisation).
>> I noticed that the new kvmclock timer module is automatically used. On 
>> 13.0 I had to install kvmclock-kmod for that. Don't know if the code 
>> changed now it is part of base.
>>
>>
>> Anyway, maybe someone else has had similar things happen on their systems?
>>
>> I was loath to open a PR because at this point I don't rightly know 
>> how to categorize it. Is it a problem with FreeBSD? Or a formerly 
>> harmless issue with PHP that became more 'visible' on the newer OS 
>> version?
>> Is it something in conjunction with kvm, or a timing issue...
>>
>> Any help appreciated.
>>
>> Thanks,
>>
>> Martin
>>

Liebe Grüße,

Martin Waschbüsch

-- 
Schumacherring 29
81737 München
Telefon: +49 89 57005708
Fax: +49 89 57868023
Mobil: +49 170 2189794