首页问答详情

多进程调用HI_MPI_VPSS_GetChnFrame出现kernel panic问题求助

 
poya-lzh
poya-lzh  发布于  2017-05-10 15:37:55
采纳率 0%
1个问答
使用3519v101的020 SDK版本,一个进程调用HI_MPI_VPSS_GetChnFrame接口获取VPSS Group :0 ,VPSS Chn:3的图像进行移动侦测处理,另一个进程调用HI_MPI_VPSS_GetChnFrame接口获取VPSS Group:0,VPSS Chn:5的图像进行人脸识别处理,两个进程同时运行时,短则几分钟,长则几个小时就会出现kernel panic的问题,内核打印的错误信息如图。个人的理解是如果是应用程序踩内存之类的错误,应该只会导致程序崩溃,不应该会让kernel挂掉,难道是sdk的问题吗,大家帮忙分析下思路,现在没有头绪。
我来回答
6246
2
0
回答
9个
易百纳技术社区
c87276548 发布于2017-05-10 16:11:12
这是海思VPSS驱动内部断言了
肯定是调用方法有问题,这个panic不是踩内存造成的
0
易百纳技术社区
poya-lzh 发布于2017-05-10 16:14:50
[quote][url=forum.php?mod=redirect&goto=findpost&pid=49507&ptid=15139]c87276548 发表于 2017-5-10 16:11[/url]
这是海思VPSS驱动内部断言了
肯定是调用方法有问题,这个panic不是踩内存造成的[/quote]

不支持多进程调用?我查了海思sdk的mpi使用文档,没有找到明确注意说明,奇怪的是还可以正常运行一段时间。
0
易百纳技术社区
c87276548 发布于2017-05-10 16:24:55
这个就不清楚了
可能海思内部的同步保护没有做好
出现类似的问题就是驱动内部出现了异常,而驱动并没有针对这个异常做处理,而是简单的ASSERT掉了,这是一种调试方法
(一般而言ASSERT用于出现某种情况会出现严重问题,但是代码逻辑上讲不会出现这种现象)
再一个平时的VPSS操作上面也我没有使用过多线程或者多进程调用
0
易百纳技术社区
c87276548 发布于2017-05-10 16:25:55
一般我遇到类似的情况就会修改调用方式了,比较MPP海思驱动的海思驱动没源码也没法改,3798M的那种驱动还可以想想办法:lol
0
易百纳技术社区
poya-lzh 发布于2017-05-10 16:46:56
[quote][url=forum.php?mod=redirect&goto=findpost&pid=49514&ptid=15139]c87276548 发表于 2017-5-10 16:25[/url]
一般我遇到类似的情况就会修改调用方式了,比较MPP海思驱动的海思驱动没源码也没法改,3798M的那种驱动还可 ...[/quote]

正在想怎么改可以避开这个问题,现在还没找到好的办法,在考虑能不能直接从vi获取原始图片来处理,不走vpss了。没有源码,文档也没说明,这种问题也只能避开,或者靠试去解决了。
0
易百纳技术社区
yiyaolin 发布于2017-05-19 09:44:52
我用3531A,也遇到一样的问题,已有一进程负责影像压缩,在此状态下,没有问题。
加入另一个多线程进程后,自HI_MPI_VPSS_GetChnFrame取像后,进行IVE处理,会频繁发生如下面的kernel panic,但ASSERT failed都是在同一个地方,似乎不是踩内存。

不知道这种状态,是否跟IVE有关系?还是IVE不能使用多线程调用?

----
Kernel panic - not syncing:
ASSERT failed at:
  >File name: /home/pub/platform_h5_build/mpp/code/shelf/venc/jpege/jpege_ext.c
  >Function : JPEGE_GetBitStream
  >Line No. : 1553
  >Condition: pstJpegPicPackHead->s32ChnID == s32ChnID

CPU1: stopping
CPU: 1 PID: 0 Comm: swapper/1 Tainted: P           O 3.10.0 #2
[] (unwind_backtrace+0x0/0xf4) from [] (show_stack+0x10/0x14)
[] (show_stack+0x10/0x14) from [] (handle_IPI+0x188/0x1b0)
[] (handle_IPI+0x188/0x1b0) from [] (gic_handle_irq+0x88/0x8c)
[] (gic_handle_irq+0x88/0x8c) from [] (__irq_svc+0x40/0x50)
Exception stack(0xd5061f98 to 0xd5061fe0)
1f80:                                                       c0976930 00000000
1fa0: 081c932e 00000000 c068feb9 c0663d74 c0496e6c d5060000 c068feb9 d5060000
1fc0: d5060000 c0663d14 00000000 d5061fe0 c0014244 c0014248 60000013 ffffffff
[] (__irq_svc+0x40/0x50) from [] (arch_cpu_idle+0x2c/0x30)
[] (arch_cpu_idle+0x2c/0x30) from [] (cpu_startup_entry+0xfc/0x140)
[] (cpu_startup_entry+0xfc/0x140) from [<4048a024>] (0x4048a024)
0
易百纳技术社区
eken 发布于2017-07-06 10:40:56
3519v101 我也经常遇到类似的kernel panic ,应该是海思的驱动没写好,很郁闷
0
易百纳技术社区
eken 发布于2017-07-06 11:01:37
我在hi3519还遇到这个问题,录像开始时概率性出现如下:
ASSERT failed at:
  >File name: /home/pub/platform-h6/mpp/code/shelf/vpss2/mkp/vpss.c
  >Function : VpssGrpIsr
  >Line No. : 4254
  >Condition: HI_NULL != pstCtx

CPU: 0 PID: 480 Comm: venc Tainted: P           O   3.18.20 #15
[] (unwind_backtrace) from [] (show_stack+0x10/0x14)
[] (show_stack) from [] (dump_stack+0x88/0x98)
[] (dump_stack) from [] (panic+0x9c/0x1fc)
[] (panic) from [] (osal_read+0x0/0x3c [hi_osal])
[] (osal_read [hi_osal]) from [] (hi35xx_vpss_driver_exit+0x21c0/0xc [hi3519v101_vpss])
CPU1: stopping
CPU: 1 PID: 0 Comm: swapper/1 Tainted: P           O   3.18.20 #15
[] (unwind_backtrace) from [] (show_stack+0x10/0x14)
[] (show_stack) from [] (dump_stack+0x88/0x98)
[] (dump_stack) from [] (handle_IPI+0x1cc/0x1ec)
[] (handle_IPI) from [] (gic_handle_irq+0x74/0x78)
[] (gic_handle_irq) from [] (__irq_svc+0x40/0x54)
Exception stack(0xc386bf58 to 0xc386bfa0)
bf40:                                                       c386bfa0 fffffff8
bf60: 9b3f5ac1 0000002d c3f5fed8 00000001 9ac41359 0000002d 9b3f5ac1 0000002d
bf80: c3f5fedc c042b828 00000018 c386bfa0 29aaaaab c0301b94 90000153 ffffffff
[] (__irq_svc) from [] (cpuidle_enter_state+0x50/0x140)
[] (cpuidle_enter_state) from [] (cpu_startup_entry+0x1bc/0x29c)
[] (cpu_startup_entry) from [<800086c4>] (0x800086c4)
---[ end Kernel panic - not syncing:
ASSERT failed at:
  >File name: /home/pub/platform-h6/mpp/code/shelf/vpss2/mkp/vpss.c
  >Function : VpssGrpIsr
  >Line No. : 4254
  >Condition: HI_NULL != pstCtx
0
易百纳技术社区
hi3519v101 发布于2017-07-06 11:10:01
自己加同步呗。
0

Markdown 语法

  • 加粗 **内容**
  • 斜体 *内容*
  • 删除线 ~~内容~~
  • 引用 > 引用内容
  • 代码 `代码`
  • 代码块 ```编程语言↵代码```
  • 链接 [链接标题](url)
  • 无序列表 - 内容
  • 有序列表 1. 内容
  • 缩进 内容
  • 图片 ![alt](url)

Markdown 语法

  • 加粗 **内容**
  • 斜体 *内容*
  • 删除线 ~~内容~~
  • 引用 > 引用内容
  • 代码 `代码`
  • 代码块 ```编程语言↵代码```
  • 链接 [链接标题](url)
  • 无序列表 - 内容
  • 有序列表 1. 内容
  • 缩进 内容
  • 图片 ![alt](url)
+ 添加网盘链接/附件
或将文件直接拖到这里
悬赏:
EBC
网盘
* 网盘链接:
* 提取码:
悬赏:
EBC
相关问答
无更多相似问答 去提问
Loading...
易百纳技术社区
确定要删除此文章、专栏、评论吗?
确定
取消
易百纳技术社区
易百纳技术社区
在专栏模块发布专栏,可获得其他E友的打赏
易百纳技术社区
回答悬赏问答,被题主采纳后即可获得悬赏金
易百纳技术社区
在上传资料时,有价值的资料可设置为付费资源
易百纳技术社区
达到一定金额,收益即可提现~
收益也可用来充值ebc,下载资料、兑换礼品更容易
易百纳技术社区
活动规则
  • 1.周任务为周期性任务,每周周一00:00刷新,上周完成的任务不会累计到本周,本周需要从头开始任务,当前任务完成后才可以完成下一个任务
  • 2.发布的专栏与资料需要与平台的板块有相关性,禁止注水,专栏/资料任务以审核通过的篇数为准
  • 3.任务完成后,现金奖励直接打款到微信账户;EBC/收益将自动发放到个人账户,可前往“我的钱包”查看;其他奖励请联系客服兑换
  • 4.每周最后三个任务将会有以下奖品掉落:社区热卖开发板、小米音响、视频年度会员、京东卡、华为手机等等
易百纳技术社区
升级提醒
易百纳技术社区

恭喜您由入门

社区送出礼品一份

请填写您的收件地址,礼品将在3个工作日寄出

易百纳技术社区