* [PATCH 0/2] staging: slicoss: minor changes to clean some code
@ 2016-11-23 18:10 Sergio Paracuellos
2016-11-23 18:10 ` [PATCH 1/2] staging: slicoss: remove not used UPDATE_STATS macro Sergio Paracuellos
2016-11-23 18:10 ` [PATCH 2/2] staging: slicoss: replace UPDATE_STATS_GB macro into an inline function Sergio Paracuellos
0 siblings, 2 replies; 6+ messages in thread
From: Sergio Paracuellos @ 2016-11-23 18:10 UTC (permalink / raw)
To: gregkh; +Cc: devel, linux-kernel, liodot, charrer
This patchset clean some code in slicoss driver:
* Removes not used macro.
* Replaces a macro with an inline function.
Sergio Paracuellos (2):
staging: slicoss: remove not used UPDATE_STATS macro
staging: slicoss: replace UPDATE_STATS_GB macro into an inline
function
drivers/staging/slicoss/slic.h | 14 +++-------
drivers/staging/slicoss/slicoss.c | 56 ++++++++++++++++++++-------------------
2 files changed, 32 insertions(+), 38 deletions(-)
--
1.9.1
^ permalink raw reply [flat|nested] 6+ messages in thread* [PATCH 1/2] staging: slicoss: remove not used UPDATE_STATS macro 2016-11-23 18:10 [PATCH 0/2] staging: slicoss: minor changes to clean some code Sergio Paracuellos @ 2016-11-23 18:10 ` Sergio Paracuellos 2016-11-23 18:10 ` [PATCH 2/2] staging: slicoss: replace UPDATE_STATS_GB macro into an inline function Sergio Paracuellos 1 sibling, 0 replies; 6+ messages in thread From: Sergio Paracuellos @ 2016-11-23 18:10 UTC (permalink / raw) To: gregkh; +Cc: devel, linux-kernel, liodot, charrer This patch remove UPDATE_STATS macro from header slic.h which is not being used. Signed-off-by: Sergio Paracuellos <sergio.paracuellos@gmail.com> --- drivers/staging/slicoss/slic.h | 8 -------- 1 file changed, 8 deletions(-) diff --git a/drivers/staging/slicoss/slic.h b/drivers/staging/slicoss/slic.h index 1f6562c..2c05868 100644 --- a/drivers/staging/slicoss/slic.h +++ b/drivers/staging/slicoss/slic.h @@ -548,14 +548,6 @@ static inline void slic_flush_write(struct adapter *adapter) ioread32(adapter->regs + SLIC_REG_HOSTID); } -#define UPDATE_STATS(largestat, newstat, oldstat) \ -{ \ - if ((newstat) < (oldstat)) \ - (largestat) += ((newstat) + (0xFFFFFFFF - oldstat + 1)); \ - else \ - (largestat) += ((newstat) - (oldstat)); \ -} - #define UPDATE_STATS_GB(largestat, newstat, oldstat) \ { \ (largestat) += ((newstat) - (oldstat)); \ -- 1.9.1 ^ permalink raw reply [flat|nested] 6+ messages in thread
* [PATCH 2/2] staging: slicoss: replace UPDATE_STATS_GB macro into an inline function 2016-11-23 18:10 [PATCH 0/2] staging: slicoss: minor changes to clean some code Sergio Paracuellos 2016-11-23 18:10 ` [PATCH 1/2] staging: slicoss: remove not used UPDATE_STATS macro Sergio Paracuellos @ 2016-11-23 18:10 ` Sergio Paracuellos 2016-11-23 19:00 ` Markus Böhme 1 sibling, 1 reply; 6+ messages in thread From: Sergio Paracuellos @ 2016-11-23 18:10 UTC (permalink / raw) To: gregkh; +Cc: devel, linux-kernel, liodot, charrer This patch replaces UPDATE_STATS_GB macro in slic.h header file into an inline function. This provides type safety and readability. Signed-off-by: Sergio Paracuellos <sergio.paracuellos@gmail.com> --- drivers/staging/slicoss/slic.h | 6 ++--- drivers/staging/slicoss/slicoss.c | 56 ++++++++++++++++++++------------------- 2 files changed, 32 insertions(+), 30 deletions(-) diff --git a/drivers/staging/slicoss/slic.h b/drivers/staging/slicoss/slic.h index 2c05868..b19ddc9 100644 --- a/drivers/staging/slicoss/slic.h +++ b/drivers/staging/slicoss/slic.h @@ -548,9 +548,9 @@ static inline void slic_flush_write(struct adapter *adapter) ioread32(adapter->regs + SLIC_REG_HOSTID); } -#define UPDATE_STATS_GB(largestat, newstat, oldstat) \ -{ \ - (largestat) += ((newstat) - (oldstat)); \ +static inline u64 update_stats_gb(const u64 newstat, const u64 oldstat) +{ + return (newstat - oldstat); } #if BITS_PER_LONG == 64 diff --git a/drivers/staging/slicoss/slicoss.c b/drivers/staging/slicoss/slicoss.c index b6ec0a1..6d2f9cc 100644 --- a/drivers/staging/slicoss/slicoss.c +++ b/drivers/staging/slicoss/slicoss.c @@ -1014,45 +1014,47 @@ static void slic_upr_request_complete(struct adapter *adapter, u32 isr) break; } - UPDATE_STATS_GB(stst->tcp.xmit_tcp_segs, stats->xmit_tcp_segs, - old->xmit_tcp_segs); + stst->tcp.xmit_tcp_segs = update_stats_gb(stats->xmit_tcp_segs, + old->xmit_tcp_segs); - UPDATE_STATS_GB(stst->tcp.xmit_tcp_bytes, stats->xmit_tcp_bytes, - old->xmit_tcp_bytes); + stst->tcp.xmit_tcp_bytes = + update_stats_gb(stats->xmit_tcp_bytes, + old->xmit_tcp_bytes); - UPDATE_STATS_GB(stst->tcp.rcv_tcp_segs, stats->rcv_tcp_segs, - old->rcv_tcp_segs); + stst->tcp.rcv_tcp_segs = update_stats_gb(stats->rcv_tcp_segs, + old->rcv_tcp_segs); - UPDATE_STATS_GB(stst->tcp.rcv_tcp_bytes, stats->rcv_tcp_bytes, - old->rcv_tcp_bytes); + stst->tcp.rcv_tcp_bytes = update_stats_gb(stats->rcv_tcp_bytes, + old->rcv_tcp_bytes); - UPDATE_STATS_GB(stst->iface.xmt_bytes, stats->xmit_bytes, - old->xmit_bytes); + stst->iface.xmt_bytes = update_stats_gb(stats->xmit_bytes, + old->xmit_bytes); - UPDATE_STATS_GB(stst->iface.xmt_ucast, stats->xmit_unicasts, - old->xmit_unicasts); + stst->iface.xmt_ucast = update_stats_gb(stats->xmit_unicasts, + old->xmit_unicasts); - UPDATE_STATS_GB(stst->iface.rcv_bytes, stats->rcv_bytes, - old->rcv_bytes); + stst->iface.rcv_bytes = update_stats_gb(stats->rcv_bytes, + old->rcv_bytes); - UPDATE_STATS_GB(stst->iface.rcv_ucast, stats->rcv_unicasts, - old->rcv_unicasts); + stst->iface.rcv_ucast = update_stats_gb(stats->rcv_unicasts, + old->rcv_unicasts); - UPDATE_STATS_GB(stst->iface.xmt_errors, stats->xmit_collisions, - old->xmit_collisions); + stst->iface.xmt_errors = update_stats_gb(stats->xmit_collisions, + old->xmit_collisions); - UPDATE_STATS_GB(stst->iface.xmt_errors, - stats->xmit_excess_collisions, - old->xmit_excess_collisions); + stst->iface.xmt_errors = + update_stats_gb(stats->xmit_excess_collisions, + old->xmit_excess_collisions); - UPDATE_STATS_GB(stst->iface.xmt_errors, stats->xmit_other_error, - old->xmit_other_error); + stst->iface.xmt_errors = + update_stats_gb(stats->xmit_other_error, + old->xmit_other_error); - UPDATE_STATS_GB(stst->iface.rcv_errors, stats->rcv_other_error, - old->rcv_other_error); + stst->iface.rcv_errors = update_stats_gb(stats->rcv_other_error, + old->rcv_other_error); - UPDATE_STATS_GB(stst->iface.rcv_discards, stats->rcv_drops, - old->rcv_drops); + stst->iface.rcv_discards = update_stats_gb(stats->rcv_drops, + old->rcv_drops); if (stats->rcv_drops > old->rcv_drops) adapter->rcv_drops += (stats->rcv_drops - -- 1.9.1 ^ permalink raw reply [flat|nested] 6+ messages in thread
* Re: [PATCH 2/2] staging: slicoss: replace UPDATE_STATS_GB macro into an inline function 2016-11-23 18:10 ` [PATCH 2/2] staging: slicoss: replace UPDATE_STATS_GB macro into an inline function Sergio Paracuellos @ 2016-11-23 19:00 ` Markus Böhme 2016-11-23 22:32 ` Markus Böhme 0 siblings, 1 reply; 6+ messages in thread From: Markus Böhme @ 2016-11-23 19:00 UTC (permalink / raw) To: Sergio Paracuellos, gregkh; +Cc: devel, linux-kernel, liodot On 11/23/2016 07:10 PM, Sergio Paracuellos wrote: > This patch replaces UPDATE_STATS_GB macro in slic.h header file > into an inline function. This provides type safety and readability. > > Signed-off-by: Sergio Paracuellos <sergio.paracuellos@gmail.com> > --- > drivers/staging/slicoss/slic.h | 6 ++--- > drivers/staging/slicoss/slicoss.c | 56 ++++++++++++++++++++------------------- > 2 files changed, 32 insertions(+), 30 deletions(-) > > diff --git a/drivers/staging/slicoss/slic.h b/drivers/staging/slicoss/slic.h > index 2c05868..b19ddc9 100644 > --- a/drivers/staging/slicoss/slic.h > +++ b/drivers/staging/slicoss/slic.h > @@ -548,9 +548,9 @@ static inline void slic_flush_write(struct adapter *adapter) > ioread32(adapter->regs + SLIC_REG_HOSTID); > } > > -#define UPDATE_STATS_GB(largestat, newstat, oldstat) \ > -{ \ > - (largestat) += ((newstat) - (oldstat)); \ > +static inline u64 update_stats_gb(const u64 newstat, const u64 oldstat) > +{ > + return (newstat - oldstat); > } > I suggest dropping the parentheses here. They are unnecessary and likely to lead to a cleanup patch. Regards, Markus ^ permalink raw reply [flat|nested] 6+ messages in thread
* Re: [PATCH 2/2] staging: slicoss: replace UPDATE_STATS_GB macro into an inline function 2016-11-23 19:00 ` Markus Böhme @ 2016-11-23 22:32 ` Markus Böhme 2016-11-24 19:01 ` Sergio Paracuellos 0 siblings, 1 reply; 6+ messages in thread From: Markus Böhme @ 2016-11-23 22:32 UTC (permalink / raw) To: Sergio Paracuellos, gregkh; +Cc: devel, linux-kernel, liodot On 11/23/2016 08:00 PM, Markus Böhme wrote: > On 11/23/2016 07:10 PM, Sergio Paracuellos wrote: >> This patch replaces UPDATE_STATS_GB macro in slic.h header file >> into an inline function. This provides type safety and readability. >> >> Signed-off-by: Sergio Paracuellos <sergio.paracuellos@gmail.com> >> --- >> drivers/staging/slicoss/slic.h | 6 ++--- >> drivers/staging/slicoss/slicoss.c | 56 ++++++++++++++++++++------------------- >> 2 files changed, 32 insertions(+), 30 deletions(-) >> >> diff --git a/drivers/staging/slicoss/slic.h b/drivers/staging/slicoss/slic.h >> index 2c05868..b19ddc9 100644 >> --- a/drivers/staging/slicoss/slic.h >> +++ b/drivers/staging/slicoss/slic.h >> @@ -548,9 +548,9 @@ static inline void slic_flush_write(struct adapter *adapter) >> ioread32(adapter->regs + SLIC_REG_HOSTID); >> } >> >> -#define UPDATE_STATS_GB(largestat, newstat, oldstat) \ >> -{ \ >> - (largestat) += ((newstat) - (oldstat)); \ >> +static inline u64 update_stats_gb(const u64 newstat, const u64 oldstat) >> +{ >> + return (newstat - oldstat); >> } >> > > I suggest dropping the parentheses here. They are unnecessary and likely > to lead to a cleanup patch. > Giving it a second thought, perhaps one should do without this macro/function and just inline the calculation. IMO this would improve readability even more. Regards, Markus ^ permalink raw reply [flat|nested] 6+ messages in thread
* Re: [PATCH 2/2] staging: slicoss: replace UPDATE_STATS_GB macro into an inline function 2016-11-23 22:32 ` Markus Böhme @ 2016-11-24 19:01 ` Sergio Paracuellos 0 siblings, 0 replies; 6+ messages in thread From: Sergio Paracuellos @ 2016-11-24 19:01 UTC (permalink / raw) To: Markus Böhme; +Cc: Greg KH, devel, linux-kernel, Lior Dotan On Wed, Nov 23, 2016 at 11:32 PM, Markus Böhme <markus.boehme@mailbox.org> wrote: > On 11/23/2016 08:00 PM, Markus Böhme wrote: >> On 11/23/2016 07:10 PM, Sergio Paracuellos wrote: >>> This patch replaces UPDATE_STATS_GB macro in slic.h header file >>> into an inline function. This provides type safety and readability. >>> >>> Signed-off-by: Sergio Paracuellos <sergio.paracuellos@gmail.com> >>> --- >>> drivers/staging/slicoss/slic.h | 6 ++--- >>> drivers/staging/slicoss/slicoss.c | 56 ++++++++++++++++++++------------------- >>> 2 files changed, 32 insertions(+), 30 deletions(-) >>> >>> diff --git a/drivers/staging/slicoss/slic.h b/drivers/staging/slicoss/slic.h >>> index 2c05868..b19ddc9 100644 >>> --- a/drivers/staging/slicoss/slic.h >>> +++ b/drivers/staging/slicoss/slic.h >>> @@ -548,9 +548,9 @@ static inline void slic_flush_write(struct adapter *adapter) >>> ioread32(adapter->regs + SLIC_REG_HOSTID); >>> } >>> >>> -#define UPDATE_STATS_GB(largestat, newstat, oldstat) \ >>> -{ \ >>> - (largestat) += ((newstat) - (oldstat)); \ >>> +static inline u64 update_stats_gb(const u64 newstat, const u64 oldstat) >>> +{ >>> + return (newstat - oldstat); >>> } >>> >> >> I suggest dropping the parentheses here. They are unnecessary and likely >> to lead to a cleanup patch. >> > > Giving it a second thought, perhaps one should do without this > macro/function and just inline the calculation. IMO this would improve > readability even more. I see. Ok, I'll remove this inline function and macro and send a V2 patchset with just the calculation inlined. Thanks, Sergio Paracuellos ^ permalink raw reply [flat|nested] 6+ messages in thread
end of thread, other threads:[~2016-11-24 19:01 UTC | newest] Thread overview: 6+ messages (download: mbox.gz / follow: Atom feed) -- links below jump to the message on this page -- 2016-11-23 18:10 [PATCH 0/2] staging: slicoss: minor changes to clean some code Sergio Paracuellos 2016-11-23 18:10 ` [PATCH 1/2] staging: slicoss: remove not used UPDATE_STATS macro Sergio Paracuellos 2016-11-23 18:10 ` [PATCH 2/2] staging: slicoss: replace UPDATE_STATS_GB macro into an inline function Sergio Paracuellos 2016-11-23 19:00 ` Markus Böhme 2016-11-23 22:32 ` Markus Böhme 2016-11-24 19:01 ` Sergio Paracuellos
This is a public inbox, see mirroring instructions for how to clone and mirror all data and code used for this inbox
all inboxes | Powered by JetHome®