Go to file
Karel Zak b2bff06661 script: use empty-slave heuristic more carefully
script(1) waits for empty slave FD (shell stdin) before it writes to
master. This feature has been intorduiced by 54c6611d6f
to avoid misbehavior when we need to send EOF to the shell.

Unfortunately, this feature has been used all time for all messages.
This is wrong because command in the session (or shell) may ignore
stdin at all and wait forever in busy loop is really bad idea. Test
case:

 script /dev/null
 tailf /etc/passwd
 <enter>
 <enter>

... script process taking 100% CPU.

This patch forces script to use empty-stave detection only when we
need to write EOF. The busy loop has been modified to use nanosleep
and it does not wait forever...

Addresses: http://bugs.debian.org/820843
Signed-off-by: Karel Zak <kzak@redhat.com>
2016-04-13 11:52:43 +02:00
Documentation docs: update v2.28-ReleaseNotes 2016-04-12 12:31:56 +02:00
bash-completion bash-completion: update chrt completion 2016-04-04 10:26:03 +02:00
config build-sys: inform gtk-doc about __ul_attribute__ 2013-03-15 14:58:08 +01:00
disk-utils fdisk: remove dead assignment [clang analyze] 2016-03-29 14:13:22 +02:00
include libblkid: Update for newer bcache superblocks 2016-03-23 10:52:38 +01:00
lib lib/strutils: use int for fgetc() 2016-04-04 11:01:15 +02:00
libblkid libblkid: revert mmap usage 2016-03-30 14:53:33 +02:00
libfdisk libfdisk: fix ref.counting in fdisk_apply_script() [clang analyze] 2016-03-30 11:18:07 +02:00
libmount libmount: Fix possible NULL dereference in get_btrfs_fs_root() 2016-03-31 11:45:55 +02:00
libsmartcols build-sys: use AC_PROG_MKDIR_P and remove a few gnuisms 2016-03-13 21:48:09 +01:00
libuuid build-sys: use AC_PROG_MKDIR_P and remove a few gnuisms 2016-03-13 21:48:09 +01:00
login-utils vipw: make tmp_file usage more robust [clang analyze] 2016-03-29 13:23:32 +02:00
m4 build-sys: check linker support for version scripts 2016-02-18 12:53:48 +01:00
misc-utils rename: add example to the man page 2016-04-06 13:43:57 +02:00
po po: merge changes 2016-04-12 12:29:25 +02:00
schedutils chrt: make --sched-* short options to require an argument 2016-04-04 10:26:03 +02:00
sys-utils ipcs: make static analyzer happy [clang analyze] 2016-03-29 14:02:57 +02:00
term-utils script: use empty-slave heuristic more carefully 2016-04-13 11:52:43 +02:00
tests tests: remove deprecated md5sum based fdisk/bsd test 2016-04-06 13:46:34 +02:00
text-utils docs: miscellaneous tiny tweaks of man pages 2016-03-17 12:18:54 +01:00
tools tools: add missing checkcompletion.sh 2016-03-17 14:34:29 +01:00
.editorconfig add .editorconfig 2016-01-25 00:12:14 +01:00
.gitignore build-sys: ignore vim .swp files 2016-03-22 14:12:25 +01:00
.travis-functions.sh travis: let's ignore apt-get return code 2016-03-14 17:01:25 +01:00
.travis.yml travis: add OSX build 2016-03-13 21:51:18 +01:00
AUTHORS docs: update AUTHORS file 2016-04-12 12:30:40 +02:00
COPYING docs: corrections to FSF license files, and postal address 2012-02-24 14:13:35 +01:00
ChangeLog build-sys: use AUTOMAKE_OPTIONS = gnu 2011-05-26 15:04:01 +02:00
Makefile.am tools: add checkcompletion.sh 2016-03-17 14:05:27 +01:00
NEWS build-sys: release++ (v2.28) 2016-04-12 12:33:03 +02:00
README docs: update links to http://git.kernel.org/ web repository views 2013-11-12 11:47:57 +01:00
README.licensing COPYING: fix grammar of referring phrase, and indicate location better 2013-10-08 15:38:39 +02:00
autogen.sh build-sys: fix [g]libtoolize version for OSX 2016-02-18 12:53:48 +01:00
configure.ac build-sys: release++ (v2.28) 2016-04-12 12:33:03 +02:00
util-linux.doap doap: fix download URL 2016-01-25 15:42:53 +01:00

README

                                  util-linux

              util-linux is a random collection of Linux utilities

     Note that in years 2006-2010 this project used the name "util-linux-ng".

MAILING LIST:

      E-MAIL: util-linux@vger.kernel.org
      URL:    http://vger.kernel.org/vger-lists.html#util-linux


DOWNLOAD:

      ftp://ftp.kernel.org/pub/linux/utils/util-linux/


SOURCE CODE:

      Web interface:
          http://git.kernel.org/cgit/utils/util-linux/util-linux.git
          https://github.com/karelzak/util-linux
      Checkout:
          git clone git://git.kernel.org/pub/scm/utils/util-linux/util-linux.git util-linux


NLS (PO TRANSLATIONS):

      PO files are maintained by:
          http://translationproject.org/domain/util-linux.html


VERSION SCHEMA:

      Standard releases:

          <major>.<minor>[.<maint>[.<bugfix>]]

             major = fatal and deep changes
             minor = typical release with new features
             maint = maintenance releases; bug fixes only
             bugfix = unplanned releases for critical/security bugs

      Development releases:

         <major>.<minor>-rc<N>