fdt->fd[fd] = NULL; 
rcu_assign_pointer(fdt->fd[fd], NULL); 
asmlinkage long sys_close(unsigned int fd){	struct file * filp;	struct files_struct *files = current->files;	struct fdtable *fdt;	spin_lock(&files->file_lock);	fdt = files_fdtable(files);	if (fd >= fdt->max_fds)		goto out_unlock;	filp = fdt->fd[fd];	if (!filp)		goto out_unlock;	fdt->fd[fd] = NULL;	FD_CLR(fd, fdt->close_on_exec);	__put_unused_fd(files, fd);	spin_unlock(&files->file_lock);	return filp_close(filp, files);out_unlock:	spin_unlock(&files->file_lock);	return -EBADF;}
10457	/local/tlutelli/issta_data/temp/c/2005_temp/2005/10457/ab2af1f5005069321c5d130f09cce577b03f43ef/open.c/buggy/fs/open.c