【无标题】调试记录

这篇博客详细记录了在使用GDB调试过程中遇到的一个问题,涉及到堆内存分配、DNS解析和HTTP连接等步骤。在调试中,发现在调用`__gethostbyname_r`函数获取域名解析时出现了错误,该错误导致了后续TCP连接的失败。堆栈跟踪显示,问题可能源于内存分配、库路径设置或系统资源限制。这为深入理解程序运行时的内存管理和网络通信提供了线索。
摘要由CSDN通过智能技术生成

[Current thread is 1 (LWP 353)]
(gdb) set solib-search-path /opt/gcc-sigmastar-9.1.0-2019.11-x86_64_arm-linux-gnueabihf/arm-linux-gnueabihf/lib
(gdb) set solib-search-path /opt/gcc-sigmastar-9.1.0-2019.11-x86_64_arm-linux-gnueabihf/arm-linux-gnueabihf/libc/usr/lib
(gdb) set solib-search-path /opt/gcc-sigmastar-9.1.0-2019.11-x86_64_arm-linux-gnueabihf/arm-linux-gnueabihf/libc/lib
Reading symbols from /opt/gcc-sigmastar-9.1.0-2019.11-x86_64_arm-linux-gnueabihf/arm-linux-gnueabihf/libc/lib/libnss_dns-2.30.so...
Reading symbols from /opt/gcc-sigmastar-9.1.0-2019.11-x86_64_arm-linux-gnueabihf/arm-linux-gnueabihf/libc/lib/libresolv-2.30.so...
Reading symbols from /opt/gcc-sigmastar-9.1.0-2019.11-x86_64_arm-linux-gnueabihf/arm-linux-gnueabihf/libc/lib/libc-2.30.so...
Reading symbols from /opt/gcc-sigmastar-9.1.0-2019.11-x86_64_arm-linux-gnueabihf/arm-linux-gnueabihf/libc/lib/ld-2.30.so...
(gdb) bt
#0  0xa4fba27e in __GI___get_nprocs () at ../include/ctype.h:41
#1  0xa4f75f54 in arena_get2 (size=384, avoid_arena=0x0) at arena.c:887
#2  0xa4f78144 in tcache_init () at malloc.c:2981
#3  0xa4f78a84 in tcache_init () at malloc.c:3044
#4  __GI___libc_malloc (bytes=20) at malloc.c:3044
#5  0xa4fcef56 in context_alloc (resp=0xa50158d8 <_res@GLIBC_2.4>) at resolv_context.c:133
#6  0xa4fcefd4 in context_get (preinit=<optimized out>) at resolv_context.c:181
#7  0xb2507918 in _nss_dns_gethostbyname_r (name=0x463cc0 "a2.tuyacn.com", result=0x3c1900 <resbuf>, buffer=0xb2401228 "", buflen=1024, errnop=0xa781b7c0, h_errnop=0xa781a9e4) at nss_dns/dns-host.c:311
#8  0x00199760 in __gethostbyname_r (name=name@entry=0x463cc0 "a2.tuyacn.com", resbuf=resbuf@entry=0x3c1900 <resbuf>, buffer=<optimized out>, buflen=1024, result=result@entry=0xa781a9e0, 
    h_errnop=h_errnop@entry=0xa781a9e4) at ../nss/getXXbyYY_r.c:315
#9  0x0019923e in gethostbyname (name=name@entry=0x463cc0 "a2.tuyacn.com") at ../nss/getXXbyYY.c:153
#10 0x000cbcce in unw_gethostbyname (domain=domain@entry=0x463cc0 "a2.tuyacn.com", ip=ip@entry=0xa781aa5c) at /var/lib/jenkins/workspace/Release_IPC_SDK/src/tuya_adapter/system/uni_network.c:780
#11 0x000db92e in tcp_connect (retry_cnt=0, port=443, hostname=0x463cc0 "a2.tuyacn.com", sockfd=0x463b58) at /var/lib/jenkins/workspace/Release_IPC_SDK/src/tuya_middleware/httpc/httpc.c:400
#12 http_open_session (handle=handle@entry=0xa781aab4, 
    hostname=hostname@entry=0x4636a4 "https://a2.tuyacn.com/d.json?a=tuya.device.dynamic.config.get&devId=6ced04a50bc0eb678djrtf&et=1&t=1639147343&v=1.0&sign=8f54ac7900a5948eb8cf915950f95880", flags=1, 
    flags@entry=0, retry_cnt=retry_cnt@entry=0) at /var/lib/jenkins/workspace/Release_IPC_SDK/src/tuya_middleware/httpc/httpc.c:732
#13 0x000dd8fc in __http_inf_com_hanle (req=req@entry=0xa781ab04, 
    url=url@entry=0x4636a4 "https://a2.tuyacn.com/d.json?a=tuya.device.dynamic.config.get&devId=6ced04a50bc0eb678djrtf&et=1&t=1639147343&v=1.0&sign=8f54ac7900a5948eb8cf915950f95880", 
    field_flags=field_flags@entry=(HDR_ADD_DEFAULT_USER_AGENT | HDR_ADD_CONN_KEEP_ALIVE | HDR_ADD_CONTENT_TYPE_FORM_URLENCODE), callback=0xe0c99 <__httpc_gw_common_cb>, 
    p_decode_key=p_decode_key@entry=0x3bba80 <gw_cntl+636> "837e263f98ee5a20", pri_data=pri_data@entry=0xa781ac74) at /var/lib/jenkins/workspace/Release_IPC_SDK/src/tuya_middleware/httpc/http_inf.c:45
#14 0x000ddbc8 in http_inf_client_post (
    url=url@entry=0x4636a4 "https://a2.tuyacn.com/d.json?a=tuya.device.dynamic.config.get&devId=6ced04a50bc0eb678djrtf&et=1&t=1639147343&v=1.0&sign=8f54ac7900a5948eb8cf915950f95880", 
    callback=<optimized out>, data=data@entry=0x463b00 "data=1BCFE20EC0A4FD95C1FC1C81AE2E372A8D1B964F3819DBB543072596CCCE3838", len=<optimized out>, add_head_cb=add_head_cb@entry=0x0, 
    add_head_data=add_head_data@entry=0x0, p_decode_key=p_decode_key@entry=0x3bba80 <gw_cntl+636> "837e263f98ee5a20", pri_data=pri_data@entry=0xa781ac74)
    at /var/lib/jenkins/workspace/Release_IPC_SDK/src/tuya_middleware/httpc/http_inf.c:195
#15 0x000e040e in __iot_common_post (url=<optimized out>, api_name=<optimized out>, api_ver=<optimized out>, uuid=uuid@entry=0x0, aes_key=0x3bba80 <gw_cntl+636> "837e263f98ee5a20", 
    devid=0x3bb951 <gw_cntl+333> "6ced04a50bc0eb678djrtf", post_data=0x4623f0 "{\"t\":1639147343}", post_data@entry=0x0, data_total_len=data_total_len@entry=0, p_head_other=p_head_other@entry=0x0, 
    pp_result=pp_result@entry=0xa781ac74) at /var/lib/jenkins/workspace/Release_IPC_SDK/src/tuya_iot_sdk/tuya_cloud/iot_httpc.c:919
#16 0x000e2420 in httpc_dynamic_cfg_get_v10 (url=<optimized out>, gw_id=<optimized out>, active_key=<optimized out>, result=0xa781ac74, result@entry=0x0)
    at /var/lib/jenkins/workspace/Release_IPC_SDK/src/tuya_iot_sdk/tuya_cloud/iot_httpc.c:1650
#17 0x000e3638 in http_dynamic_cfg_get (result=0x0, result@entry=0xa781ac74) at /var/lib/jenkins/workspace/Release_IPC_SDK/src/tuya_iot_sdk/tuya_cloud/iot_httpc.c:2592
#18 0x000daa8a in __gw_ug_cfg_cb (tm_msg=<optimized out>) at /var/lib/jenkins/workspace/Release_IPC_SDK/src/tuya_iot_sdk/tuya_cloud/gw_intf.c:4361
#19 0x00111d26 in MessageLoop (msgQueHandle=0xaac079f0) at /var/lib/jenkins/workspace/Release_IPC_SDK/src/tuya_base/sys_serv/uni_msg_queue.c:527
#20 0x00112218 in __WrapRunFunc (pArg=0xaac07e00) at /var/lib/jenkins/workspace/Release_IPC_SDK/src/tuya_adapter/system/uni_thread.c:222
#21 0x00146598 in start_thread (arg=0xd2013d6c) at pthread_create.c:479
#22 0x00198bec in ?? () at ../sysdeps/unix/sysv/linux/arm/clone.S:73
Backtrace stopped: previous frame identical to this frame (corrupt stack?)
 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值