Esempio n. 1
0
/* Host sent us data. */
static void in_intr(struct virtqueue *vq)
{
	struct crypto_device *crdev;
	debug("Entering\n");
	crdev = vq->vdev->priv;

	crdev->inbuf = get_inbuf(crdev);
	wake_up_interruptible(&crdev->i_wq);
	debug("Leaving\n");
}
Esempio n. 2
0
/* Host sent us data. */
static void in_intr(struct virtqueue *vq)
{
	struct crypto_device *crdev;
	unsigned long flags;
	debug("Entering\n");
	crdev = vq->vdev->priv;

	spin_lock_irqsave(&crdev->inbuf_lock, flags);
	crdev->inbuf = get_inbuf(crdev);
	spin_unlock_irqrestore(&crdev->inbuf_lock, flags);
	
	wake_up_interruptible(&crdev->i_wq);
	debug("Leaving\n");
}
Esempio n. 3
0
bool device_has_data(struct crypto_device *crdev)
{
	//unsigned long flags;
	bool ret;
	
	debug("Entering\n");
	ret = false;
	//spin_lock_irqsave(&port->inbuf_lock, flags);
	crdev->inbuf = get_inbuf(crdev);
	if (crdev->inbuf)
		ret = true;
	debug("Leaving\n");
	
	//spin_unlock_irqrestore(&port->inbuf_lock, flags);
	return ret;
}