Messages in this thread | | | Date | Tue, 11 Jul 2017 14:17:47 -0700 (PDT) | From | Shivappa Vikas <> | Subject | Re: [PATCH 14/21] x86/intel_rdt/cqm: Add mon_data |
| |
On Thu, 6 Jul 2017, Thomas Gleixner wrote:
> On Thu, 6 Jul 2017, Shivappa Vikas wrote: >> On Sun, 2 Jul 2017, Thomas Gleixner wrote: >>>> +static bool __mon_event_count(u32 rmid, struct rmid_read *rr) >>>> +{ >>>> + u64 tval; >>>> + >>>> + tval = __rmid_read(rmid, rr->evtid); >>>> + if (tval & (RMID_VAL_ERROR | RMID_VAL_UNAVAIL)) { >>>> + rr->val = tval; >>>> + return false; >>>> + } >>>> + switch (rr->evtid) { >>>> + case QOS_L3_OCCUP_EVENT_ID: >>>> + rr->val += tval; >>>> + return true; >>>> + default: >>>> + return false; >>> >>> I have no idea what that return code means. >> >> false for the invalid event id and all errors for __rmid_read. (IOW all errors >> for __mon_event-read) > > Sure, but why bool? What's wrong with proper error return codes, so issues > can be distinguished and potentially propagated in the callchain?
Ok, The error is propagated wih the rr->val actually. is this better?
Hardware throws the RMID_VAL_ERROR (bit 63) when an invalid RMID or event is written to event select - this case seems similar.
default: rr->val = RMID_VAL_ERROR; return -EINVAL; }
Thanks, Vikas
> > Thanks, > > tglx > > > > >
| |