Path: csiph.com!fu-berlin.de!usenet.stanford.edu!not-for-mail From: mike b Newsgroups: gnu.bash.bug Subject: Reading from a file by using its FD returns its contents only once Date: Mon, 31 Dec 2018 02:36:43 +0100 Lines: 78 Approved: bug-bash@gnu.org Message-ID: NNTP-Posting-Host: lists.gnu.org Mime-Version: 1.0 Content-Type: text/plain; charset="UTF-8" X-Trace: usenet.stanford.edu 1546220220 897 208.118.235.17 (31 Dec 2018 01:37:00 GMT) X-Complaints-To: action@cs.stanford.edu To: bug-bash@gnu.org Envelope-to: bug-bash@gnu.org DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=mime-version:from:date:message-id:subject:to; bh=rNcB/Ifv5JumtMxwkQPm/hTqpfYnVvDkStNEmXQcg40=; b=olK6jxn2x+spX4ley9C3/RdZNYMAtIOad2GhUE5yTq8L6AzVyAuZ2HIvoNkyNEsvLC qboxIlqbEDu073SA9v+S2ieIZVf3plrOmdCXqcpoO9Dlolsjuoe5psp/bXA85UeDJ2Ut oht63TOuEhmiWvnKEP0KlXz6p57spbzHVDYzR1G8k87oVqahi7mJJtkKMsGVmEv0+bok g3jXaddWK5XlgILztgxgMDYOrCfxYZfeuNJMu1dFlKOrDQ8jz97lRijN7eXfvzJkGEaa +EgakCDhwNxiraGB5Fsk1dOvivE6uo2LAnB3bllvUuWSo/+Mu2H8UgsUoSzkJZYqYHMH kWkg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:mime-version:from:date:message-id:subject:to; bh=rNcB/Ifv5JumtMxwkQPm/hTqpfYnVvDkStNEmXQcg40=; b=NuZTcFN3IVMYRzLLgQUhVWtn5bNbOXRg5NYD02Kmw2lDAPh1uPoQQCSqL4KiQMOOKE 1aTAc54h18BnFmNFMqalrEUomZYmkRCTqsrG6cwzfu6Sb3bvEB2BbRlaLl6xmvZveIp8 jT7ZBMe9u8FupWd4G5q/R1MNpKtZ/Zt2TibWb/w7eCwUluY4b3yvxpeIF0EwPI+bwiDi YGmI0htvWW412fw7J8eFv224eElf4E/WTU+MFmhhUINO0NMHR/J6spjm/oTed+GGgWfw 53souK4xP6fDzm3IbPasi9mB6/D9ASw0u6ZwsMe4AsiTxq2DCmbRl938lUnZhDwHzJ+d +IjQ== X-Gm-Message-State: AJcUukd/Zmh3vLCgBHnjiOYdlo3Q/d4b0Jom1iKqSwkM0q+FDqKcFGsC N/rSvsDwAuRjqYg+mMOcT3uzGbMTRn0m5wtbQ/L0XtJ7 X-Google-Smtp-Source: ALg8bN4wHh4/mLMm+RN4CvBfaZYr43uphgVfrWgXWH/DTvPqR0H+CxuK8OqvDpkM2Q9YCWTbZDSj5q7TUu0rJSKNp44= X-Received: by 2002:a17:902:a98c:: with SMTP id bh12mr35944787plb.31.1546220215043; Sun, 30 Dec 2018 17:36:55 -0800 (PST) X-detected-operating-system: by eggs.gnu.org: Genre and OS details not recognized. X-Received-From: 2607:f8b0:4864:20::644 X-Content-Filtered-By: Mailman/MimeDel 2.1.21 X-BeenThere: bug-bash@gnu.org X-Mailman-Version: 2.1.21 Precedence: list List-Id: Bug reports for the GNU Bourne Again SHell List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Xref: csiph.com gnu.bash.bug:15013 Configuration Information: Machine: x86_64 OS: linux-gnu Compiler: gcc Compilation CFLAGS: -DPROGRAM='bash' -DCONF_HOSTTYPE='x86_64' -DCONF_OSTYPE='linux-gnu' -DCONF_MACHTYPE='x86_64-pc-linux-gnu' -DCONF_VENDOR='pc' -DLOCALEDIR='/usr/share/locale' -DPACKAGE='bash' -DSHELL -DHAVE_CONFIG_H -I. -I../. -I.././include -I.././lib -Wdate-time -D_FORTIFY_SOURCE=2 -g -O2 -fdebug-prefix-map=/build/bash-7fckc0/bash-4.4=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -no-pie -Wno-parentheses -Wno-format-security uname output: Linux debian9 4.9.0-8-amd64 #1 SMP Debian 4.9.130-2 (2018-10-27) x86_64 GNU/Linux Machine Type: x86_64-pc-linux-gnu Bash Version: 4.4 Patch Level: 12 Release Status: release I am not quite sure if this is a bug, but here's what I find as a bit odd behavior: # modprobe zram num_devices=0 # exec {add}./t # exec 10<./t # read -r <&10 # echo $REPLY bla # read -r <&10 # echo $REPLY # Playing with something like: # zram=/sys/class/zram/control/hot_add # c=0; while ((++c <= 3)); do read -r; echo "${REPLY:-NULL}"; done <"$zram" 0 NULL NULL # also gets same results. In contrast to: # c=0; while (( ++c <= 3 )); do read -r; echo "out: ${REPLY:-NULL}"; done foo out: foo foo out: foo foo out: foo # which keeps reading from default stdin (terminal in this case) without any hiccups (as expected). So, considering all the above, any hints on why subsequent reads in these scenarios don't get any data from a file would be really appreciated. :) Same behavior is seen in 4.3.30 and 5.0 versions.