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

Commit 0822c5d9 authored by Kees Cook's avatar Kees Cook Committed by David S. Miller
Browse files

net: ethernet: sun: Convert timers to use timer_setup()



In preparation for unconditionally passing the struct timer_list pointer to
all timer callbacks, switch to using the new timer_setup() and from_timer()
to pass the timer pointer explicitly.

Cc: "David S. Miller" <davem@davemloft.net>
Cc: Philippe Reynes <tremyfr@gmail.com>
Cc: Jarod Wilson <jarod@redhat.com>
Cc: Shannon Nelson <shannon.nelson@oracle.com>
Cc: Rob Herring <robh@kernel.org>
Cc: chris hyser <chris.hyser@oracle.com>
Cc: Tushar Dave <tushar.n.dave@oracle.com>
Cc: Tobias Klauser <tklauser@distanz.ch>
Cc: netdev@vger.kernel.org
Signed-off-by: default avatarKees Cook <keescook@chromium.org>
Acked-by: default avatarShannon Nelson <shannon.nelson@oracle.com>
Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
parent de892f8f
Loading
Loading
Loading
Loading
+4 −3
Original line number Diff line number Diff line
@@ -4079,9 +4079,9 @@ static void cas_reset_task(struct work_struct *work)
#endif
}

static void cas_link_timer(unsigned long data)
static void cas_link_timer(struct timer_list *t)
{
	struct cas *cp = (struct cas *) data;
	struct cas *cp = from_timer(cp, t, link_timer);
	int mask, pending = 0, reset = 0;
	unsigned long flags;

@@ -5039,7 +5039,8 @@ static int cas_init_one(struct pci_dev *pdev, const struct pci_device_id *ent)
	spin_lock_init(&cp->stat_lock[N_TX_RINGS]);
	mutex_init(&cp->pm_mutex);

	setup_timer(&cp->link_timer, cas_link_timer, (unsigned long)cp);
	timer_setup(&cp->link_timer, cas_link_timer, 0);

#if 1
	/* Just in case the implementation of atomic operations
	 * change so that an explicit initialization is necessary.
+1 −2
Original line number Diff line number Diff line
@@ -363,8 +363,7 @@ static int vsw_port_probe(struct vio_dev *vdev, const struct vio_device_id *id)
	list_add_rcu(&port->list, &vp->port_list);
	spin_unlock_irqrestore(&vp->lock, flags);

	setup_timer(&port->clean_timer, sunvnet_clean_timer_expire_common,
		    (unsigned long)port);
	timer_setup(&port->clean_timer, sunvnet_clean_timer_expire_common, 0);

	err = register_netdev(dev);
	if (err) {
+4 −6
Original line number Diff line number Diff line
@@ -2221,9 +2221,9 @@ static int niu_link_status(struct niu *np, int *link_up_p)
	return err;
}

static void niu_timer(unsigned long __opaque)
static void niu_timer(struct timer_list *t)
{
	struct niu *np = (struct niu *) __opaque;
	struct niu *np = from_timer(np, t, timer);
	unsigned long off;
	int err, link_up;

@@ -6123,7 +6123,7 @@ static int niu_open(struct net_device *dev)

	err = niu_init_hw(np);
	if (!err) {
		setup_timer(&np->timer, niu_timer, (unsigned long)np);
		timer_setup(&np->timer, niu_timer, 0);
		np->timer.expires = jiffies + HZ;

		err = niu_enable_interrupts(np, 1);
@@ -6773,10 +6773,8 @@ static int niu_change_mtu(struct net_device *dev, int new_mtu)

	err = niu_init_hw(np);
	if (!err) {
		init_timer(&np->timer);
		timer_setup(&np->timer, niu_timer, 0);
		np->timer.expires = jiffies + HZ;
		np->timer.data = (unsigned long) np;
		np->timer.function = niu_timer;

		err = niu_enable_interrupts(np, 1);
		if (err)
+4 −6
Original line number Diff line number Diff line
@@ -523,9 +523,9 @@ static int try_next_permutation(struct bigmac *bp, void __iomem *tregs)
	return -1;
}

static void bigmac_timer(unsigned long data)
static void bigmac_timer(struct timer_list *t)
{
	struct bigmac *bp = (struct bigmac *) data;
	struct bigmac *bp = from_timer(bp, t, bigmac_timer);
	void __iomem *tregs = bp->tregs;
	int restart_timer = 0;

@@ -613,8 +613,6 @@ static void bigmac_begin_auto_negotiation(struct bigmac *bp)
	bp->timer_state = ltrywait;
	bp->timer_ticks = 0;
	bp->bigmac_timer.expires = jiffies + (12 * HZ) / 10;
	bp->bigmac_timer.data = (unsigned long) bp;
	bp->bigmac_timer.function = bigmac_timer;
	add_timer(&bp->bigmac_timer);
}

@@ -921,7 +919,7 @@ static int bigmac_open(struct net_device *dev)
		printk(KERN_ERR "BIGMAC: Can't order irq %d to go.\n", dev->irq);
		return ret;
	}
	init_timer(&bp->bigmac_timer);
	timer_setup(&bp->bigmac_timer, bigmac_timer, 0);
	ret = bigmac_init_hw(bp, 0);
	if (ret)
		free_irq(dev->irq, bp);
@@ -1172,7 +1170,7 @@ static int bigmac_ether_init(struct platform_device *op,
					      "board-version", 1);

	/* Init auto-negotiation timer state. */
	init_timer(&bp->bigmac_timer);
	timer_setup(&bp->bigmac_timer, bigmac_timer, 0);
	bp->timer_state = asleep;
	bp->timer_ticks = 0;

+3 −3
Original line number Diff line number Diff line
@@ -1496,9 +1496,9 @@ static int gem_mdio_link_not_up(struct gem *gp)
	}
}

static void gem_link_timer(unsigned long data)
static void gem_link_timer(struct timer_list *t)
{
	struct gem *gp = (struct gem *) data;
	struct gem *gp = from_timer(gp, t, link_timer);
	struct net_device *dev = gp->dev;
	int restart_aneg = 0;

@@ -2910,7 +2910,7 @@ static int gem_init_one(struct pci_dev *pdev, const struct pci_device_id *ent)

	gp->msg_enable = DEFAULT_MSG;

	setup_timer(&gp->link_timer, gem_link_timer, (unsigned long)gp);
	timer_setup(&gp->link_timer, gem_link_timer, 0);

	INIT_WORK(&gp->reset_task, gem_reset_task);

Loading