Skip to content
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

Potential improvements to the handling of shares on mount points #620

Open
database64128 opened this issue Dec 18, 2024 · 1 comment
Open

Comments

@database64128
Copy link

Currently, ksmbd's handling of shares on mount points has some rough edges:

  1. If a share path becomes a mount point after the ksmbd service starts, the share exhibits abnormal behavior. The root directory is visible, but files cannot be opened, subdirectories cannot be entered, and while new empty files can be created, they cannot be modified or deleted. Restarting the ksmbd service resolves this.
  2. If a share path is a mount point when the service starts, unmounting always returns -EBUSY.

Ideally, in the first scenario, the share should either appear empty or function correctly. The current behavior is misleading, especially if the mount point was temporarily unavailable due to required manual intervention like running fsck.

For the second scenario, it'd be nice if the share can be successfully unmounted.

@namjaejeon
Copy link
Member

If a share path becomes a mount point after the ksmbd service starts, the share exhibits abnormal behavior. The root directory is visible, but files cannot be opened, subdirectories cannot be entered, and while new empty files can be created, they cannot be modified or deleted. Restarting the ksmbd service resolves this.

Can you explain how to reproduce ? Shouldn't there be a share directory initially?

If a share path is a mount point when the service starts, unmounting always returns -EBUSY.

Do you want the command for "ksmbd server pause" to umount share directory ? and "ksmbd server resume" command will reopen share directory and restart file sharing.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants