Bug 7303

Summary: corrupted double-linked list
Product: Sisyphus Reporter: Eugene Vlasov <eugvv>
Component: alsa-ossAssignee: Michael Shigorin <mike>
Status: CLOSED FIXED QA Contact: qa-sisyphus
Severity: blocker    
Priority: P2 CC: mike, shrek, sr, vsu, zerg
Version: unstable   
Hardware: all   
OS: Linux   
Bug Depends on:    
Bug Blocks: 7079    

Description Eugene Vlasov 2005-07-06 16:20:46 MSD
Похоже, /usr/bin/aoss из alsa-oss-1.0.9-alt1 сломан - при запуске xmms через
/usr/bin/xmms получаем следующее (не сразу, через некоторое время, в моих
экспериментах от нескольких секунд до нескольких минут):

eugene pub/mp3/The Ben Webster Quintet/Soulville $ xmms Soulville_1957.m3u 
soundwrapper: Execute "/usr/bin/xmms-bin Soulville_1957.m3u" via aoss

Нарушение сегментации!

Скорее всего вы наткнулись на ошибку в XMMS. Пожалуйста, посетите
http://bugs.xmms.org и отправьте сообщение об ошибке.

*** glibc detected *** free(): invalid next size (fast): 0x08160bf8 ***
zsh: 13468 abort      xmms Soulville_1957.m3u

при запуске как /usr/bin/xmms-bin (без враппера) все играет без проблем.
Comment 1 Michael Shigorin 2005-07-06 16:24:01 MSD
посмотрим, надо ноут d-u'нуть
Comment 2 Eugene Vlasov 2005-07-06 16:35:30 MSD
Только сейчас заметил, что краткое описание бага не совсем соответствует
симптомам. Дело в том, что ошибка может выглядеть еще и так (именно по этой
ошибке я дал краткое описание):

*** glibc detected *** corrupted double-linked list: 0x081602e0 ***

Или так:

*** glibc detected *** free(): invalid pointer: 0xb7d95ff4 ***

Или просто как "Нарушение сегментации". А может вообще без симптомов падать.
Comment 3 Eugene Vlasov 2005-07-06 20:26:56 MSD
Воспроизвелось на рабочем компьютере с

eugene ~ $ rpm -qa|grep alsa|sort
alsa-oss-1.0.9-alt1
alsa-tools-1.0.9-alt1
alsa-utils-1.0.9a-alt1
kernel-modules-alsa-std26-smp-1.0.8-alt6.10
libalsa-1.0.9-alt1
libalsa-devel-1.0.9-alt1
xmms-out-alsa-1.2.10-alt5

и на домашнем с

eugene ~ $ rpm -qa|grep alsa|sort
alsa-oss-1.0.9-alt1
alsa-tools-1.0.9-alt1
alsa-utils-1.0.9a-alt1
kernel-doc-alsa-1.0.9a-1.0.9a-alt1
kernel-headers-alsa-1.0.9a-alt1
kernel-modules-alsa-wks26-up-1.0.8-alt6.132619.4
libalsa-1.0.9-alt1
libalsa-devel-1.0.9-alt1
xmms-out-alsa-1.2.10-alt5

Ошибка возникает, только если в xmms включен вывод через OSS (если включить
вывод через alsa - все работает нормально).
И еще - помимо перечисленного там возникают уж совсем мистические ошибки -
например кучей валятся Gtk-WARNINGS при просмотре свойств файла.
Comment 4 Michael Shigorin 2005-07-06 20:40:55 MSD
(In reply to comment #3)
> И еще - помимо перечисленного там возникают уж совсем мистические ошибки -
> например кучей валятся Gtk-WARNINGS при просмотре свойств файла.
...на которые традиционно забивают. :)
Comment 5 Eugene Vlasov 2005-07-06 23:42:38 MSD
(In reply to comment #4)
> > И еще - помимо перечисленного там возникают уж совсем мистические ошибки -
> > например кучей валятся Gtk-WARNINGS при просмотре свойств файла.
> ...на которые традиционно забивают. :)

Ну да, собственно и падает оно наверное не из за них. Юмор здесь в том, что эти
ворнинги появляются только при описанных мной условиях - то есть при запуске
через aoss и использовании OSS для вывода. В остальных случаях воспроизвести не
удалось. Казалось бы, где связь?
Comment 6 Michael Shigorin 2005-07-11 14:19:35 MSD
2 sr: мы можем это починить?
Comment 7 Michael Shigorin 2005-07-11 18:02:33 MSD
(In reply to comment #3)
> kernel-modules-alsa-std26-smp-1.0.8-alt6.10
> libalsa-1.0.9-alt1

> kernel-modules-alsa-wks26-up-1.0.8-alt6.132619.4
> libalsa-1.0.9-alt1
Кстати... а ядерный модуль до 1.0.9b догнать получается?

Потому как vsu@ рассказывал, что порой разъезд вылазит боком.  Не всегда, но бывает.
Comment 8 Eugene Vlasov 2005-07-11 20:19:02 MSD
Могу в среду попробовать обновить ядро на рабочей машине. Только в сизифе вроде
ничего выше 1.0.9a нет? 1.0.9b мне откуда взять?
Comment 9 Serge Ryabchun 2005-07-11 20:28:21 MSD
(In reply to comment #8)
> Могу в среду попробовать обновить ядро на рабочей машине. Только в сизифе вроде
> ничего выше 1.0.9a нет? 1.0.9b мне откуда взять?
> 
eugene ~ $ rpm -qa|grep alsa|sort
alsa-oss-1.0.9-alt1
alsa-tools-1.0.9-alt1
alsa-utils-1.0.9a-alt1
kernel-modules-alsa-wks26-up-1.0.8-alt6.132619.4
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
Ну, дык, 1.0.9a и нужен. У mike@ стоит 1.0.9a и не падает
BTW. именно в 1.0.9a были fix-ы OSS эмеляции, в 1.0.9b ничего
критического
Comment 10 Eugene Vlasov 2005-07-11 21:19:32 MSD
(In reply to comment #9)

> kernel-modules-alsa-wks26-up-1.0.8-alt6.132619.4
> ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
> Ну, дык, 1.0.9a и нужен. У mike@ стоит 1.0.9a и не падает
> BTW. именно в 1.0.9a были fix-ы OSS эмеляции, в 1.0.9b ничего
> критического

Рабочую машину (std26) я обновлю в среду (для wks26 1.0.9 вроде пока не
собрали). Возможно это и решит мою проблему. Только с aoss все равно надо что-то
делать.
Comment 11 Eugene Vlasov 2005-07-13 14:24:18 MSD
Ну вот. Обновил:

eugene ~ $ rpm -qa|grep alsa|sort
alsa-oss-1.0.9-alt2
alsa-tools-1.0.9-alt1
alsa-utils-1.0.9a-alt2
kernel-modules-alsa-std26-smp-1.0.9a-alt2.132620.1
libalsa-1.0.9-alt2
libalsa-devel-1.0.9-alt2
xmms-out-alsa-1.2.10-alt5

Однако:
eugene pub/mp3/Aarni/Duumipeikon Paluu $ xmms Duumipeikon_Paluu_demo_2002.m3u
soundwrapper: Execute "/usr/bin/xmms-bin Duumipeikon_Paluu_demo_2002.m3u" via aoss

Gtk-WARNING **: gtk_accel_group_add(): could not find signal "add-accelerator"in
the `GtkButton' class ancestry

Gtk-WARNING **: gtk_accel_group_add(): could not find signal "add-accelerator"in
the `GtkButton' class ancestry
Loading genre: Experimental DoomLoading genre: Experimental DoomLoading genre: 
Нарушение сегментации!

Скорее всего вы наткнулись на ошибку в XMMS. Пожалуйста, посетите
http://bugs.xmms.org и отправьте сообщение об ошибке.

Не вылечилось.
Comment 12 Michael Shigorin 2005-07-13 16:08:26 MSD
тут одному человеку помог снос cyr_rfx:

http://lists.altlinux.ru/pipermail/backports/2005-July/000695.html
http://lists.altlinux.ru/pipermail/backports/2005-July/000699.html

абсолютно случайно не дают наводок и тут?..
Comment 13 Eugene Vlasov 2005-07-13 20:05:56 MSD
(In reply to comment #12)
> тут одному человеку помог снос cyr_rfx:
> абсолютно случайно не дают наводок и тут?..

Нет, все мимо, не помог снос cyr_rfx, очистка ~/.xmms, запуск под свежесозданным
пользователем.
Как падало, так и падает.

Но, похоже xmms тут и правда не без греха, с другими приложениями использующими
OSS воспроизвести пока не удалось - mplayer вот из под aoss используя OSS часами
пашет - и ничего.
Такое впечатление, что баги в XMMS оказались несовместимыми с багами в
alsa-oss-1.0.9.
Попробую еще погонять xmms-1.2.10-alt6, когда он до сизифа доберется - может
пересборка поможет.
Comment 14 Eugene Vlasov 2005-07-15 14:52:20 MSD
Обновил xmms до alt6, но оно все равно упало (после пяти минут
воспроизведения)... Даже новое слово сказало:

Gdk-ERROR **: BadShmSeg (invalid shared segment parameter)
  serial 32602 error_code 171 request_code 148 minor_code 3

Более того, это все с 

eugene ~ $ rpm -qa|grep xmms  
libxmms-1.2.10-alt6
xmms-1.2.10-alt6

То есть остался один xmms, никаких плагинов. ~/.xmms тоже удалено.
Comment 15 Eugene Vlasov 2005-07-21 15:00:10 MSD
Я нашел еще одну пострадавшую программу. Это qnetwalk-1.1-alt2. При запуске
через sound_wrapper.sh (или просто через aoss):
eugene ~ $ sound_wrapper.sh qnetwalk
sound_wrapper.sh: Execute "qnetwalk" via aoss
zsh: 12029 segmentation fault  sound_wrapper.sh qnetwalk

Поскольку в пункте меню прописано именно это (sound_wrapper.sh qnetwalk), через
пункт меню программа не запускается.

При простом запуске (qnetwalk) все работает нормально.

На этот раз, в отличие от xmms вылетает сразу.

Правда, это на машине, где кернельная alsa еще не обновлена (жду wks26), завтра
проверю на рабочей машине где 1.0.9a.
Comment 16 Sergey V Turchin 2005-07-21 16:03:52 MSD
(In reply to comment #15) 
> Я нашел еще одну пострадавшую программу. Это qnetwalk-1.1-alt2. При запуске 
> через sound_wrapper.sh (или просто через aoss): 
> eugene ~ $ sound_wrapper.sh qnetwalk 
> sound_wrapper.sh: Execute "qnetwalk" via aoss 
> zsh: 12029 segmentation fault  sound_wrapper.sh qnetwalk 
Не, это бага в qnetwalk. Надо не его запускать через soundwrapper, а nasd 
 
Comment 17 Michael Shigorin 2005-07-21 16:26:55 MSD
2 eugvv: попробуйте http://paq.osdn.org.ua/~mike/xmms-alt7/xmms-1.2.10-alt7.src.rpm
(оторван soundwrapper, похаканы пути к vorbis headers (блин))
Comment 18 Eugene Vlasov 2005-07-21 21:19:12 MSD
(In reply to comment #17)
> http://paq.osdn.org.ua/~mike/xmms-alt7/xmms-1.2.10-alt7.src.rpm
> (оторван soundwrapper, похаканы пути к vorbis headers (блин))

Работает. Час уже играет через OSS.

Кстати, оно c target отличным от i586 собирается, но mp3 не играет, говорит:
/usr/lib/xmms/Input/libmpg123.so: undefined symbol: mpg123_synth_1to1_mmx
Comment 19 Michael Shigorin 2005-07-22 13:32:35 MSD
(In reply to comment #18)
> Работает. Час уже играет через OSS.
Похоже, aoss -- всё-таки плохая добавка к soundwrapper... можете попробовать
всё-таки убедить в этом zerg@ (пакет menu IIRC).

> Кстати, оно c target отличным от i586 собирается, но mp3 не играет, говорит:
> /usr/lib/xmms/Input/libmpg123.so: undefined symbol: mpg123_synth_1to1_mmx
Это x86_64?  Вообще там ключики в %configure на не-%ix86 предусмотрены, но
проверить это мне не получалось.  Если разберётесь -- забрасывайте патчик,
применю, а пока можете попробовать xmms-in-mad использовать.
Comment 20 Eugene Vlasov 2005-07-22 13:50:48 MSD
(In reply to comment #19)
> Похоже, aoss -- всё-таки плохая добавка к soundwrapper... можете попробовать
> всё-таки убедить в этом zerg@ (пакет menu IIRC).

Найти бы, что еще через aoss не работает.

> > Кстати, оно c target отличным от i586 собирается, но mp3 не играет, говорит:
> > /usr/lib/xmms/Input/libmpg123.so: undefined symbol: mpg123_synth_1to1_mmx
> Это x86_64?

Нет, это поведение rpmbuild - он по умолчанию собирает под мой процессор (target
pentium4).

> а пока можете попробовать xmms-in-mad использовать.

Я уже с --target i586 собрал
Comment 21 Michael Shigorin 2005-07-22 14:04:53 MSD
(In reply to comment #20)
> > > Кстати, оно c target отличным от i586 собирается, но mp3 не играет, говорит:
> > > /usr/lib/xmms/Input/libmpg123.so: undefined symbol: mpg123_synth_1to1_mmx
> > Это x86_64?
> Нет, это поведение rpmbuild - он по умолчанию собирает под мой процессор (target
> pentium4).
> > а пока можете попробовать xmms-in-mad использовать.
> Я уже с --target i586 собрал
Ну, отдельную багу (на xmms, лучше -- в апстрим) повесить стоит.
Comment 22 Michael Shigorin 2005-11-16 22:59:45 MSK
Собираю alsa-1.0.10, можете ещё глянуть
http://paq.osdn.org.ua/~mike/tmp/xmms-1.2.10-alt9.src.rpm
-- вдруг сработает.
Comment 23 Eugene Vlasov 2005-11-17 12:34:54 MSK
(In reply to comment #22)
> http://paq.osdn.org.ua/~mike/tmp/xmms-1.2.10-alt9.src.rpm

Нет, не заработало. При запуске через 'aoss xmms' по прежнему падает через
несколько минут. Посмотрим, как будет с alsa-1.0.10.
Comment 24 Eugene Vlasov 2005-11-21 13:20:23 MSK
Похоже, для alsa-1.0.10 эта проблема больше не актуальна
`aoss xmms` играет вот уже час.
И `aoss qnetwalk` теперь запускается нормально, не падает.
Видимо - FIXED.

$ rpm -qa|grep alsa|sort                              
alsa-oss-1.0.10-alt1
alsa-tools-1.0.10-alt1
alsa-utils-1.0.10-alt1
cmus-out-alsa-1.6.3-alt1
kernel-modules-alsa-std26-smp-1.0.9a-alt5.132620.4
libalsa-1.0.10-alt1
libalsa-devel-1.0.10-alt1
Comment 25 Michael Shigorin 2005-11-24 14:58:18 MSK
И то ладно.