Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 09e79d6e authored by Eric Dumazet's avatar Eric Dumazet Committed by David S. Miller
Browse files

eql: dont rely on HZ=100



HZ is more likely to be 1000 these days.

timer handlers are run from softirq, no need to disable bh

skb priority 1 is TC_PRIO_FILLER

Signed-off-by: default avatarEric Dumazet <eric.dumazet@gmail.com>
Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
parent 819a1008
Loading
Loading
Loading
Loading
+4 −3
Original line number Diff line number Diff line
@@ -125,6 +125,7 @@
#include <linux/if.h>
#include <linux/if_arp.h>
#include <linux/if_eql.h>
#include <linux/pkt_sched.h>

#include <asm/uaccess.h>

@@ -143,7 +144,7 @@ static void eql_timer(unsigned long param)
	equalizer_t *eql = (equalizer_t *) param;
	struct list_head *this, *tmp, *head;

	spin_lock_bh(&eql->queue.lock);
	spin_lock(&eql->queue.lock);
	head = &eql->queue.all_slaves;
	list_for_each_safe(this, tmp, head) {
		slave_t *slave = list_entry(this, slave_t, list);
@@ -157,7 +158,7 @@ static void eql_timer(unsigned long param)
		}

	}
	spin_unlock_bh(&eql->queue.lock);
	spin_unlock(&eql->queue.lock);

	eql->timer.expires = jiffies + EQL_DEFAULT_RESCHED_IVAL;
	add_timer(&eql->timer);
@@ -341,7 +342,7 @@ static netdev_tx_t eql_slave_xmit(struct sk_buff *skb, struct net_device *dev)
		struct net_device *slave_dev = slave->dev;

		skb->dev = slave_dev;
		skb->priority = 1;
		skb->priority = TC_PRIO_FILLER;
		slave->bytes_queued += skb->len;
		dev_queue_xmit(skb);
		dev->stats.tx_packets++;
+1 −1
Original line number Diff line number Diff line
@@ -22,7 +22,7 @@
#define EQL_DEFAULT_SLAVE_PRIORITY 28800
#define EQL_DEFAULT_MAX_SLAVES     4
#define EQL_DEFAULT_MTU            576
#define EQL_DEFAULT_RESCHED_IVAL   100
#define EQL_DEFAULT_RESCHED_IVAL   HZ

#define EQL_ENSLAVE     (SIOCDEVPRIVATE)
#define EQL_EMANCIPATE  (SIOCDEVPRIVATE + 1)