lkml.org 
[lkml]   [2019]   [Sep]   [23]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
Date
From
SubjectRe: [PATCH] printk: Fix unnecessary returning broken pipe error from devkmsg_read
On (09/18/19 21:31), zhe.he@windriver.com wrote:
>
> When users read the buffer from start, there is no need to return -EPIPE
> since the possible overflows will not affect the output.
>
[..]
> - if (user->seq < log_first_seq) {
> + if (user->seq == 0) {
> + user->seq = log_first_seq;
> + } else if (user->seq < log_first_seq) {
> /* our last seen message is gone, return error and reset */
> user->idx = log_first_idx;
> user->seq = log_first_seq;

A tough call.

User-space wants to read messages which are gone: log_first_seq > user->seq.

I think returning EPIPE is sort of appropriate; user-space, possibly,
can printf(stderr, "Some /dev/kmsg messages are gone\n"); or something
like that.

-ss

\
 
 \ /
  Last update: 2019-09-23 12:06    [W:0.045 / U:0.052 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site