22 Aug
2017
22 Aug
'17
10:05 p.m.
@@ -1121,30 +1121,27 @@ static int snd_via82xx_create(struct snd_card *card,
if ((err = pci_request_regions(pci, card->driver)) < 0) { kfree(chip);
pci_disable_device(pci);
return err;
}goto disable_device;
[ snip ]
@@ -1153,6 +1150,14 @@ static int snd_via82xx_create(struct snd_card *card,
*r_via = chip; return 0;
+disable_device:
- pci_disable_device(pci);
- goto exit;
Why is this "goto exit" here?
Should the same return statement be reached after the proposed refactoring?
Would you like to move such a function call to this source code place?
It's leaking now.
How do you come to this conclusion?
+free_chip:
- snd_via82xx_free(chip);
+exit:
- return err;
}
Is this update suggestion worth for another look?
Regards, Markus