[PATCH v3] vmcore-dmesg: Collect full dmesg regardless of logged_chars

Simon Horman horms at verge.net.au
Tue Dec 8 20:01:52 PST 2015


On Wed, Dec 09, 2015 at 10:28:03AM +0800, Dave Young wrote:
> On 12/08/15 at 03:04pm, Simon Horman wrote:
> > On Tue, Dec 08, 2015 at 11:36:04AM +0800, Dave Young wrote:
> > > On 11/18/15 at 01:24pm, Dangyi Liu wrote:
> > > > Simon,
> > > > 
> > > > Could you help to review this patch?
> > > > 
> > > > Thanks,
> > > > Dangyi Liu
> > > > 
> > > > On Wed, 2015-10-28 at 17:15 +0800, Dangyi Liu wrote:
> > > > > logged_chars would be set to 0 by `dmesg -c`, but full dmesg is
> > > > > useful
> > > > > for debugging. So instead of using logged_chars directly, we
> > > > > calculate
> > > > > it by ourselves.
> > > > > 
> > > > > Now logged_chars is set to the minimum of log_end and log_buf_len, as
> > > > > the same logic as crash utility is using.
> > > > > 
> > > > > Signed-off-by: Dangyi Liu <dliu at redhat.com>
> > > > > Cc: Dave Young <dyoung at redhat.com>
> > > > > ---
> > > > > Changes:
> > > > >   v1->v2: Update comment and commit message.
> > > > >   v2->v3: Adjust maximum line length
> > > > > 
> > > > >  vmcore-dmesg/vmcore-dmesg.c | 6 ++++++
> > > > >  1 file changed, 6 insertions(+)
> > > > > 
> > > > > diff --git a/vmcore-dmesg/vmcore-dmesg.c b/vmcore-dmesg/vmcore-
> > > > > dmesg.c
> > > > > index f47ee11..0364636 100644
> > > > > --- a/vmcore-dmesg/vmcore-dmesg.c
> > > > > +++ b/vmcore-dmesg/vmcore-dmesg.c
> > > > > @@ -540,6 +540,12 @@ static void dump_dmesg_legacy(int fd)
> > > > >  		exit(53);
> > > > >  	}
> > > > >  
> > > > > +	/*
> > > > > +	 * To collect full dmesg including the part before `dmesg
> > > > > -c` is useful
> > > > > +	 * for later debugging. Use same logic as what crash utility
> > > > > is using.
> > > > > +	 */
> > > > > +	logged_chars = log_end < log_buf_len ? log_end :
> > > > > log_buf_len;
> > > > > +
> > > > >  	write_to_stdout(buf + (log_buf_len -  logged_chars),
> > > > > logged_chars);
> > > > >  }
> > > > >  
> > > > 
> > > 
> > > Simon,
> > > 
> > > What's your opinion about this patch? It is a rh internal report.
> > > Current code make sense, adding the patch will be slight better though
> > > for kdump case. But if you do not like it we can ignore it and close
> > > the bug.
> > 
> > This seems reasonable to me, but perhaps the logic should only kick
> > in if logged_chars is 0?
> > 
> 
> It will contain at least panic messages to it is unlikely logged_chars = 0?

Understood. I have applied the patch.



More information about the kexec mailing list