Commit 9c29490246ed80975ab8b87bcd4ebe5b87c1c1d6

Authored by Kulikov Vasiliy
Committed by Takashi Iwai
1 parent fa95a6471f

sound: oss: msnd: check request_region() return value

request_region() may fail, if so return -EBUSY.

Signed-off-by: Kulikov Vasiliy <segooon@gmail.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>

Showing 1 changed file with 6 additions and 2 deletions Side-by-side Diff

sound/oss/msnd_pinnacle.c
... ... @@ -1400,9 +1400,13 @@
1400 1400 printk(KERN_ERR LOGNAME ": Couldn't grab IRQ %d\n", dev.irq);
1401 1401 return err;
1402 1402 }
1403   - request_region(dev.io, dev.numio, dev.name);
  1403 + if (request_region(dev.io, dev.numio, dev.name) == NULL) {
  1404 + free_irq(dev.irq, &dev);
  1405 + return -EBUSY;
  1406 + }
1404 1407  
1405   - if ((err = dsp_full_reset()) < 0) {
  1408 + err = dsp_full_reset();
  1409 + if (err < 0) {
1406 1410 release_region(dev.io, dev.numio);
1407 1411 free_irq(dev.irq, &dev);
1408 1412 return err;