(rt_object_get_type((rt_object_t)thread) == RT_Object_Class_Thread) assertion...

发布于 2019-05-20 17:08:12
    本帖最后由 aozima 于 2019-9-17 14:26 编辑


OTA测试下发固件突然出现 (rt_object_get_type((rt_object_t)thread) == RT_Object_Class_Thread) assertion failed at function:rt_thread_suspend, line number:664 LOG如下
[dbg] iotx_mc_cycle(1542): SUBACK
[dbg] iotx_mc_handle_recv_SUBACK(1109): Return Value : 1
[dbg] iotx_mc_handle_recv_SUBACK(1110): Packet ID : 17
[dbg] iotx_mc_handle_recv_SUBACK(1111): Count : 1
[dbg] iotx_mc_handle_recv_SUBACK(1113): Granted QoS[00] : 1
[dbg] _iotx_mqtt_event_handle_sub(1069): packet_id = 17, event_type=3
[dbg] wrapper_mqtt_subscribe_sync(2973): node->ack_type=3 cnt=0
[dbg] wrapper_mqtt_subscribe_sync(2977): success!!
[inf] dm_client_subscribe(86): Subscribe Result: 17
[inf] iotx_dm_subscribe(208): Devid 0 Sub Completed
[inf] _iotx_linkkit_event_callback(243): Receive Message Type: 10
[inf] _iotx_linkkit_event_callback(245): Receive Message: {"devid":0}
[dbg] _iotx_linkkit_event_callback(310): Current Devid: 0
user_initialized.82: Device Initialized
[dbg] dm_fota_status_check(173): Fota Status Check
[inf] _dm_fota_send_new_config_to_user(51): Send To User: {"version":"iotx_ver_2.0.0"}
[dbg] dm_ipc_msg_insert(87): dm msg list size: 1, max size: 50
[inf] _iotx_linkkit_event_callback(243): Receive Message Type: 0
user_connected_event_handler.64: Cloud Connected
[inf] _iotx_linkkit_event_callback(243): Receive Message Type: 42
[inf] _iotx_linkkit_event_callback(245): Receive Message: {"version":"iotx_ver_2.0.0"}
[dbg] _iotx_linkkit_event_callback(708): Current Firmware Version: iotx_ver_2.0.0
user_fota_event_handler.191: New Firmware Version: iotx_ver_2.0.0
[dbg] httpclient_connect(417): http calling TCP or TLS connect HAL for [1/3] iteration
LINUXSOCK 83 HAL_TCP_Establish() | establish tcp connection with server(host=180.163.44.3 port=80)
LINUXSOCK 122 HAL_TCP_Establish() | success to establish tcp, fd=4
[dbg] httpclient_connect(426): rc = client->net.connect() = 0, success @ [1/3] iteration
[dbg] _http_send_header(171): REQUEST (Length: 301 Bytes)
> GET /ota/30041aa8c85fd3cc457bf5cf8425be6c/cjvw2x3tk00003b79pw15n61c.bin?Expires=1558429062&OSSAccessKeyId=cS8uRRy54RszYWna&Signature=t3q9WaDJoDjaKiLkEe3827KiUrI%3D HTTP/1.1
> Host: 180.163.44.3
> Accept: text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8
> Accept-Encoding: gzip, deflate
>
(rt_object_get_type((rt_object_t)thread) == RT_Object_Class_Thread) assertion failed at function:rt_thread_suspend, line number:664




查看更多

关注者
0
被浏览
1.3k
3 个回答
flyboy
flyboy 2019-05-21
是不是接收线程的栈给的小了,接收的数据大所以溢出了?
rtthread_user
rtthread_user 2019-09-17
我也遇到同样的问题,这个问题解决了没有?
杰瑞鼠
杰瑞鼠 2020-05-29
我也遇到这个问题,这是什么问题,你门最终都是怎么解决的?
hualongguang
hualongguang 2020-06-28
我今天也遇到这个问题了,同问
bernard
bernard 2020-06-28
这个说的是,当要进行thread_suspend操作时,发现这个要操作的对象并不是一个正常、合法的线程。

所以,需要对这个对象进行调试了,看看它为什么会出现这个情况。加断点,或数据断点的方式来调试,是否是哪里修改了这个对象类型或者逻辑上是有问题的

撰写答案

请登录后再发布答案,点击登录

发布
问题

分享
好友