ttyS1:1 input overrun(s)

「已注销」 2018-04-10 06:44:37
我在测试交换机时,有时会出现 ttyS1:1 input overrun(s) ,而且是大量的无限重复,测试指令都不能输。

用的Linux kernel是 4.0 ,Ubuntu 14.04

TEST>[1926.62032] ttyS1:1 input overrun(s)

resetchip all time out ,after waiting 60 seconds

TEST>[1768.41502] ttyS1:1 input overrun(s)

TEST>[1909.68601] ttyS1:1 input overrun(s)

TEST>[1526.13082] ttyS1:1 input overrun(s) ...

怎么把这个串口溢出错误屏蔽掉 ? 或者 怎么战胜这个问题。

我刚刚接触这个没多久,可能描述不恰当^-^ , 有人遇到过这个问题吗,是怎么解决的?也许我可以借鉴下。
请不吝赐教,

感谢。
...全文
2447 13 打赏 收藏 转发到动态 举报
写回复
用AI写文章
13 条回复
切换为时间正序
请发表友善的回复…
发表回复
LGJLQQ 2018-05-03
  • 打赏
  • 举报
回复
楼主,目前你的问题有解决嘛?我也遇到同样的问题,我也是小白,但是leader还是让我来处理,很是焦灼。。。
要是楼主有解决方案,麻烦不吝赐教!!!
万分感谢。。。
cocoabird 2018-04-28
  • 打赏
  • 举报
回复
引用 11 楼 noob_linux 的回复:
sorry, 这两周没有机子可以验证,好无语啊,leader让理论解题 这要结贴吗
结吧
「已注销」 2018-04-27
  • 打赏
  • 举报
回复
sorry, 这两周没有机子可以验证,好无语啊,leader让理论解题 这要结贴吗
cocoabird 2018-04-25
  • 打赏
  • 举报
回复
最好看看缓存能存多少条指令,满了再清理
cocoabird 2018-04-25
  • 打赏
  • 举报
回复
缓冲区满了的话,接收了就溢出了,接收到也没意义; tcflush的话,最好在发送前清理下,发送后也清理下
cocoabird 2018-04-24
  • 打赏
  • 举报
回复
input overrun 说明输入溢出,也就是接收方那边放不下了,清除下缓存,腾出点空间就行了,tcflush试试
jklinux 2018-04-24
  • 打赏
  • 举报
回复
引用 5 楼 noob_linux 的回复:
[quote=引用 3 楼 jklinux 的回复:] 如果是用telnet的话,可以把console=tty1就可以了
这个溢出错误是发生在 :测试软件对交换机功能验证时发出的。 在linux下不出现。 目前就是出现溢出错误就重新开机测,不断重复,直到没有错误。。。比较费时间。 有这方面的解决经验分享吗? @jklinux [/quote] 没有遇到过这种问题。 测试软件是在交换机启动时会通过uart发出很多指令?  而且一般的soc的uart控制器都有fifio缓冲区工作模式,顺便检查下是否有使用。
「已注销」 2018-04-24
  • 打赏
  • 举报
回复
我在整个工程搜索了下,并没有找到 tcflush(fd, TCIOFLUSH); 这样的清除fifo的动作, 但是在其他客户的机子上测试是没有这个问题的,单单现在的这个单子有问题, 交换机结构都差不多,因此 测试的代码也差不多,只是修改一些datasheet,偏偏就有这个错误。 确实会发一百个左右的测试指令,测的满蛮多的,cpu, mainboard , fan , psu.. 请问版主:输入若满的话,FIFO不会引发中断,而停止接收输入吗。 另外 要tcflush 的话不是得要每完成一个指令的测试就 清除,在下测一个指令?这样,改code的部分有点多啊
「已注销」 2018-04-21
  • 打赏
  • 举报
回复
引用 3 楼 jklinux 的回复:
如果是用telnet的话,可以把console=tty1就可以了
这个溢出错误是发生在 :测试软件对交换机功能验证时发出的。 在linux下不出现。 目前就是出现溢出错误就重新开机测,不断重复,直到没有错误。。。比较费时间。 有这方面的解决经验分享吗? @jklinux
「已注销」 2018-04-16
  • 打赏
  • 举报
回复
引用 3 楼 jklinux 的回复:
如果是用telnet的话,可以把console=tty1就可以了
用 putty 连的, 直接改cmdline 文件吗? 这里有一个小问题,出现input overrun 一般是什么原因啊, 您的处理方式是大致是什么原理, 是把input串口更正吗,能简单给本小白 讲讲吗 ^_^ 还有,如果出现 这个问题的话 ,它是 不断的跳出的,一打什么字,会被这个log覆盖,指令无法正常输入啊,怎么修改呀
jklinux 2018-04-13
  • 打赏
  • 举报
回复
如果是用telnet的话,可以把console=tty1就可以了
「已注销」 2018-04-12
  • 打赏
  • 举报
回复
引用 1 楼 jklinux 的回复:
cat /proc/cmdline 确认下是不是内核使用ttyS1作调试终端使用了
谢谢你的答复~ 确认这个有什么作用呢? 我查了相关资料 --》 “/proc/cmdline 在启动时传递至内核的启动参数” 如果有 类似这样 console=ttyS1 ,115200 mtddev=blackbo... 的信息,说明内核把ttyS1做为指令调试终端吗?然后导致串口无法使用ttyS1 传输数据? 能说说下一步该怎么办嘛~ @jklinux
jklinux 2018-04-11
  • 打赏
  • 举报
回复
cat /proc/cmdline 确认下是不是内核使用ttyS1作调试终端使用了

427

社区成员

发帖
与我相关
我的任务
社区描述
非技术问题的乐园
社区管理员
  • 非技术区社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧