Re: [PATCH] UDPCP Communication Protocol

Stefani Seibold
2010-12-31T10:29:13Z

Am Freitag, den 31.12.2010, 11:15 +0100 schrieb Eric Dumazet:
> Le vendredi 31 décembre 2010 à 10:29 +0100, stefani@seibold.net a
> écrit :
> > + spin_lock_irqsave(&spinlock, flags);
> > + udpcp_stat.txMsgs++;
> > + spin_unlock_irqrestore(&spinlock, flags);
>
> This is really ugly for different reasons :
>
> 1) Naming a lock, even static "spinlock" is ugly.

Agree...

> 2) Using a lock for stats is not necessary, and
> disabling hard irqs is not necessary either (spinlock_bh() would be
> more than enough)
>
> At a very minimum, you should use atomic_t so that no lock is needed
>
> 3) Network stack widely use MIB per_cpu counters.
> As you use UDP, you could take a look at UDP_INC_STATS_BH()/
> UDP_INC_STATS_USER() implementation for an example.
>

I will have look at this and revamp it.