if (unlikely(atomic_dec_and_test(&req->ki_filp->f_count))) { 
if (unlikely(rcuref_dec_and_test(&req->ki_filp->f_count))) { 
static int __aio_put_req(struct kioctx *ctx, struct kiocb *req){	dprintk(KERN_DEBUG "aio_put(%p): f_count=%d\n",		req, atomic_read(&req->ki_filp->f_count));	req->ki_users --;	if (unlikely(req->ki_users < 0))		BUG();	if (likely(req->ki_users))		return 0;	list_del(&req->ki_list);		/* remove from active_reqs */	req->ki_cancel = NULL;	req->ki_retry = NULL;	/* Must be done under the lock to serialise against cancellation.	 * Call this aio_fput as it duplicates fput via the fput_work.	 */	if (unlikely(atomic_dec_and_test(&req->ki_filp->f_count))) {		get_ioctx(ctx);		spin_lock(&fput_lock);		list_add(&req->ki_list, &fput_head);		spin_unlock(&fput_lock);		queue_work(aio_wq, &fput_work);	} else		really_put_req(ctx, req);	return 1;}
10457	/local/tlutelli/issta_data/temp/c/2005_temp/2005/10457/ab2af1f5005069321c5d130f09cce577b03f43ef/aio.c/clean/fs/aio.c