On 26/01/18 16:05, Greg Wooledge wrote: > On Fri, Jan 26, 2018 at 03:45:22PM +0000, Peter Hillier-Brook wrote: >> On 26/01/18 10:47, Felipe Salvador wrote: >>> $ while true; do echo a>>a; done >>> >>> makes bash crash when file size is reached > >> A crash is always a bug. I suggest that you report it as such - if not >> already reported. > > Yes, it's a bug in his script. Not in bash. > > Resource limits are quite low-level; they are implemented as kernel > system calls (see setrlimit(2)). Processes which violate a resource > limit are signalled by the kernel. > > In the case of RLIMIT_FSIZE: > > This is the maximum size of files that the process may create. > Attempts to extend a file beyond this limit result in delivery > of a SIGXFSZ signal. By default, this signal terminates a > process, but a process can catch this signal instead, in which > case the relevant system call (e.g., write(2), truncate(2)) > fails with the error EFBIG. > > If the OP wants the script to exit gracefully, then a signal trap > must be set up. Otherwise, the shell is simply terminated. > > Thanks for the elaboration. Peter HB
Attachment:
signature.asc
Description: OpenPGP digital signature