kernel-packages team mailing list archive
-
kernel-packages team
-
Mailing list archive
-
Message #72671
[Bug 1208740] Re: Large pastes into readline enabled programs causes breakage from kernels v2.6.31 onwards
Attaching patch that is being sent to Kernel Team by e-mail.
** Patch added: "Trusty-pull-request-upstream-n_tty-Fix-buffer-overru.patch"
https://bugs.launchpad.net/ubuntu/+source/linux/+bug/1208740/+attachment/4162192/+files/Trusty-pull-request-upstream-n_tty-Fix-buffer-overru.patch
--
You received this bug notification because you are a member of Kernel
Packages, which is subscribed to linux in Ubuntu.
https://bugs.launchpad.net/bugs/1208740
Title:
Large pastes into readline enabled programs causes breakage from
kernels v2.6.31 onwards
Status in “linux” package in Ubuntu:
Fix Released
Status in “linux” source package in Precise:
Fix Released
Status in “linux” source package in Quantal:
Fix Released
Status in “linux” source package in Raring:
Fix Released
Status in “linux” source package in Saucy:
Fix Released
Bug description:
SRU Justification:
Impact: Large pastes over 4KB in a console may not be pasted
correctly.
Fix: A patch was posted here https://lkml.org/lkml/2013/9/3/539, that
resolves the issue. It is not upstreamed yet, pending additional
analysis.
Testcase:
1. gedit /usr/share/common-licenses/GPL (replace " with blanks)
2. select all and copy contents
3. open a terminal type "
4. paste contents
If the whole contents are pasted without any errors then we pass.
Additional Notes:
While this isn't upstreamed yet, this has already been accepted into Saucy and no additional bug reports or regressions have been detected yet. It would be useful to continue to monitor the upstream thread, and/or more deeply review this patch for potential deadlocks and contribute to the upstream discussion.
--
The bug is described in detail in this mail:
https://lkml.org/lkml/2013/7/25/205
This bug affects any readline enabled program, like bash or psql. A
"large" paste is any paste of more than 4kb of data (4kb is the size
of the kernel buffer for reading from the console).
As can be found in the lkml thread, the issue is caused by the
constant change between canonical mode and non-canonical mode, done by
readline for each line being read. This change means that when the
buffer is full, some characters might get lost.
This has been happening for a long time (starting with kernel
v2.6.31-rc5), but it was barely noticeable for a while. Some changes
done in the way the kernel schedules character reading in v2.6.39-rc1
made it much more noticeable. Even the most recent kernels are
affected.
To manage notifications about this bug go to:
https://bugs.launchpad.net/ubuntu/+source/linux/+bug/1208740/+subscriptions
References