/* Wake the queue up after commonly encountered transmit failure conditions are hopefully over. Currently only tlabel exhaustion is accounted for.  */
static void ether1394_wake_queue(struct work_struct *work)
/* Wake the queue up after commonly encountered transmit failure conditions are hopefully over. Currently only tlabel exhaustion is accounted for.  */
static void ether1394_wake_queue(struct work_struct *work)
{
	struct eth1394_priv *priv;
	struct hpsb_packet *packet;
	priv = container_of(work, struct eth1394_priv, wake);
	packet = hpsb_alloc_packet(0);
	if (!packet)
		goto out;
	packet->host = priv->host;
	packet->node_id = priv->wake_node;
	if (hpsb_get_tlabel(packet) == 0)
		hpsb_free_tlabel(packet);
	hpsb_free_packet(packet);
out:
	netif_wake_queue(priv->wake_dev);
}