DragonOS icon indicating copy to clipboard operation
DragonOS copied to clipboard

[BUG REPORT] 在事件到来的时候,epoll无法正确唤醒目标进程的问题。

Open fslongjin opened this issue 1 year ago • 1 comments

描述错误 在某些情况下,epoll无法正确唤醒目标进程。

  • 比如仓库内的test-backlog这个程序,使用了actix-web,但是无法返回任何内容到调用方。
  • ring这个程序在第一次发送icmp并收到响应后,后续无法再发送icmp包。

请填写您的电脑的信息:

  • 操作系统及版本:Ubuntu 22.04
  • DragonOS版本:c719ddc
  • DADK版本:0.1.10
  • Rust版本:1.68

重现步骤 重现行为的步骤:

  1. 运行dragonos
  2. 输入test-backlog命令
  3. 在宿主机上,用浏览器访问虚拟机的12580端口。(如果是wsl/远程虚拟机,请使用vscode的端口转发)
  4. 浏览器无法收到任何响应,会一直转圈。(由于backlog机制,因此多次刷新都不会connection reset的,只会一直等待)

期望行为 能够返回hello world

fslongjin avatar Apr 15 '24 04:04 fslongjin

对于上述测试用例,PR: https://github.com/DragonOS-Community/DragonOS/pull/730 修复了部分问题,使得actix-web能够正常注册信号处理函数、创建worker。并且访问相应接口的时候,不再是“等待然后connection timeout”,浏览器现在会显示"Empty response"

fslongjin avatar Apr 16 '24 06:04 fslongjin