--- coreutils-5.93/src/tail.c.orig 2005-11-02 05:18:47.000000000 -0800 +++ coreutils-5.93/src/tail.c 2005-11-15 17:58:55.852102952 -0800 @@ -1020,7 +1020,8 @@ int new_flags = old_flags | (blocking ? 0 : O_NONBLOCK); if (old_flags < 0 || (new_flags != old_flags - && fcntl (fd, F_SETFL, new_flags) == -1)) + && fcntl (fd, F_SETFL, new_flags) == -1 + && (!S_ISREG(f[i].mode) || errno != EPERM))) error (EXIT_FAILURE, errno, _("%s: cannot change nonblocking mode"), name); f[i].blocking = blocking;