systemtap stapvirt tool

Stan Cox
Wed, 06 Jul 2022 21:25:32 -0000

stapvirt seems to have a quite similar layout to virsh-console.  All is
fine for short packets:

1. Send file command to remote, stdin_event gets event
stdin_event:1000 fd 0 events 0x1 stbuf_off 0 stbuf 0x7ffd0e99f848
termbuf_off 58 buf "file 926928 stap_1f18b4b"
2. stream_event gets event
stream_event:1067 events 0x2 stbuf_off 0 stbuf 0x7ffd0e99f848 buf "file
926928 stap_1f18b4b"

but stream_event is not triggered when kernel module is being sent in chunks

3. stdin_event reads first chunk of kernel module
    (which does virStreamEventUpdateCallback when it notices buffer
contents)
stdin_event:1000 fd 0 events 0x1 stbuf_off 0 stbuf 0x7ffd0e99f848
termbuf_off 1024 buf "^?ELF^B^A^A"
4. but stream_event is never triggered

What triggers stream_event to be called such that the 2 case would be
triggered but not the 4 case?