[kata-dev] Rust agent debug

Qian Cai qcai at redhat.com
Tue Mar 2 21:02:23 UTC 2021

I am chasing a bug that "crictl rm" returns ESRCH which ends up tracking down in
the rust agent code:


I don't yet understand how to get some debugging messages outside of the agent,
so I can see why it return ESRCH. I tried added things like,

info!(sl!(), "KKK in do_signal_process()");

but I can't see that message anywhere. I even setup a debug console which allows
me to connect to a shell, but that is. The only way I can get some message out
(showed up in the CRI daemon logs) so far is,

return Err(anyhow!("KKK in do_signal_process()"));

which has to terminate the function. Do I have to use things like agent-ctl to
capture those "info!" output?

Anyway, it is even better if anyone has some ideas on the bug itself which is
that if we do a "crictl rm" without "crictl start" first, it will error out.

# crictl runp --runtime=kata pod-config.json
# crictl create <sid> container-pod.json pod-config.json
# crictl rm <cid>

ERRO[0010] removing container
"144cf0b64d154983da7419a5e8ae5bcb796cc7b054aa7fdcfbb6c44ad8f33621" failed: rpc
error: code = Unknown desc = unable to stop container
144cf0b64d154983da7419a5e8ae5bcb796cc7b054aa7fdcfbb6c44ad8f33621: failed to stop
container 144cf0b64d154983da7419a5e8ae5bcb796cc7b054aa7fdcfbb6c44ad8f33621:
ESRCH: No such process: unknown 
FATA[0010] unable to remove container(s)

# cat pod-config.json
    "metadata": {
        "name": "alpine-sandbox",
        "namespace": "default",
        "attempt": 1,
        "uid": "hdishd83djaidwnduwk28bcsb"
    "log_directory": "/tmp",
    "linux": {

# cat container-pod.json
  "metadata": {
      "name": "alpine"
      "image": "alpine"
  "command": [
      "sleep", "3600"
  "linux": {

More information about the kata-dev mailing list