New issue
Advanced search Search tips
Note: Color blocks (like or ) mean that a user may not be available. Tooltip shows the reason.

Issue 897802 link

Starred by 3 users

Issue metadata

Status: Assigned
Owner:
Cc:
Components:
EstimatedDays: ----
NextAction: ----
OS: Chrome
Pri: 1
Type: Bug



Sign in to add a comment

Pasting lots of text into crostini or performing many system clipboard operations hangs the container environment and browser

Project Member Reported by kbr@chromium.org, Oct 22

Issue description

Google Chrome	71.0.3578.8 (Official Build) dev (64-bit)
Revision	a2c2b8f674ee3b7372bc87891e04a14a0e51e812-refs/branch-heads/3578@{#14}
Platform	11151.4.0 (Official Build) dev-channel eve

What steps will reproduce the problem?
(1) Copy-paste the contents of the attached file into the (Google-internal) crsym/ tool and run the symbolization
(2) Copy the symbolized stack trace
(3) Attempt to paste into the crostini environment (either in emacs, or into "cat > symbolized.txt" in the terminal)

What is the expected result?

Expect the paste operation to eventually complete.

What happens instead?

Container environment is wedged. I first attempted to do this into emacs and had to kill the process. Then attempted to do it into the terminal and now the terminal is unresponsive, can't Ctrl-C it, and can't launch a new Terminal to attempt to kill the old one.

 
Sample of Google Chrome Helper.txt
659 KB View Download
Cc: dcasta...@chromium.org
Components: UI>Browser>Profiles
Labels: -Pri-2 Pri-1
Have just run into this or a similar problem again after just running an emacs macro against a large file. The macro cut some text, which ends up putting it on the system clipboard. I don't think that it grew the system clipboard to a huge size, but rather repeatedly replaced the contents of the system clipboard. After running this macro, both the container and the *entire browser* are wedged. The cache is busy, which indicates to me that the system clipboard is implemented via browser cache operations, and they're not reliable.

To reproduce:

1) Open the attached file in emacs inside Crostini
2) Start a keyboard macro:

      Ctrl-x (

3) Search for the end of the text "pool":

      Ctrl-s pool":

4) Stop searching and move to the open bracket:

      Ctrl-f

5) Start selecting:

      Ctrl-space

6) Search for close bracket:

      Ctrl-s ]

8) Copy this text:

      Alt-w  (or: Esc-w if key bindings aren't 100% set up for this)

9) Move to beginning of line:

      Ctrl-a

10) Paste:

      Ctrl-y

11) Cut to end of line:

      Ctrl-k

12) Move to beginning of next line:

      Ctrl-a Ctrl-n

13) Stop recording the macro:

      Ctrl-x )

Now you can invoke this macro via:

      Ctrl-x e

and repeatedly invoke it by pressing "e" many times.

You'll be able to process the whole file, but the terminal, the Crostini environment and the whole browser will be irrevocably wedged afterward.

Raising to P1. This bug makes the container environment nearly unusable for development.

dcastagna@: any chance you could help route this to the appropriate people? Thanks in advance.

mac-minis-caches-orig.txt
200 KB View Download
Summary: Pasting lots of text into crostini or performing many system clipboard operations hangs the container environment and browser (was: Pasting large amounts of text into crostini wedges the container environment)
Owner: za...@chromium.org
Owner: dcasta...@chromium.org
This looks like a Chrome browser bug related to the clipboard subsystem. I have no clue how that works. Punting back to dcastagna@
Components: Blink>DataTransfer
How does Crostini's system clipboard work? Is it layered on top of the browser's copy/paste functionality? Adding Blink>DataTransfer if so.

Cc: kbr@chromium.org za...@chromium.org
Owner: niwa@chromium.org
It is, it uses the wl_data_offer interface to integrate with Exo.
Just looking at the data offer code in exo, it seems like Niwa had done some work around there. Assigning to him, please redirect as appropriate. 
kbr: are you pasting into Terminal ?  or into a Linux app ?  if it's Terminal, that's just HTML/JS code, so that isn't using any of the wayland/exo/etc... code paths.
See c#1; this is happening when running windowed-mode emacs under Crostini. When emacs cuts text, it goes on the system clipboard.

I've also managed to provoke this per the original bug report by pasting large amounts of text into the Terminal which was running "cat > foo.txt". But the fact that the system clipboard in Crostini is unreliable and can wedge not only the container environment but the whole browser is a showstopper.

Labels: M-72 Proj-Containers
Status: Assigned (was: Untriaged)
Cc: vapier@chromium.org tbuck...@chromium.org
Labels: ReleaseBlock-Stable
Marking this R-B-S for M72 so this gets attention, and triaged. This is a serious reliability issue that breaks the container environment when it happens, requiring a reboot to fix.

niwa@ hasn't visited this issue tracker in over 30 days. Who can own this bug?

Comment 11 by uekawa@google.com, Today (7 hours ago)

Cc: hirono@chromium.org

Comment 12 by uekawa@google.com, Today (7 hours ago)

wayland copy-paste was implemented by hirono I believe.

Comment 13 by hirono@google.com, Today (6 hours ago)

Owner: tbuck...@chromium.org
Note that the problem may be around wl_data_source, which handles data transfer in the crostini -> chrome direction. wl_data_offer is for the other direction.

I guess we need someone from the crostini team to work on the issue. I was asked by the crostini team to create the initial implementation of clipboard because there is some overlap between ARC++ and crostini. After that there is no explicit owner but reveman@ was taking care of the clipboard as a part of exo. Now he moved from the team.

tbuckley@ - could you find new owner for the issue?

Sign in to add a comment