Hi Thomas, thanks for the review.
On 22/06/2017 16:47, Thomas Gleixner wrote: > On Tue, 20 Jun 2017, Daniel Lezcano wrote: >> + >> +struct irq_timings { >> + u64 values[IRQ_TIMINGS_SIZE]; /* our circular buffer */ >> + unsigned int count; /* Number of interruptions since last inspection */ > > Groan. These tail comments are horrible. > > Please make the struct member names tabular aligned and add proper kernel > doc comments if you want to add useful documentations for the fields. [ ... ] Ok. >> + * The interrupt number and the timestamp are encoded into a single >> + * u64 variable to optimize the size. >> + * 48 bit time stamp and 16 bit IRQ number is way sufficient. >> + * Who cares an IRQ after 78 hours of idle time? >> + */ >> +static inline u64 irq_timing_encode(u64 timestamp, int irq) >> +{ >> + return (timestamp << 16) | irq; >> +} >> + >> +static inline void irq_timing_decode(u64 value, u64 *timestamp, int *irq) > > What's wrong with using a return value instead of void? Nothing wrong, as we are expecting two values I don't like the idea to have one returned and the other one passed as a pointer. It is a matter of taste. I can return the irq if you prefer. -- <http://www.linaro.org/> Linaro.org │ Open source software for ARM SoCs Follow Linaro: <http://www.facebook.com/pages/Linaro> Facebook | <http://twitter.com/#!/linaroorg> Twitter | <http://www.linaro.org/linaro-blog/> Blog