Missed .owner of struct snd_soc_card will prevent the module from being removed from underneath its users.
Reported-by: Lothar Waßmann LW@KARO-electronics.de Signed-off-by: Axel Lin axel.lin@gmail.com --- sound/soc/samsung/goni_wm8994.c | 1 + sound/soc/samsung/h1940_uda1380.c | 1 + sound/soc/samsung/jive_wm8750.c | 1 + sound/soc/samsung/littlemill.c | 1 + sound/soc/samsung/ln2440sbc_alc650.c | 1 + sound/soc/samsung/lowland.c | 1 + sound/soc/samsung/neo1973_wm8753.c | 1 + sound/soc/samsung/rx1950_uda1380.c | 1 + sound/soc/samsung/s3c24xx_simtec_hermes.c | 1 + sound/soc/samsung/s3c24xx_simtec_tlv320aic23.c | 1 + sound/soc/samsung/s3c24xx_uda134x.c | 1 + sound/soc/samsung/smartq_wm8987.c | 1 + sound/soc/samsung/smdk2443_wm9710.c | 1 + sound/soc/samsung/smdk_spdif.c | 1 + sound/soc/samsung/smdk_wm8580.c | 1 + sound/soc/samsung/smdk_wm8580pcm.c | 1 + sound/soc/samsung/smdk_wm8994.c | 1 + sound/soc/samsung/smdk_wm8994pcm.c | 1 + sound/soc/samsung/smdk_wm9713.c | 1 + sound/soc/samsung/speyside.c | 1 + sound/soc/samsung/tobermory.c | 1 + 21 files changed, 21 insertions(+), 0 deletions(-)
diff --git a/sound/soc/samsung/goni_wm8994.c b/sound/soc/samsung/goni_wm8994.c index 84f9c3c..c23c2ae 100644 --- a/sound/soc/samsung/goni_wm8994.c +++ b/sound/soc/samsung/goni_wm8994.c @@ -244,6 +244,7 @@ static struct snd_soc_dai_link goni_dai[] = {
static struct snd_soc_card goni = { .name = "goni", + .owner = THIS_MODULE, .dai_link = goni_dai, .num_links = ARRAY_SIZE(goni_dai),
diff --git a/sound/soc/samsung/h1940_uda1380.c b/sound/soc/samsung/h1940_uda1380.c index 03cfa5f..6e32577 100644 --- a/sound/soc/samsung/h1940_uda1380.c +++ b/sound/soc/samsung/h1940_uda1380.c @@ -215,6 +215,7 @@ static struct snd_soc_dai_link h1940_uda1380_dai[] = {
static struct snd_soc_card h1940_asoc = { .name = "h1940", + .owner = THIS_MODULE, .dai_link = h1940_uda1380_dai, .num_links = ARRAY_SIZE(h1940_uda1380_dai),
diff --git a/sound/soc/samsung/jive_wm8750.c b/sound/soc/samsung/jive_wm8750.c index 8e523fd..1578663 100644 --- a/sound/soc/samsung/jive_wm8750.c +++ b/sound/soc/samsung/jive_wm8750.c @@ -127,6 +127,7 @@ static struct snd_soc_dai_link jive_dai = { /* jive audio machine driver */ static struct snd_soc_card snd_soc_machine_jive = { .name = "Jive", + .owner = THIS_MODULE, .dai_link = &jive_dai, .num_links = 1,
diff --git a/sound/soc/samsung/littlemill.c b/sound/soc/samsung/littlemill.c index 5cea59b..9dd818b 100644 --- a/sound/soc/samsung/littlemill.c +++ b/sound/soc/samsung/littlemill.c @@ -194,6 +194,7 @@ static int littlemill_late_probe(struct snd_soc_card *card)
static struct snd_soc_card littlemill = { .name = "Littlemill", + .owner = THIS_MODULE, .dai_link = littlemill_dai, .num_links = ARRAY_SIZE(littlemill_dai),
diff --git a/sound/soc/samsung/ln2440sbc_alc650.c b/sound/soc/samsung/ln2440sbc_alc650.c index cde38b8..69c4a59 100644 --- a/sound/soc/samsung/ln2440sbc_alc650.c +++ b/sound/soc/samsung/ln2440sbc_alc650.c @@ -34,6 +34,7 @@ static struct snd_soc_dai_link ln2440sbc_dai[] = {
static struct snd_soc_card ln2440sbc = { .name = "LN2440SBC", + .owner = THIS_MODULE, .dai_link = ln2440sbc_dai, .num_links = ARRAY_SIZE(ln2440sbc_dai), }; diff --git a/sound/soc/samsung/lowland.c b/sound/soc/samsung/lowland.c index 4216a06..4adff93 100644 --- a/sound/soc/samsung/lowland.c +++ b/sound/soc/samsung/lowland.c @@ -177,6 +177,7 @@ static struct snd_soc_dapm_route audio_paths[] = {
static struct snd_soc_card lowland = { .name = "Lowland", + .owner = THIS_MODULE, .dai_link = lowland_dai, .num_links = ARRAY_SIZE(lowland_dai), .aux_dev = lowland_aux_dev, diff --git a/sound/soc/samsung/neo1973_wm8753.c b/sound/soc/samsung/neo1973_wm8753.c index 7207189..7ac0ba2 100644 --- a/sound/soc/samsung/neo1973_wm8753.c +++ b/sound/soc/samsung/neo1973_wm8753.c @@ -465,6 +465,7 @@ static const struct gpio neo1973_gta02_gpios[] = {};
static struct snd_soc_card neo1973 = { .name = "neo1973", + .owner = THIS_MODULE, .dai_link = neo1973_dai, .num_links = ARRAY_SIZE(neo1973_dai), .aux_dev = neo1973_aux_devs, diff --git a/sound/soc/samsung/rx1950_uda1380.c b/sound/soc/samsung/rx1950_uda1380.c index 71b4c02..21e1236 100644 --- a/sound/soc/samsung/rx1950_uda1380.c +++ b/sound/soc/samsung/rx1950_uda1380.c @@ -114,6 +114,7 @@ static const struct snd_soc_dapm_route audio_map[] = {
static struct snd_soc_card rx1950_asoc = { .name = "rx1950", + .owner = THIS_MODULE, .dai_link = rx1950_uda1380_dai, .num_links = ARRAY_SIZE(rx1950_uda1380_dai),
diff --git a/sound/soc/samsung/s3c24xx_simtec_hermes.c b/sound/soc/samsung/s3c24xx_simtec_hermes.c index 5027981..7ace6a8 100644 --- a/sound/soc/samsung/s3c24xx_simtec_hermes.c +++ b/sound/soc/samsung/s3c24xx_simtec_hermes.c @@ -89,6 +89,7 @@ static struct snd_soc_dai_link simtec_dai_aic33 = { /* simtec audio machine driver */ static struct snd_soc_card snd_soc_machine_simtec_aic33 = { .name = "Simtec-Hermes", + .owner = THIS_MODULE, .dai_link = &simtec_dai_aic33, .num_links = 1,
diff --git a/sound/soc/samsung/s3c24xx_simtec_tlv320aic23.c b/sound/soc/samsung/s3c24xx_simtec_tlv320aic23.c index 89b57b5..c42d5f0 100644 --- a/sound/soc/samsung/s3c24xx_simtec_tlv320aic23.c +++ b/sound/soc/samsung/s3c24xx_simtec_tlv320aic23.c @@ -78,6 +78,7 @@ static struct snd_soc_dai_link simtec_dai_aic23 = { /* simtec audio machine driver */ static struct snd_soc_card snd_soc_machine_simtec_aic23 = { .name = "Simtec", + .owner = THIS_MODULE, .dai_link = &simtec_dai_aic23, .num_links = 1,
diff --git a/sound/soc/samsung/s3c24xx_uda134x.c b/sound/soc/samsung/s3c24xx_uda134x.c index 62b69fb..d731042 100644 --- a/sound/soc/samsung/s3c24xx_uda134x.c +++ b/sound/soc/samsung/s3c24xx_uda134x.c @@ -229,6 +229,7 @@ static struct snd_soc_dai_link s3c24xx_uda134x_dai_link = {
static struct snd_soc_card snd_soc_s3c24xx_uda134x = { .name = "S3C24XX_UDA134X", + .owner = THIS_MODULE, .dai_link = &s3c24xx_uda134x_dai_link, .num_links = 1, }; diff --git a/sound/soc/samsung/smartq_wm8987.c b/sound/soc/samsung/smartq_wm8987.c index a22fc44..f2dcb42 100644 --- a/sound/soc/samsung/smartq_wm8987.c +++ b/sound/soc/samsung/smartq_wm8987.c @@ -198,6 +198,7 @@ static struct snd_soc_dai_link smartq_dai[] = {
static struct snd_soc_card snd_soc_smartq = { .name = "SmartQ", + .owner = THIS_MODULE, .dai_link = smartq_dai, .num_links = ARRAY_SIZE(smartq_dai),
diff --git a/sound/soc/samsung/smdk2443_wm9710.c b/sound/soc/samsung/smdk2443_wm9710.c index 8bd1dc5..720ba29 100644 --- a/sound/soc/samsung/smdk2443_wm9710.c +++ b/sound/soc/samsung/smdk2443_wm9710.c @@ -30,6 +30,7 @@ static struct snd_soc_dai_link smdk2443_dai[] = {
static struct snd_soc_card smdk2443 = { .name = "SMDK2443", + .owner = THIS_MODULE, .dai_link = smdk2443_dai, .num_links = ARRAY_SIZE(smdk2443_dai), }; diff --git a/sound/soc/samsung/smdk_spdif.c b/sound/soc/samsung/smdk_spdif.c index e0fd8ad..beaa9c1 100644 --- a/sound/soc/samsung/smdk_spdif.c +++ b/sound/soc/samsung/smdk_spdif.c @@ -160,6 +160,7 @@ static struct snd_soc_dai_link smdk_dai = {
static struct snd_soc_card smdk = { .name = "SMDK-S/PDIF", + .owner = THIS_MODULE, .dai_link = &smdk_dai, .num_links = 1, }; diff --git a/sound/soc/samsung/smdk_wm8580.c b/sound/soc/samsung/smdk_wm8580.c index 81b4478..bff8758 100644 --- a/sound/soc/samsung/smdk_wm8580.c +++ b/sound/soc/samsung/smdk_wm8580.c @@ -203,6 +203,7 @@ static struct snd_soc_dai_link smdk_dai[] = {
static struct snd_soc_card smdk = { .name = "SMDK-I2S", + .owner = THIS_MODULE, .dai_link = smdk_dai, .num_links = 2,
diff --git a/sound/soc/samsung/smdk_wm8580pcm.c b/sound/soc/samsung/smdk_wm8580pcm.c index 49dfafb..fab5322 100644 --- a/sound/soc/samsung/smdk_wm8580pcm.c +++ b/sound/soc/samsung/smdk_wm8580pcm.c @@ -143,6 +143,7 @@ static struct snd_soc_dai_link smdk_dai[] = {
static struct snd_soc_card smdk_pcm = { .name = "SMDK-PCM", + .owner = THIS_MODULE, .dai_link = smdk_dai, .num_links = 2, }; diff --git a/sound/soc/samsung/smdk_wm8994.c b/sound/soc/samsung/smdk_wm8994.c index ad9ac42..8eb309f 100644 --- a/sound/soc/samsung/smdk_wm8994.c +++ b/sound/soc/samsung/smdk_wm8994.c @@ -144,6 +144,7 @@ static struct snd_soc_dai_link smdk_dai[] = {
static struct snd_soc_card smdk = { .name = "SMDK-I2S", + .owner = THIS_MODULE, .dai_link = smdk_dai, .num_links = ARRAY_SIZE(smdk_dai), }; diff --git a/sound/soc/samsung/smdk_wm8994pcm.c b/sound/soc/samsung/smdk_wm8994pcm.c index 23c7fb7..77ecba9 100644 --- a/sound/soc/samsung/smdk_wm8994pcm.c +++ b/sound/soc/samsung/smdk_wm8994pcm.c @@ -124,6 +124,7 @@ static struct snd_soc_dai_link smdk_dai[] = {
static struct snd_soc_card smdk_pcm = { .name = "SMDK-PCM", + .owner = THIS_MODULE, .dai_link = smdk_dai, .num_links = 1, }; diff --git a/sound/soc/samsung/smdk_wm9713.c b/sound/soc/samsung/smdk_wm9713.c index 31c6daf..8e26a73 100644 --- a/sound/soc/samsung/smdk_wm9713.c +++ b/sound/soc/samsung/smdk_wm9713.c @@ -50,6 +50,7 @@ static struct snd_soc_dai_link smdk_dai = {
static struct snd_soc_card smdk = { .name = "SMDK WM9713", + .owner = THIS_MODULE, .dai_link = &smdk_dai, .num_links = 1, }; diff --git a/sound/soc/samsung/speyside.c b/sound/soc/samsung/speyside.c index 0222d86..f9ab770 100644 --- a/sound/soc/samsung/speyside.c +++ b/sound/soc/samsung/speyside.c @@ -291,6 +291,7 @@ static struct snd_soc_dapm_route audio_paths[] = {
static struct snd_soc_card speyside = { .name = "Speyside", + .owner = THIS_MODULE, .dai_link = speyside_dai, .num_links = ARRAY_SIZE(speyside_dai), .aux_dev = speyside_aux_dev, diff --git a/sound/soc/samsung/tobermory.c b/sound/soc/samsung/tobermory.c index 6f91c65..9199649 100644 --- a/sound/soc/samsung/tobermory.c +++ b/sound/soc/samsung/tobermory.c @@ -196,6 +196,7 @@ static int tobermory_late_probe(struct snd_soc_card *card)
static struct snd_soc_card tobermory = { .name = "Tobermory", + .owner = THIS_MODULE, .dai_link = tobermory_dai, .num_links = ARRAY_SIZE(tobermory_dai),