Bug 1755038
Summary: | VM clipboard integration wipes clipboard contents randomly and frequently (X11 host) | ||||||
---|---|---|---|---|---|---|---|
Product: | [Fedora] Fedora | Reporter: | Kamil Páral <kparal> | ||||
Component: | spice-vdagent | Assignee: | Christophe Fergeau <cfergeau> | ||||
Status: | CLOSED EOL | QA Contact: | Fedora Extras Quality Assurance <extras-qa> | ||||
Severity: | unspecified | Docs Contact: | |||||
Priority: | unspecified | ||||||
Version: | 30 | CC: | alon, awilliam, bberg, cfergeau, fziglio, gmarr, hdegoede, jjanku, jonha87, marcandre.lureau, pasik, robatino, sandmann | ||||
Target Milestone: | --- | Keywords: | Reopened | ||||
Target Release: | --- | ||||||
Hardware: | Unspecified | ||||||
OS: | Unspecified | ||||||
Whiteboard: | RejectedBlocker | ||||||
Fixed In Version: | spice-vdagent-0.19.0-4.fc31 | Doc Type: | If docs needed, set a value | ||||
Doc Text: | Story Points: | --- | |||||
Clone Of: | Environment: | ||||||
Last Closed: | 2020-05-26 18:43:51 UTC | Type: | Bug | ||||
Regression: | --- | Mount Type: | --- | ||||
Documentation: | --- | CRM: | |||||
Verified Versions: | Category: | --- | |||||
oVirt Team: | --- | RHEL 7.3 requirements from Atomic Host: | |||||
Cloudforms Team: | --- | Target Upstream Version: | |||||
Embargoed: | |||||||
Attachments: |
|
Description
Kamil Páral
2019-09-24 15:18:23 UTC
Created attachment 1618646 [details]
test_clipboard script
This is a bash script useful to detect clipboard wipes.
Benjamin, you've already fixed bug 1750120, would you perhaps be able to look into this as well? Thanks a lot. Sorry, I fear that this bug is really different. I don't think I am the right person to look into this. I found out that when I have 2 VMs with F31 running, my clipboard is basically non-functional. My test script exits almost every time after 0-1 iterations. When I want to copy&paste something, I have to try e.g. 10 times before the clipboard is populated. I think this might be an issue to discussing during blocker review meeting. If I have 1 VM running, it's hit or miss. When I have 2 VMs running, I'm almost unable to use basic functionality in apps [1], like ctrl+c&ctrl+v copying of files in Nautilus, text processing in text editors, creating bug reports in firefox (because I need to copy hyperlinks often) etc. The condition is that you have virt-manager running [2] with 1 (but preferably multiple) VMs with F31 guests (preferably GNOME), and you're using X11 session on the host. [1] https://fedoraproject.org/wiki/Fedora_31_Final_Release_Criteria#Default_application_functionality [2] https://fedoraproject.org/wiki/Fedora_31_Beta_Release_Criteria#Self_hosting_virtualization Kamil, can you file an issue upstream at https://gitlab.freedesktop.org/spice/linux/vd_agent ? The upstream maintainer (Victor Toso) seems pretty active there but doesn't even have an account here, so I think we're more likely to get movement there. There's an existing issue: https://gitlab.freedesktop.org/spice/linux/vd_agent/issues/9 which looks sort of similar/related at least. That issue references this spice-gtk patch: https://lists.freedesktop.org/archives/spice-devel/2019-March/048583.html which looks like it has never been merged, so I guess you could try building spice-gtk with that patch and see if it helps? The next/better version was: https://lists.freedesktop.org/archives/spice-devel/2019-March/048601.html https://lists.freedesktop.org/archives/spice-devel/2019-March/048605.html Thanks! It seems those have not been merged yet either, right? nope, I am not maintaining those components, and I am not affected by the bug (yet!), so I leave it to the spice team. See also https://gitlab.freedesktop.org/spice/spice-gtk/issues/82 (which is probably the proper upsteam issue) (In reply to Marc-Andre Lureau from comment #7) > The next/better version was: > https://lists.freedesktop.org/archives/spice-devel/2019-March/048601.html > https://lists.freedesktop.org/archives/spice-devel/2019-March/048605.html Marc-Andre, could you perhaps create a koji scratch build for testing? Or at least provide the patch in some more easily digestible form, e.g. as a PR against upstream gitlab instance, so that I can download the whole diff? Also, do those patched versions need to be installed on the host, on the guest, or both? Thanks. Kamil, there's a patchwork for freedesktop. Here's all the relevant patches/series: [Jan 16] First attempt to address #82, v1: https://patchwork.freedesktop.org/patch/277597/ [Jan 16] First attempt to address #82, v2: https://patchwork.freedesktop.org/patch/277609/ [Mar 21] "clipboard: skip release between grabs" series: https://patchwork.freedesktop.org/series/58353/#rev1 (rev2 seems to be a patchwork glitch) [Mar 22] "Clipboard improvements" series for spice-gtk: https://patchwork.freedesktop.org/series/58418/#rev1 [Mar 22] "Clipboard improvements" series for spice-vdagent: https://patchwork.freedesktop.org/series/58418/#rev2 (note patchwork incorrectly thinks these are two revs of the same patch series, presumably because they have the same name) I'm not sure what combinations of the above to try. I guess try just both of the March 22 series together first, then fiddle around with the others if that doesn't help. BTW, I think you update spice-gtk on the *host* side and the agent on the *client* side, but can't hurt to update spice-gtk on both sides I guess. This indeed is the same issue as #82, I assume that it's caused by commit 5c009c20 in mutter: https://gitlab.gnome.org/GNOME/mutter/commit/5c009c20ab493fd610928d4581c52f0d448bea61 Previously, we saw issues on KDE with klipper which behaves the same as this new clipboard manager in mutter -- it takes clipboard ownership immediately once the original owner releases it. (In reply to Adam Williamson from comment #12) > [Mar 22] "Clipboard improvements" series for spice-gtk: > https://patchwork.freedesktop.org/series/58418/#rev1 > [Mar 22] "Clipboard improvements" series for spice-vdagent: > https://patchwork.freedesktop.org/series/58418/#rev2 None of these apply to the master branch of their projects. I tried to apply vdagent diff to the Fedora distgit tarball (version 0.19.0) and it applies well enough, but then fails to compile, because it seems to require some unreleased changes available only in master. I tried to figure out what commit are those patches based on and how to resolve conflicts when applying those damned mbox formats, but my beard is not long enough to help me succeed. This will need someone else to prepare the scratch builds. I usually resolve conflicts by hand-editing the patches, but I may be nuts. :P I rebased the series onto the current master, you can grab it here, branch "clipboard-race": https://github.com/jjanku/spice-protocol https://github.com/jjanku/spice-gtk https://github.com/jjanku/linux-vd_agent/ Discussed during the 2019-09-30 blocker review meeting: [0] The decision to classify this bug as a "RejectedBlocker" and an "AcceptedFreezeException" was made as we think a bug of this nature could conceivably be a blocker under various criteria, but as this one only manifests when using an X11 session (not default in most cases) *and* running a virtual machine, we agreed it's slightly too limited in impact. Accepted as an FE as it can't be fixed for live images with an update. [0] https://meetbot.fedoraproject.org/fedora-blocker-review/2019-09-30/f31-blocker-review.2019-09-30-16.00.txt (In reply to Jakub Janků from comment #17) > I rebased the series onto the current master, you can grab it here, branch > "clipboard-race": Thanks a lot, Jakub. I built those projects and installed them on both host and guest. The clipboard problem seems to be entirely gone. Now I can have 2 VMs easily and the clipboard still works as expected. I'm backporting all these patches to the packages. The linux-vd_agent branch has a *lot* of commits - I'm assuming all the not-obviously-related ones are needed for the clipboard ones to apply? FEDORA-2019-565a2a339d has been submitted as an update to Fedora 31. https://bodhi.fedoraproject.org/updates/FEDORA-2019-565a2a339d Oh, another question: do we need to send the agent fixes out for F29 and F30 as well? spice-gtk-0.37-4.fc31, spice-protocol-0.14.0-3.fc31, spice-vdagent-0.19.0-4.fc31 has been pushed to the Fedora 31 testing repository. If problems still persist, please make note of it in this bug report. See https://fedoraproject.org/wiki/QA:Updates_Testing for instructions on how to install test updates. You can provide feedback for this update here: https://bodhi.fedoraproject.org/updates/FEDORA-2019-565a2a339d (In reply to Adam Williamson from comment #22) > Oh, another question: do we need to send the agent fixes out for F29 and F30 > as well? The users on F29 and F30 could benefit from this as well, but the patches haven't been even reviewed by the spice team properly yet. Apart from that, some of them aren't related to this clipboard bug. (In reply to Fedora Update System from comment #23) > spice-gtk-0.37-4.fc31, spice-protocol-0.14.0-3.fc31, > spice-vdagent-0.19.0-4.fc31 has been pushed to the Fedora 31 testing > repository. I updated the F31 packages in my VM, but it doesn't fix the problem. I guess I'll need fixes for my F30 host as well, probably spice-gtk. spice-gtk-0.37-4.fc31, spice-protocol-0.14.0-3.fc31, spice-vdagent-0.19.0-4.fc31 has been pushed to the Fedora 31 stable repository. If problems still persist, please make note of it in this bug report. This is not fixed at least for F30 as a host. I'll try to test this with F31 host. Adam, can you please submit an update for F30 as well? I guess the gtk part could be enough. I was sort of hoping to wait for review on the patches before sending them out to stable releases (as Jakub implied in #c24). Jakub, any news on review? (In reply to Fedora Update System from comment #26) > spice-gtk-0.37-4.fc31, spice-protocol-0.14.0-3.fc31, > spice-vdagent-0.19.0-4.fc31 has been pushed to the Fedora 31 stable > repository. If problems still persist, please make note of it in this bug > report. I can confirm that this problem is fixed if the updated packages are installed on F31 host and F31 guest. OK, so let's drop F31 blocker metadata and re-assign to F30, assuming that's OK for you. hmm, so, 0.38 is done now, and sent to f31, but not f30. Jakub, Christophe, any ideas how to proceed here for F30? Should I try a backport for it? Dropping CommonBugs, because it's fixed in later releases. This message is a reminder that Fedora 30 is nearing its end of life. Fedora will stop maintaining and issuing updates for Fedora 30 on 2020-05-26. It is Fedora's policy to close all bug reports from releases that are no longer maintained. At that time this bug will be closed as EOL if it remains open with a Fedora 'version' of '30'. Package Maintainer: If you wish for this bug to remain open because you plan to fix it in a currently maintained version, simply change the 'version' to a later Fedora version. Thank you for reporting this issue and we are sorry that we were not able to fix it before Fedora 30 is end of life. If you would still like to see this bug fixed and are able to reproduce it against a later version of Fedora, you are encouraged change the 'version' to a later Fedora version prior this bug is closed as described in the policy above. Although we aim to fix as many bugs as possible during every release's lifetime, sometimes those efforts are overtaken by events. Often a more recent Fedora release includes newer upstream software that fixes bugs or makes them obsolete. Fedora 30 changed to end-of-life (EOL) status on 2020-05-26. Fedora 30 is no longer maintained, which means that it will not receive any further security or bug fix updates. As a result we are closing this bug. If you can reproduce this bug against a currently maintained version of Fedora please feel free to reopen this bug against that version. If you are unable to reopen this bug, please file a new report against the current release. If you experience problems, please add a comment to this bug. Thank you for reporting this bug and we are sorry it could not be fixed. The needinfo request[s] on this closed bug have been removed as they have been unresolved for 1000 days |