tty: move IO of master pty to be done with epoll#1455
tty: move IO of master pty to be done with epoll#1455mrunalp merged 3 commits intoopencontainers:masterfrom
Conversation
|
@dqminh thanks, i'll help test this one |
0bb6adf to
5a9d1c5
Compare
|
@crosbymichael CI looks fine now after a few more fixes. I did some manual testings too and things look ok. |
|
Thanks, i'll test tomorrow |
|
Nice, I'll test this as well. |
tty.go
Outdated
| r.Close() | ||
| } | ||
|
|
||
| type EpollConsole struct { |
There was a problem hiding this comment.
Can we maybe move this into a package that can be imported as every client that does detach will have to implement this.
There was a problem hiding this comment.
Also this needs a doc comment describing what it does, because I know the next time I'm going to have to touch this code it's going to be a fun time.
|
Any movement on this patch? |
|
@rhatdan oops, sorry for the delay, i'm preparing a patch to move epoll for console lib so its usable outside runc, then i will update this PR with the new changes. |
f88ca2e to
155c6b6
Compare
|
@crosbymichael @cyphar @mrunalp updated with changes from containerd/console. With containerd/console#14 i think we will have everything we need. |
|
@dqminh merged your console PR |
0889aad to
024eaaf
Compare
|
rebased on master and updated vendor.conf to latest console rev. |
|
poke @opencontainers/runc-maintainers |
This moves all console code to use github.com/containerd/console library to handle console I/O. Also move to use EpollConsole by default when user requests a terminal so we can still cope when the other side temporarily goes away. Signed-off-by: Daniel Dao <dqminh89@gmail.com>
Signed-off-by: Daniel Dao <dqminh89@gmail.com>
This removes usages of docker/pkg/term to set raw terminal, handle interrupt and restore the terminal, and instead use containerd/console and handle interrupt ourselves. Signed-off-by: Daniel Dao <dqminh89@gmail.com>
|
ping @opencontainers/runc-maintainers |
1 similar comment
|
@dqminh++ Thank you! |
Fix #1434
Fix #1446
Using edge-triggered event with epoll to make sure that we can still cope with
the other side temporarilt goes away.