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

Commit 2fbd8dfe authored by YOSHIFUJI Hideaki's avatar YOSHIFUJI Hideaki Committed by Stefan Richter
Browse files

firewire net: Check dev->broadcast_state inside fwnet_broadcast_start().

parent b9a8871a
Loading
Loading
Loading
Loading
+7 −5
Original line number Original line Diff line number Diff line
@@ -1156,6 +1156,9 @@ static int fwnet_broadcast_start(struct fwnet_device *dev)
	unsigned long offset;
	unsigned long offset;
	unsigned u;
	unsigned u;


	if (dev->broadcast_state != FWNET_BROADCAST_ERROR)
		return 0;

	max_receive = 1U << (dev->card->max_receive + 1);
	max_receive = 1U << (dev->card->max_receive + 1);
	num_packets = (FWNET_ISO_PAGE_COUNT * PAGE_SIZE) / max_receive;
	num_packets = (FWNET_ISO_PAGE_COUNT * PAGE_SIZE) / max_receive;


@@ -1258,11 +1261,10 @@ static int fwnet_open(struct net_device *net)
	if (ret)
	if (ret)
		return ret;
		return ret;


	if (dev->broadcast_state == FWNET_BROADCAST_ERROR) {
	ret = fwnet_broadcast_start(dev);
	ret = fwnet_broadcast_start(dev);
	if (ret)
	if (ret)
		goto out;
		goto out;
	}

	netif_start_queue(net);
	netif_start_queue(net);


	spin_lock_irq(&dev->lock);
	spin_lock_irq(&dev->lock);