diff options
| author | Greg Kroah-Hartman <gregkh@linuxfoundation.org> | 2018-04-30 05:05:54 -0700 | 
|---|---|---|
| committer | Greg Kroah-Hartman <gregkh@linuxfoundation.org> | 2018-04-30 05:05:54 -0700 | 
| commit | 720d690e3680d8ae5fcf86f8614c1a10b4ee7605 (patch) | |
| tree | 02158973d51022d7374f5b6e2f1953b530127f43 /include/sound | |
| parent | 72b6500c1cc68b949faa1bac76359dc601b482d6 (diff) | |
| parent | 6da6c0db5316275015e8cc2959f12a17584aeb64 (diff) | |
| download | linux-720d690e3680d8ae5fcf86f8614c1a10b4ee7605.tar.bz2 | |
Merge 4.17-rc3 into char-misc-next
We want the fixes in here as well.
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Diffstat (limited to 'include/sound')
| -rw-r--r-- | include/sound/control.h | 7 | 
1 files changed, 5 insertions, 2 deletions
diff --git a/include/sound/control.h b/include/sound/control.h index ca13a44ae9d4..6011a58d3e20 100644 --- a/include/sound/control.h +++ b/include/sound/control.h @@ -23,6 +23,7 @@   */  #include <linux/wait.h> +#include <linux/nospec.h>  #include <sound/asound.h>  #define snd_kcontrol_chip(kcontrol) ((kcontrol)->private_data) @@ -148,12 +149,14 @@ int snd_ctl_get_preferred_subdevice(struct snd_card *card, int type);  static inline unsigned int snd_ctl_get_ioffnum(struct snd_kcontrol *kctl, struct snd_ctl_elem_id *id)  { -	return id->numid - kctl->id.numid; +	unsigned int ioff = id->numid - kctl->id.numid; +	return array_index_nospec(ioff, kctl->count);  }  static inline unsigned int snd_ctl_get_ioffidx(struct snd_kcontrol *kctl, struct snd_ctl_elem_id *id)  { -	return id->index - kctl->id.index; +	unsigned int ioff = id->index - kctl->id.index; +	return array_index_nospec(ioff, kctl->count);  }  static inline unsigned int snd_ctl_get_ioff(struct snd_kcontrol *kctl, struct snd_ctl_elem_id *id)  |