Closed ityuhui closed 1 year ago
# make memcheck
valgrind --tool=memcheck --leak-check=full ./list_pod_bin
==36224== Memcheck, a memory error detector
==36224== Copyright (C) 2002-2017, and GNU GPL'd, by Julian Seward et al.
==36224== Using Valgrind-3.15.0 and LibVEX; rerun with -h for copyright info
==36224== Command: ./list_pod_bin
==36224==
kubeyaml_load_kubeconfig(): Cannot open the file non-existent-file.[No such file or directory]
load_kube_config(): Cannot load the kubeconfig non-existent-file
Cannot load kubernetes configuration.
==36224==
==36224== HEAP SUMMARY:
==36224== in use at exit: 68,224 bytes in 8 blocks
==36224== total heap usage: 1,311 allocs, 1,303 frees, 174,553 bytes allocated
==36224==
==36224== 64 bytes in 1 blocks are definitely lost in loss record 1 of 8
==36224== at 0x483B7F3: malloc (in /usr/lib/x86_64-linux-gnu/valgrind/vgpreload_memcheck-amd64-linux.so)
==36224== by 0x50325C8: yaml_malloc (in /usr/local/lib/libyaml.so)
==36224== by 0x5032CD0: yaml_parser_initialize (in /usr/local/lib/libyaml.so)
==36224== by 0x4A80E64: kubeyaml_load_kubeconfig (in /root/c/kubernetes/build/libkubernetes.so)
==36224== by 0x4A8398F: load_kube_config (in /root/c/kubernetes/build/libkubernetes.so)
==36224== by 0x109520: main (main.c:41)
==36224==
==36224== 64 bytes in 1 blocks are definitely lost in loss record 2 of 8
==36224== at 0x483B7F3: malloc (in /usr/lib/x86_64-linux-gnu/valgrind/vgpreload_memcheck-amd64-linux.so)
==36224== by 0x50325C8: yaml_malloc (in /usr/local/lib/libyaml.so)
==36224== by 0x5032DB9: yaml_parser_initialize (in /usr/local/lib/libyaml.so)
==36224== by 0x4A80E64: kubeyaml_load_kubeconfig (in /root/c/kubernetes/build/libkubernetes.so)
==36224== by 0x4A8398F: load_kube_config (in /root/c/kubernetes/build/libkubernetes.so)
==36224== by 0x109520: main (main.c:41)
==36224==
==36224== 256 bytes in 1 blocks are definitely lost in loss record 3 of 8
==36224== at 0x483B7F3: malloc (in /usr/lib/x86_64-linux-gnu/valgrind/vgpreload_memcheck-amd64-linux.so)
==36224== by 0x50325C8: yaml_malloc (in /usr/local/lib/libyaml.so)
==36224== by 0x5032EA2: yaml_parser_initialize (in /usr/local/lib/libyaml.so)
==36224== by 0x4A80E64: kubeyaml_load_kubeconfig (in /root/c/kubernetes/build/libkubernetes.so)
==36224== by 0x4A8398F: load_kube_config (in /root/c/kubernetes/build/libkubernetes.so)
==36224== by 0x109520: main (main.c:41)
==36224==
==36224== 384 bytes in 1 blocks are definitely lost in loss record 4 of 8
==36224== at 0x483B7F3: malloc (in /usr/lib/x86_64-linux-gnu/valgrind/vgpreload_memcheck-amd64-linux.so)
==36224== by 0x50325C8: yaml_malloc (in /usr/local/lib/libyaml.so)
==36224== by 0x5032E2C: yaml_parser_initialize (in /usr/local/lib/libyaml.so)
==36224== by 0x4A80E64: kubeyaml_load_kubeconfig (in /root/c/kubernetes/build/libkubernetes.so)
==36224== by 0x4A8398F: load_kube_config (in /root/c/kubernetes/build/libkubernetes.so)
==36224== by 0x109520: main (main.c:41)
==36224==
==36224== 640 bytes in 1 blocks are definitely lost in loss record 5 of 8
==36224== at 0x483B7F3: malloc (in /usr/lib/x86_64-linux-gnu/valgrind/vgpreload_memcheck-amd64-linux.so)
==36224== by 0x50325C8: yaml_malloc (in /usr/local/lib/libyaml.so)
==36224== by 0x5032D43: yaml_parser_initialize (in /usr/local/lib/libyaml.so)
==36224== by 0x4A80E64: kubeyaml_load_kubeconfig (in /root/c/kubernetes/build/libkubernetes.so)
==36224== by 0x4A8398F: load_kube_config (in /root/c/kubernetes/build/libkubernetes.so)
==36224== by 0x109520: main (main.c:41)
==36224==
==36224== 1,280 bytes in 1 blocks are definitely lost in loss record 6 of 8
==36224== at 0x483B7F3: malloc (in /usr/lib/x86_64-linux-gnu/valgrind/vgpreload_memcheck-amd64-linux.so)
==36224== by 0x50325C8: yaml_malloc (in /usr/local/lib/libyaml.so)
==36224== by 0x5032C44: yaml_parser_initialize (in /usr/local/lib/libyaml.so)
==36224== by 0x4A80E64: kubeyaml_load_kubeconfig (in /root/c/kubernetes/build/libkubernetes.so)
==36224== by 0x4A8398F: load_kube_config (in /root/c/kubernetes/build/libkubernetes.so)
==36224== by 0x109520: main (main.c:41)
==36224==
==36224== 16,384 bytes in 1 blocks are definitely lost in loss record 7 of 8
==36224== at 0x483B7F3: malloc (in /usr/lib/x86_64-linux-gnu/valgrind/vgpreload_memcheck-amd64-linux.so)
==36224== by 0x50325C8: yaml_malloc (in /usr/local/lib/libyaml.so)
==36224== by 0x5032B2C: yaml_parser_initialize (in /usr/local/lib/libyaml.so)
==36224== by 0x4A80E64: kubeyaml_load_kubeconfig (in /root/c/kubernetes/build/libkubernetes.so)
==36224== by 0x4A8398F: load_kube_config (in /root/c/kubernetes/build/libkubernetes.so)
==36224== by 0x109520: main (main.c:41)
==36224==
==36224== 49,152 bytes in 1 blocks are possibly lost in loss record 8 of 8
==36224== at 0x483B7F3: malloc (in /usr/lib/x86_64-linux-gnu/valgrind/vgpreload_memcheck-amd64-linux.so)
==36224== by 0x50325C8: yaml_malloc (in /usr/local/lib/libyaml.so)
==36224== by 0x5032BB8: yaml_parser_initialize (in /usr/local/lib/libyaml.so)
==36224== by 0x4A80E64: kubeyaml_load_kubeconfig (in /root/c/kubernetes/build/libkubernetes.so)
==36224== by 0x4A8398F: load_kube_config (in /root/c/kubernetes/build/libkubernetes.so)
==36224== by 0x109520: main (main.c:41)
==36224==
==36224== LEAK SUMMARY:
==36224== definitely lost: 19,072 bytes in 7 blocks
==36224== indirectly lost: 0 bytes in 0 blocks
==36224== possibly lost: 49,152 bytes in 1 blocks
==36224== still reachable: 0 bytes in 0 blocks
==36224== suppressed: 0 bytes in 0 blocks
==36224==
==36224== For lists of detected and suppressed errors, rerun with: -s
==36224== ERROR SUMMARY: 8 errors from 8 contexts (suppressed: 0 from 0)
make: *** [Makefile:14: memcheck] Error 255
# make memcheck
valgrind --tool=memcheck --leak-check=full ./list_pod_with_invalid_kubeconfig
==39351== Memcheck, a memory error detector
==39351== Copyright (C) 2002-2017, and GNU GPL'd, by Julian Seward et al.
==39351== Using Valgrind-3.15.0 and LibVEX; rerun with -h for copyright info
==39351== Command: ./list_pod_bin
==39351==
kubeyaml_load_kubeconfig(): Cannot open the file non-existent-file.[No such file or directory]
load_kube_config(): Cannot load the kubeconfig non-existent-file
Cannot load kubernetes configuration.
==39351==
==39351== HEAP SUMMARY:
==39351== in use at exit: 0 bytes in 0 blocks
==39351== total heap usage: 1,303 allocs, 1,303 frees, 106,329 bytes allocated
==39351==
==39351== All heap blocks were freed -- no leaks are possible
==39351==
==39351== For lists of detected and suppressed errors, rerun with: -s
==39351== ERROR SUMMARY: 0 errors from 0 contexts (suppressed: 0 from 0)
/lgtm /approve
[APPROVALNOTIFIER] This PR is APPROVED
This pull-request has been approved by: brendandburns, ityuhui
The full list of commands accepted by this bot can be found here.
The pull request process is described here
Fixes #134
Add a test for this case
Check and fix the code style