Message ID | 1430873486-25868-2-git-send-email-honclo@linux.vnet.ibm.com (mailing list archive) |
---|---|
State | New, archived |
Headers | show |
On 05/05/2015 08:51 PM, Hon Ching(Vicky) Lo wrote: > Do not skip the last entry of the event log. > > Signed-off-by: Hon Ching(Vicky) Lo <honclo@linux.vnet.ibm.com> > Signed-off-by: Joy Latten <jmlatten@linux.vnet.ibm.com> > > Changelog: > - remove redundant code > --- > drivers/char/tpm/tpm_eventlog.c | 5 +---- > 1 files changed, 1 insertions(+), 4 deletions(-) > > diff --git a/drivers/char/tpm/tpm_eventlog.c b/drivers/char/tpm/tpm_eventlog.c > index 3a56a13..e77d8c1 100644 > --- a/drivers/char/tpm/tpm_eventlog.c > +++ b/drivers/char/tpm/tpm_eventlog.c > @@ -116,11 +116,8 @@ static void *tpm_bios_measurements_next(struct seq_file *m, void *v, > > event = v; > > - if (event->event_type == 0 && event->event_size == 0) > - return NULL; > - > if ((event->event_type == 0 && event->event_size == 0) || > - ((v + sizeof(struct tcpa_event) + event->event_size) >= limit)) > + ((v + sizeof(struct tcpa_event) + event->event_size) > limit)) > return NULL; > > (*pos)++; The limit stems from log->bios_event_log_end and is calculated as follows: log->bios_event_log_end = log->bios_event_log + len; The '>=' above is correct since the limit address itself is not part of the log anymore. The log is the following sequence of addresses: [log->bios_event_log ... log->bios_event_log + len - 1 ] or [log->bios_event_log ... log->bios_event_log + len [ with ']' meaning inclusive and '[' meaning exclusive. Stefan ------------------------------------------------------------------------------ One dashboard for servers and applications across Physical-Virtual-Cloud Widest out-of-the-box monitoring support with 50+ applications Performance metrics, stats and reports that give you Actionable Insights Deep dive visibility with transaction tracing using APM Insight. http://ad.doubleclick.net/ddm/clk/290420510;117567292;y
Hi Stefan, On Mon, 2015-05-11 at 09:02 -0400, Stefan Berger wrote: > On 05/05/2015 08:51 PM, Hon Ching(Vicky) Lo wrote: > > Do not skip the last entry of the event log. > > > > Signed-off-by: Hon Ching(Vicky) Lo <honclo@linux.vnet.ibm.com> > > Signed-off-by: Joy Latten <jmlatten@linux.vnet.ibm.com> > > > > Changelog: > > - remove redundant code > > --- > > drivers/char/tpm/tpm_eventlog.c | 5 +---- > > 1 files changed, 1 insertions(+), 4 deletions(-) > > > > diff --git a/drivers/char/tpm/tpm_eventlog.c b/drivers/char/tpm/tpm_eventlog.c > > index 3a56a13..e77d8c1 100644 > > --- a/drivers/char/tpm/tpm_eventlog.c > > +++ b/drivers/char/tpm/tpm_eventlog.c > > @@ -116,11 +116,8 @@ static void *tpm_bios_measurements_next(struct seq_file *m, void *v, > > > > event = v; > > > > - if (event->event_type == 0 && event->event_size == 0) > > - return NULL; > > - > > if ((event->event_type == 0 && event->event_size == 0) || > > - ((v + sizeof(struct tcpa_event) + event->event_size) >= limit)) > > + ((v + sizeof(struct tcpa_event) + event->event_size) > limit)) > > return NULL; > > > > (*pos)++; > > The limit stems from log->bios_event_log_end and is calculated as follows: > > log->bios_event_log_end = log->bios_event_log + len; > > The '>=' above is correct since the limit address itself is not part of > the log anymore. > > The log is the following sequence of addresses: > > [log->bios_event_log ... log->bios_event_log + len - 1 ] > > or > > [log->bios_event_log ... log->bios_event_log + len [ > > with ']' meaning inclusive and '[' meaning exclusive. > Thanks for pointing this out... you are correct. We are just seeing where the spec describes this. On powerpc(p8/powervm)) using vtpm, the last entry doesn't get shown when ">=", so I suspect phype may be giving us an "inclusive" len. Vicky and I will investigate this. regards, Joy ------------------------------------------------------------------------------ One dashboard for servers and applications across Physical-Virtual-Cloud Widest out-of-the-box monitoring support with 50+ applications Performance metrics, stats and reports that give you Actionable Insights Deep dive visibility with transaction tracing using APM Insight. http://ad.doubleclick.net/ddm/clk/290420510;117567292;y
diff --git a/drivers/char/tpm/tpm_eventlog.c b/drivers/char/tpm/tpm_eventlog.c index 3a56a13..e77d8c1 100644 --- a/drivers/char/tpm/tpm_eventlog.c +++ b/drivers/char/tpm/tpm_eventlog.c @@ -116,11 +116,8 @@ static void *tpm_bios_measurements_next(struct seq_file *m, void *v, event = v; - if (event->event_type == 0 && event->event_size == 0) - return NULL; - if ((event->event_type == 0 && event->event_size == 0) || - ((v + sizeof(struct tcpa_event) + event->event_size) >= limit)) + ((v + sizeof(struct tcpa_event) + event->event_size) > limit)) return NULL; (*pos)++;