Re: [PATCH v3 6/6] freezer,sched: Rewrite core freezer logic

Christian Borntraeger
2022-09-26T08:09:16Z

Am 23.09.22 um 09:53 schrieb Christian Borntraeger:
> Am 23.09.22 um 09:21 schrieb Christian Borntraeger:
>> Peter,
>>
>> as a heads-up. This commit (bisected and verified) triggers a
>> regression in our KVM on s390x CI. The symptom is that a specific
>> testcase (start a guest with next kernel and a poky ramdisk,
>> then ssh via vsock into the guest and run the reboot command) now
>> takes much longer (300 instead of 20 seconds). From a first look
>> it seems that the sshd takes very long to end during shutdown
>> but I have not looked into that yet.
>> Any quick idea?
>>
>> Christian
>
> the sshd seems to hang in virtio-serial (not vsock).

FWIW, sshd does not seem to hang, instead it seems to busy loop in
wait_port_writable calling into the scheduler over and over again.

>
> PID: 237      TASK: 81d1a100          CPU: 1    COMMAND: "sshd"
>  LOWCORE INFO:
>   -psw      : 0x0404e00180000000 0x0000000131ceb136
>   -function : __list_add_valid at 131ceb136
>   -prefix   : 0x00410000
>   -cpu timer: 0x7fffffd3ec4f33d4
>   -clock cmp: 0x2639f08006283e00
>   -general registers:
>      0x00000008dcea2dce 0x00000001387d44b8
>      0x0000000081d1a228 0x00000001387d44b8
>      0x00000001387d44b8 0x00000001387d44b8
>      0x00000001387d3800 0x00000001387d3700
>      0x0000000081d1a100 0x00000001387d44b8
>      0x00000001387d44b8 0x0000000081d1a228
>      0x0000000081d1a100 0x0000000081d1a100
>      0x0000000131608b32 0x00000380004b7aa8
>   -access registers:
>      0x000003ff 0x8fff5870 0000000000 0000000000
>      0000000000 0000000000 0000000000 0000000000
>      0000000000 0000000000 0000000000 0000000000
>      0000000000 0000000000 0000000000 0000000000
>   -control registers:
>      0x00a0000014966a10 0x0000000133348007
>      0x00000000028c6140 000000000000000000
>      0x000000000000ffff 0x00000000028c6140
>      0x0000000033000000 0x0000000081f001c7
>      0x0000000000008000 000000000000000000
>      000000000000000000 000000000000000000
>      000000000000000000 0x0000000133348007
>      0x00000000db000000 0x00000000028c6000
>   -floating point registers:
>      0x000003ffb82a9761 0x0000006400000000
>      0x000003ffb82a345c 000000000000000000
>      0x0000000000007fff 0x000003ffe22fe000
>      000000000000000000 0x000003ffe22fa51c
>      0x000003ffb81889c0 000000000000000000
>      0x000002aa3ce2b470 000000000000000000
>      000000000000000000 000000000000000000
>      000000000000000000 000000000000000000
>
>  #0 [380004b7b00] pick_next_task at 1315f2088
>  #1 [380004b7b98] __schedule at 13215e954
>  #2 [380004b7c08] schedule at 13215eeea
>  #3 [380004b7c38] wait_port_writable at 3ff80149b2e [virtio_console]
>  #4 [380004b7cc0] port_fops_write at 3ff8014a282 [virtio_console]
>  #5 [380004b7d40] vfs_write at 131889e3c
>  #6 [380004b7e00] ksys_write at 13188a2e8
>  #7 [380004b7e50] __do_syscall at 13215761c
>  #8 [380004b7e98] system_call at 132166332
>  PSW:  0705000180000000 000003ff8f8f3a2a (user space)
>  GPRS: 0000000000000015 000003ff00000000 ffffffffffffffda 000002aa02fc68a0
>        0000000000000015 0000000000000015 0000000000000000 000002aa02fc68a0
>        0000000000000004 000003ff8f8f3a08 0000000000000015 0000000000000000
>        000003ff8ffa9f58 0000000000000000 000002aa02365b20 000003ffdf4798d0