dbq               492 drivers/virt/fsl_hypervisor.c 	struct doorbell_queue *dbq;
dbq               498 drivers/virt/fsl_hypervisor.c 	list_for_each_entry(dbq, &db_list, list) {
dbq               499 drivers/virt/fsl_hypervisor.c 		if (dbq->head != nextp(dbq->tail)) {
dbq               500 drivers/virt/fsl_hypervisor.c 			dbq->q[dbq->tail] = doorbell;
dbq               506 drivers/virt/fsl_hypervisor.c 			dbq->tail = nextp(dbq->tail);
dbq               507 drivers/virt/fsl_hypervisor.c 			wake_up_interruptible(&dbq->wait);
dbq               573 drivers/virt/fsl_hypervisor.c 	struct doorbell_queue *dbq = filp->private_data;
dbq               577 drivers/virt/fsl_hypervisor.c 	spin_lock_irqsave(&dbq->lock, flags);
dbq               579 drivers/virt/fsl_hypervisor.c 	poll_wait(filp, &dbq->wait, p);
dbq               580 drivers/virt/fsl_hypervisor.c 	mask = (dbq->head == dbq->tail) ? 0 : (EPOLLIN | EPOLLRDNORM);
dbq               582 drivers/virt/fsl_hypervisor.c 	spin_unlock_irqrestore(&dbq->lock, flags);
dbq               597 drivers/virt/fsl_hypervisor.c 	struct doorbell_queue *dbq = filp->private_data;
dbq               606 drivers/virt/fsl_hypervisor.c 		spin_lock_irqsave(&dbq->lock, flags);
dbq               613 drivers/virt/fsl_hypervisor.c 		if (dbq->head == dbq->tail) {
dbq               614 drivers/virt/fsl_hypervisor.c 			spin_unlock_irqrestore(&dbq->lock, flags);
dbq               619 drivers/virt/fsl_hypervisor.c 			if (wait_event_interruptible(dbq->wait,
dbq               620 drivers/virt/fsl_hypervisor.c 						     dbq->head != dbq->tail))
dbq               638 drivers/virt/fsl_hypervisor.c 		dbell = dbq->q[dbq->head];
dbq               639 drivers/virt/fsl_hypervisor.c 		dbq->head = nextp(dbq->head);
dbq               641 drivers/virt/fsl_hypervisor.c 		spin_unlock_irqrestore(&dbq->lock, flags);
dbq               661 drivers/virt/fsl_hypervisor.c 	struct doorbell_queue *dbq;
dbq               665 drivers/virt/fsl_hypervisor.c 	dbq = kzalloc(sizeof(struct doorbell_queue), GFP_KERNEL);
dbq               666 drivers/virt/fsl_hypervisor.c 	if (!dbq) {
dbq               671 drivers/virt/fsl_hypervisor.c 	spin_lock_init(&dbq->lock);
dbq               672 drivers/virt/fsl_hypervisor.c 	init_waitqueue_head(&dbq->wait);
dbq               675 drivers/virt/fsl_hypervisor.c 	list_add(&dbq->list, &db_list);
dbq               678 drivers/virt/fsl_hypervisor.c 	filp->private_data = dbq;
dbq               688 drivers/virt/fsl_hypervisor.c 	struct doorbell_queue *dbq = filp->private_data;
dbq               694 drivers/virt/fsl_hypervisor.c 	list_del(&dbq->list);
dbq               697 drivers/virt/fsl_hypervisor.c 	kfree(dbq);