Bug 8840 - polefs用龙蜥操作系统 会有读取目录不完整的bug
Summary: polefs用龙蜥操作系统 会有读取目录不完整的bug
Status: NEW
Alias: None
Product: Anolis OS 8
Classification: Anolis OS
Component: kernel - anck-4.19 (show other bugs) kernel - anck-4.19
Version: 8.2
Hardware: x86_64 Linux
: P3-Medium S3-normal
Target Milestone: ---
Assignee: maqiao_mq
QA Contact: shuming
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2024-04-23 14:05 UTC by djhwyh
Modified: 2024-06-03 10:40 UTC (History)
2 users (show)

See Also:


Attachments
DELETE DIR FAIL: unlinkat报错对应截图 (6.70 KB, image/png)
2024-04-23 14:05 UTC, djhwyh
Details

Note You need to log in before you can comment on or make changes to this bug.
Description djhwyh 2024-04-23 14:05:21 UTC
Created attachment 1133 [details]
DELETE DIR  FAIL:  unlinkat报错对应截图

Description of problem:
AnolisOS 8.2 QU1 x86服务器 内核4.19.91-24.8.an8.x86_64,用户反馈polefs用龙蜥操作系统 会有读取目录不完整的bug,polefs这边反馈跟操作系统有关系。现象:用户上层go代码调用removeall报错
直接原因是:目录不为空,原因是下面的文件没有unlink完就调了rm,中间的参数传的有问题,排查了整个调用栈,后端接收到的值都没有问题,客户端从go调用fuse到polefs客户端,都没有发现异常,就内核侧没有排查了.

Version-Release number of selected component (if applicable):


How reproducible:


Steps to Reproduce:
1.挂载好客户端, 需要测的时候 
cp -r vendor mnt/vendor1
拷贝一份测试数据进来
然后执行命令就能复现了
如果需要具体文件,可以再单独联系我。

Actual results:


Expected results:


Additional info:
Comment 1 xunlei alibaba_cloud_group 2024-05-22 10:09:41 UTC
polefs是什么文件系统,我们之前从来没有接触过 :-(

建议抽象一下问题复现case,在线下能够稳定复现出来,这样才好在内核中增加调试代码抓数据做排查,以便判断是哪个环节出问题了。
Comment 2 djhwyh 2024-06-03 10:40:07 UTC
polefs是自行开发的文件系统,对应开发人员在polefs客户端做了修复,原因是内核处理过程中收到了pending信号,就中断去处理信号了,而polefs没有对已经发过去目录项做记录,因此重发的时候就少了一部分,这块已经修复了。感谢社区协助分析。