if (end <= start) 
if (end < start) 
static int adjust_io(struct pcmcia_socket *s, unsigned int action, unsigned long start, unsigned long end){	struct socket_data *data = s->resource_data;	unsigned long size = end - start + 1;	int ret = 0;	if (end <= start)		return -EINVAL;	if (end > IO_SPACE_LIMIT)		return -EINVAL;	down(&rsrc_sem);	switch (action) {	case ADD_MANAGED_RESOURCE:		if (add_interval(&data->io_db, start, size) != 0) {			ret = -EBUSY;			break;		}#ifdef CONFIG_PCMCIA_PROBE		if (probe_io)			do_io_probe(s, start, size);#endif		break;	case REMOVE_MANAGED_RESOURCE:		sub_interval(&data->io_db, start, size);		break;	default:		ret = -EINVAL;		break;	}	up(&rsrc_sem);	return ret;}
4520	/local/tlutelli/issta_data/temp/c/2005_temp/2005/4520/1146bc743e074760ef0dd08b3457f35a68069a54/rsrc_nonstatic.c/buggy/drivers/pcmcia/rsrc_nonstatic.c