[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <20120706203825.20ce3e47@pyramind.ukuu.org.uk>
Date: Fri, 6 Jul 2012 20:38:25 +0100
From: Alan Cox <alan@...rguk.ukuu.org.uk>
To: Jukka Ollila <jiiksteri@...il.com>
Cc: linux-kernel@...r.kernel.org, kay@...y.org, jbeulich@...ell.com,
greg@...ah.com, torvalds@...ux-foundation.org
Subject: Regression - /proc/kmsg does not (always) block for 1-byte reads
On Fri, 6 Jul 2012 20:45:44 +0300
Jukka Ollila <jiiksteri@...il.com> wrote:
> Hello,
>
> A few days ago I filed a kernel regression report concerning a change
> in /proc/kmsg behaviour with short reads:
>
> https://bugzilla.kernel.org/show_bug.cgi?id=44211
>
> The comments suggest that this is probably intentional, but that it
> would be best make sure that the current semantics wrt short reads are
> as intended.
>
> The problem appears on a Debian (unstable) system that drains
> /proc/kmsg into a separate fifo read by klogd(8):
>
> /bin/dd bs=1 if=/proc/kmsg of=/var/run/klogd/kmsg
>
> With the recent kernel logging changes this /bin/dd exits immediately,
> as 1-byte reads are shorter than any log message could possibly be and
> read() returns 0. No dd feeding the fifo results in no logging and a
> rather unhappy klogd on the reading end of /var/run/klogd/kmsg.
>
> I suppose a safe solution is to only do reads that are big enough for
> any single kernel message, but this is still a change that affects
> user space being shipped, so some might find it surprising.
>
> I don't know what other distros do. Is it just Debian being the odd one out?
If this is observed on an actual standard distro userspace and breaks it
then its a regression and it needs fixing or reverting.
Cc'ing Linus
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
Powered by blists - more mailing lists