int n, err; 
int n; 
static void ubd_handler(void){	struct io_thread_req req;	struct request *rq = elv_next_request(ubd_queue);	int n, err;	do_ubd = NULL;	intr_count++;	n = os_read_file(thread_fd, &req, sizeof(req));	if(n != sizeof(req)){		printk(KERN_ERR "Pid %d - spurious interrupt in ubd_handler, "		       "err = %d\n", os_getpid(), -n);		spin_lock(&ubd_io_lock);		end_request(rq, 0);		spin_unlock(&ubd_io_lock);		return;	}        	if((req.op != UBD_MMAP) &&	   ((req.offset != ((__u64) (rq->sector)) << 9) ||	    (req.length != (rq->current_nr_sectors) << 9)))		panic("I/O op mismatch");		if(req.map_fd != -1){		err = physmem_subst_mapping(req.buffer, req.map_fd,					    req.map_offset, 1);		if(err)			printk("ubd_handler - physmem_subst_mapping failed, "			       "err = %d\n", -err);	}	ubd_finish(rq, req.error);	reactivate_fd(thread_fd, UBD_IRQ);		do_ubd_request(ubd_queue);}
10457	/local/tlutelli/issta_data/temp/c/2005_temp/2005/10457/7b9014c1da380384efe7752db38a0253a74d0238/ubd_kern.c/buggy/arch/um/drivers/ubd_kern.c