diff options
author | Kuan-Wei Chiu <visitorckw@gmail.com> | 2025-01-29 00:54:15 +0800 |
---|---|---|
committer | Takashi Iwai <tiwai@suse.de> | 2025-01-28 18:02:31 +0100 |
commit | 3b4309546b48fc167aa615a2d881a09c0a97971f (patch) | |
tree | 194991bcfa7066f03e56d8465ae3684839ecd4d5 /tools/perf/scripts/python/parallel-perf.py | |
parent | 519b2b14bef70922bd64117a978ea7f2a683b75b (diff) |
ALSA: hda: Fix headset detection failure due to unstable sort
The auto_parser assumed sort() was stable, but the kernel's sort() uses
heapsort, which has never been stable. After commit 0e02ca29a563
("lib/sort: optimize heapsort with double-pop variation"), the order of
equal elements changed, causing the headset to fail to work.
Fix the issue by recording the original order of elements before
sorting and using it as a tiebreaker for equal elements in the
comparison function.
Fixes: b9030a005d58 ("ALSA: hda - Use standard sort function in hda_auto_parser.c")
Reported-by: Austrum <austrum.lab@gmail.com>
Closes: https://bugzilla.kernel.org/show_bug.cgi?id=219158
Tested-by: Austrum <austrum.lab@gmail.com>
Cc: stable@vger.kernel.org
Signed-off-by: Kuan-Wei Chiu <visitorckw@gmail.com>
Link: https://patch.msgid.link/20250128165415.643223-1-visitorckw@gmail.com
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Diffstat (limited to 'tools/perf/scripts/python/parallel-perf.py')
0 files changed, 0 insertions, 0 deletions