summaryrefslogtreecommitdiffstats
path: root/sound/pci/hda/hda_codec.h
diff options
context:
space:
mode:
authorTakashi Iwai <tiwai@suse.de>2008-11-21 09:08:06 +0100
committerTakashi Iwai <tiwai@suse.de>2008-11-21 09:08:06 +0100
commitb94d3539de59ec6481e38f83c455324fd3aeabc1 (patch)
treecc6034e70d130f02d0e87bcedb9fc4ccf71b66ce /sound/pci/hda/hda_codec.h
parent0623536ca3e8fd7cb8b7468b0fd4d61d80f0b6ea (diff)
downloadop-kernel-dev-b94d3539de59ec6481e38f83c455324fd3aeabc1.zip
op-kernel-dev-b94d3539de59ec6481e38f83c455324fd3aeabc1.tar.gz
ALSA: hda - Fix double free of jack instances
The jack instances created in patch_sigmatel.c may be double-freed. The device management code checks the invalid element, and thus there is no real breakage, but it spews annoying warning messages. But, we can't simply remove the release calls of these jack instances because they have to be freed when the codec is re-configured. Now, a new flag, bus->shutdown is introduced to indicate that the bus is really being unloaded, i.e. the objects managed by the device manager will be automatically deleted. We release these objects only when this flag isn't set. Signed-off-by: Takashi Iwai <tiwai@suse.de>
Diffstat (limited to 'sound/pci/hda/hda_codec.h')
-rw-r--r--sound/pci/hda/hda_codec.h1
1 files changed, 1 insertions, 0 deletions
diff --git a/sound/pci/hda/hda_codec.h b/sound/pci/hda/hda_codec.h
index ee122b0..a70b181 100644
--- a/sound/pci/hda/hda_codec.h
+++ b/sound/pci/hda/hda_codec.h
@@ -617,6 +617,7 @@ struct hda_bus {
/* misc op flags */
unsigned int needs_damn_long_delay :1;
+ unsigned int shutdown :1; /* being unloaded */
};
/*
OpenPOWER on IntegriCloud