diff options
author | Takashi Iwai <tiwai@suse.de> | 2013-10-29 10:15:20 -0400 |
---|---|---|
committer | Takashi Iwai <tiwai@suse.de> | 2013-10-29 10:15:20 -0400 |
commit | 75415df8ffbac2ace9463ceffb3f21299af2548a (patch) | |
tree | 9e9b552808ff8bede28da00a86167b2a7f99b41d /sound | |
parent | a8d09e3a6dfc44fd2246f3c57d2cd00e1a56e2bd (diff) |
ALSA: pcsp: Fix initialization with nopcm=1
When nopcm=1 is set, some initializations based on hrtimer resolution
might be bogus because the driver checks the resolution only when
nopcm=0. Simply get the resolution always at first for fixing the
bug.
Spotted by coverity CID 139740.
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Diffstat (limited to 'sound')
-rw-r--r-- | sound/drivers/pcsp/pcsp.c | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/sound/drivers/pcsp/pcsp.c b/sound/drivers/pcsp/pcsp.c index 1c19cd7ad26e..f664bae3b9b0 100644 --- a/sound/drivers/pcsp/pcsp.c +++ b/sound/drivers/pcsp/pcsp.c | |||
@@ -46,8 +46,9 @@ static int snd_pcsp_create(struct snd_card *card) | |||
46 | int err; | 46 | int err; |
47 | int div, min_div, order; | 47 | int div, min_div, order; |
48 | 48 | ||
49 | hrtimer_get_res(CLOCK_MONOTONIC, &tp); | ||
50 | |||
49 | if (!nopcm) { | 51 | if (!nopcm) { |
50 | hrtimer_get_res(CLOCK_MONOTONIC, &tp); | ||
51 | if (tp.tv_sec || tp.tv_nsec > PCSP_MAX_PERIOD_NS) { | 52 | if (tp.tv_sec || tp.tv_nsec > PCSP_MAX_PERIOD_NS) { |
52 | printk(KERN_ERR "PCSP: Timer resolution is not sufficient " | 53 | printk(KERN_ERR "PCSP: Timer resolution is not sufficient " |
53 | "(%linS)\n", tp.tv_nsec); | 54 | "(%linS)\n", tp.tv_nsec); |