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

nbd double disconnect triggered after installation #866

Open
ejoerns opened this issue Feb 24, 2022 · 1 comment
Open

nbd double disconnect triggered after installation #866

ejoerns opened this issue Feb 24, 2022 · 1 comment
Labels
external bug An issue in another tool affects RAUC help wanted
Milestone

Comments

@ejoerns
Copy link
Member

ejoerns commented Feb 24, 2022

With the current RAUC master, a streaming installation triggers a double disconnect in the kernel.

To reproduce, run

rauc install http://127.0.0.1/example-bundle.raucb

which will trigger the kernel warning:

[24344.459244] block nbd7: NBD_DISCONNECT
[24344.463725] block nbd7: Disconnected due to user request.
[24344.463769] block nbd7: shutting down sockets
[24344.560521] block nbd7: NBD_DISCONNECT
[24344.560541] block nbd7: Send disconnect failed -32

Tested with v5.15.2 kernel.

Either RAUC should only issue a single disconnect, or the kernel should ignore a disconnect on an already-disconnected nbd dev.

@jluebbe jluebbe added external bug An issue in another tool affects RAUC help wanted labels Feb 25, 2022
@jluebbe
Copy link
Member

jluebbe commented Feb 25, 2022

As far as I can see, the logged warning is the only effect of this issue.

Note that RAUC only sends one NBD_CMD_DISCONNECT, the other is generated by the kernel due to NBD_CFLAG_DISCONNECT_ON_CLOSE. The latter should not be generated by the kernel if the NBD is already closed.

@jluebbe jluebbe added this to the Unplanned milestone Apr 22, 2022
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
external bug An issue in another tool affects RAUC help wanted
Projects
None yet
Development

No branches or pull requests

2 participants