-
Notifications
You must be signed in to change notification settings - Fork 67
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Steam library on ksmbd rdma share - (Disk write failure, state 0x202) #498
Comments
I need whole packets dump(wireshark dump) to find root-cause. What is local filesystem type? ext4 ?
Can you explain more? what is fio ? and what is good results ? |
And It is not related to RDMA. right ? I am wondering this issue is reproducible without rdma(smb-direct). |
@namjaejeon appreciate the quick response. Happy new year! I hope to become more involved in this project. My setup consists of the following: KSMBD server:
Client: Client: I can mount and use both for file transfers. It is just Steam I have issue with. Fio is a disk benchmarking tool that I use to exhaust SLC cache on regular NVMe drives. It works on network shares as well. It's the only way I have come up with saturating 40gbps of data. I will take dumps from both OSes. Steam is notorious for not allowing SMB shares, so this may be the issue, but some more information on the errors would be helpful. I will test both OSes today. What would you ideally like to see to be able to troubleshoot this? I see that RDMA negotiates SMB2. I will try and force SMB3, but I only see SMB2 issues in the log. A quick test via Steam on macOS doesn't run into this issue. This is interesting. |
I am not sure that this error message cause your issue. smb client try to open file, if it is not found, It will try to create file. It may be normal routine. if you remove "server multi channel support" parameter in ksmbd.conf, RDMA will be disable with windows client. I will try reproduce this issue using Steam also. |
I have disabled RDMA connectivity and have ensured a network map drive has been shared that is accessible only over an ethernet connection. Have also made sure the ksmbd connectivity is originating from an ethernet interface. It appears I get these Steam logs:
However, I have a regular samba share on another machine, non rdma, and I am able to install on this network drive. I have successfully written data to the ksmbd share. Before taking any network dumps, are there any options that indicate to ksmbd on how to report free space? The |
I've met some thing very similar.
I can confirm that, ** in my case **, EDIT: I found another different error log, that may be the real problem of this.
|
I think that windows client of stream library doesn't add create flags in smb2 create request. If you can dump packets at the timing, I can confirm if it is ksmbd issue or not. Thanks! |
OK, I can confirm the root cause on my side. The real failure of game update should come from When I check the tmp file Back to the log, I found this is due to And this error in
According to the log, Finally, the patch that works for me:
|
Okay, Good catch:) Does it work fine with steam library ?
|
How would I apply this patch? I have it staged inside the linux kernel I cloned from git. Update: LMAO apologies I think you changed the patch a while ago. let me attempt to apply your latest. I have your patch with the |
@dcontiveros
|
Oh interesting you are using the patch command vs. git apply:
Let me try the patch method now, |
Ah, Please apply it.
|
Ok let me try the git apply on your latest update. I pulled down ksmbd via git, and already staged the changes to the kernel build. Let me try getting this patch in, |
Okay, Let me know if you have the issue while applying the patch. |
I pulled down ksmbd from git. I am in master branch, but I don;'t see the git hash in your path:
If I reconcile with the linux latest from 6.12.8:
Feels like I'm missing something. Are the index lines supposed to match up with a specific commit on |
Here is my latest attempt:
|
@dcontiveros git clone https://github.com/namjaejeon/ksmbd --branch=next |
I haven't notice steam failures anymore. Just a reminder, I think this bug exists in previous ksmbd releases(before v640, e.g.). |
@xhebox can you submit the patch to the mailing list(with rdma patch also) ? |
OK, maybe tomorrow. I am on vacation. BTW, do we need to fix other versions...? I have no experience on backporting. |
Ah, You can make the patch based on the latest linux kernel version.(linux-6.13-rc5). If this patch is merged into mainline, it will be propagated to other versions(stable kernels). |
I am still experiencing errors when installing Counter-Strike2. I do see the same behavior where some games install and other don't. Should I be using an ext4 format? it is currently xfs. I did manage to build against the next branch as I built kernel |
I do not believe I have built this properly, as I cannot seem to get this working on either stable or mainline branches. I am attempting the following procedure: Installing as a part of the kernel Here is validation:
Feels like I may be doing something wrong here. |
Can you turn SMB_INSECURE_SERVER off in kernel config ? |
I had to do a few more thing to compile against
I then was able to actually install CounterStrike 2 successfully. Will test some more, but it seems we are good with this patch. I have not tested mainline tree. What is your typical testing workflow? I was a bit confused by the patch, and would like to build latest against my kernel for future reference. Thanks! |
@dcontiveros Thanks for your confirmation:) I will apply this patch to mainline. You need to wait a bit more for this. @xhebox If you don't have the time, I will directly make the patch and apply it to mainline. Let me know your mail address and your real name to add signed-off-by tag to the patch. |
I got time today. Let me try. |
Did this patch get sent upstream? wondering what I need to do to try to get it into Mainline. |
Yes, it is merged into upstream repo. |
I'm running into interesting error messages when I attempt to install/update Steam games. They are always of the type:
Here is dmesg output (debug):
The issue I am having is this is not always reproducible. I have an alternate samba share that I can test on as well to see if I get these issues. It seems like ksmbd can't seem to find the file written by steam. I've also tested the share with fio with extremely good results so I doubt it could be a ksmbd issue, but possibly a config issue.
Here is my config:
Would love to resolve this matter.
Versions:
The text was updated successfully, but these errors were encountered: