Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 1c073b67 authored by Eliot Blennerhassett's avatar Eliot Blennerhassett Committed by Takashi Iwai
Browse files

ALSA: asihpi - Remove spurious adapter index check



Subsystem requests don't have or need a valid adapter index.
The adapter index is already checked further on, before it is used to index
the adapters array. (Reverts 4a122c10)

Signed-off-by: default avatarEliot Blennerhassett <eblennerhassett@audioscience.com>
Signed-off-by: default avatarTakashi Iwai <tiwai@suse.de>
parent 0a17e993
Loading
Loading
Loading
Loading
+3 −7
Original line number Original line Diff line number Diff line
/*******************************************************************************
/*******************************************************************************


    AudioScience HPI driver
    AudioScience HPI driver
    Copyright (C) 1997-2010  AudioScience Inc. <support@audioscience.com>
    Copyright (C) 1997-2011  AudioScience Inc. <support@audioscience.com>


    This program is free software; you can redistribute it and/or modify
    This program is free software; you can redistribute it and/or modify
    it under the terms of version 2 of the GNU General Public License as
    it under the terms of version 2 of the GNU General Public License as
@@ -157,11 +157,6 @@ long asihpi_hpi_ioctl(struct file *file, unsigned int cmd, unsigned long arg)
		goto out;
		goto out;
	}
	}


	if (hm->h.adapter_index >= HPI_MAX_ADAPTERS) {
		err = -EINVAL;
		goto out;
	}

	switch (hm->h.function) {
	switch (hm->h.function) {
	case HPI_SUBSYS_CREATE_ADAPTER:
	case HPI_SUBSYS_CREATE_ADAPTER:
	case HPI_ADAPTER_DELETE:
	case HPI_ADAPTER_DELETE:
@@ -187,7 +182,6 @@ long asihpi_hpi_ioctl(struct file *file, unsigned int cmd, unsigned long arg)
		/* -1=no data 0=read from user mem, 1=write to user mem */
		/* -1=no data 0=read from user mem, 1=write to user mem */
		int wrflag = -1;
		int wrflag = -1;
		u32 adapter = hm->h.adapter_index;
		u32 adapter = hm->h.adapter_index;
		pa = &adapters[adapter];


		if ((adapter > HPI_MAX_ADAPTERS) || (!pa->type)) {
		if ((adapter > HPI_MAX_ADAPTERS) || (!pa->type)) {
			hpi_init_response(&hr->r0, HPI_OBJ_ADAPTER,
			hpi_init_response(&hr->r0, HPI_OBJ_ADAPTER,
@@ -203,6 +197,8 @@ long asihpi_hpi_ioctl(struct file *file, unsigned int cmd, unsigned long arg)
			goto out;
			goto out;
		}
		}


		pa = &adapters[adapter];

		if (mutex_lock_interruptible(&adapters[adapter].mutex)) {
		if (mutex_lock_interruptible(&adapters[adapter].mutex)) {
			err = -EINTR;
			err = -EINTR;
			goto out;
			goto out;