Example #1
0
void qp_interrupt(int cpl, void *dev_id, struct pt_regs * regs)
{
  int head;
  int maxhead;
  // TRACER
  __u32 seed;

  head = queue->head;
  maxhead = (queue->tail-1) & (2048 -1);
  
  add_mouse_randomness(seed /* queue->buf[head] = inb(qp_data) */);

  if (head != maxhead) {
    head++;
    head = head & 2048 -1;
  }
  queue->head = head;
  if (queue->fasync)
    kill_fasync(queue->fasync, 29 , 1 );
  __wake_up(( &queue->proc_list ),1 ) ;
}
Example #2
0
void __wake_up_bit(wait_queue_head_t *wq, void *word, int bit)
{
	struct wait_bit_key key = __WAIT_BIT_KEY_INITIALIZER(word, bit);
	if (waitqueue_active(wq))
		__wake_up(wq, TASK_NORMAL, 1, &key);
}
Example #3
0
void fastcall __wake_up_bit(wait_queue_head_t *wq, void *word, int bit)
{
	struct wait_bit_key key = __WAIT_BIT_KEY_INITIALIZER(word, bit);
	if (waitqueue_active(wq))
		__wake_up(wq, TASK_INTERRUPTIBLE|TASK_UNINTERRUPTIBLE, 1, &key);
}
void extract_entropy(void)
{
xfer_secondary_pool();
__wake_up();
}