Re: [asterisk-users] Kernel panic (asterisk 1.8.0-rc3, dahdi-linux-2.4)
Am Samstag, den 16.10.2010, 14:00 -0500 schrieb Shaun Ruffell: On 10/16/10 12:47 PM, Karsten Wemheuer wrote: Hi, Am Freitag, den 15.10.2010, 14:34 -0500 schrieb Shaun Ruffell: On 10/15/2010 04:00 AM, Karsten Wemheuer wrote: I setup an asterisk system (asterisk 1.8-rc3, dahdi-linux-2.4.0 with dahdi-extra from Tzafrirs git, kernel 2.6.35.4). The hardware is an older pc system with Celeron CPU (2.5 GHz) with a Beronet BN4S0 ISDN card. The system starts without any errors. I discovered a severe issue. The kernel panics on a very small load. The first call normally gets through. If I start the second or third call and sometimes when I terminate the first call, the system panics (Oops text on console). After solving some difficulties (the relevant part of the Oops text scrolls out of the monitor, no serial interface), I get the text via netconsole. It seems to me, that the panic occurred in oslec (function oslec_update). But maybe I am wrong with this. In the oslec code there is a patch to enable MMX. After switching this off, the problem disappeared. AFAIK the cpu supports mmx. Where should I address this issue to? Is it a known issue? Do you have CONFIG_DAHDI_MMX defined in include/dahdi/dahdi_config.h? No, I don't think so. (This is from memory, I currently have no access to the test system). But there was a patch (I think from debian packages, original from bug tracker (dahdi_mmx_auto.diff from http://bugs.digium.com/view.php?id=13500)) which enables mmx at least for the echo canceler oslec (I think). Disabling this patch let the kernel panic disappear. Hmmm...I can't be certain since there are many parts coming from out of the tree here (besides just olsec itself), but looking at https://issues.asterisk.org/file_download.php?file_id=22366type=bug doesn't *seem* right. It appears that DAHDI_USE_MMX is exported and therefore the olsec in git://gitorious.org/dahdi-extra/dahdi-extra.git uses the MMX instructions, but -DCONFIG_DAHDI_MMX is only added onto CFLAGS_zaptel_base.o and not CFLAGS_dahdi_base.o. Therefore, oslec most likely is killing the FPU registers since it believes that dahdi-base.c is taking care of saving and restoring them by hand. I would recommend changing CFLAGS_zaptel_base.o to CFLAGS_dahdi_base.o, or hand edit include/dahdi/dahdi_config.h to make sure CONFIG_DAHDI_MMX is defined and see if you still get the crash. I changed CFLAGS_zaptel_base.o to CFLAGS_dahdi_base.o as You recommended and it seems to work now. No crash anymore. Thanks, Karsten -- _ -- Bandwidth and Colocation Provided by http://www.api-digital.com -- New to Asterisk? Join us for a live introductory webinar every Thurs: http://www.asterisk.org/hello asterisk-users mailing list To UNSUBSCRIBE or update options visit: http://lists.digium.com/mailman/listinfo/asterisk-users
Re: [asterisk-users] Kernel panic (asterisk 1.8.0-rc3, dahdi-linux-2.4)
Hi, Am Freitag, den 15.10.2010, 14:34 -0500 schrieb Shaun Ruffell: On 10/15/2010 04:00 AM, Karsten Wemheuer wrote: I setup an asterisk system (asterisk 1.8-rc3, dahdi-linux-2.4.0 with dahdi-extra from Tzafrirs git, kernel 2.6.35.4). The hardware is an older pc system with Celeron CPU (2.5 GHz) with a Beronet BN4S0 ISDN card. The system starts without any errors. I discovered a severe issue. The kernel panics on a very small load. The first call normally gets through. If I start the second or third call and sometimes when I terminate the first call, the system panics (Oops text on console). After solving some difficulties (the relevant part of the Oops text scrolls out of the monitor, no serial interface), I get the text via netconsole. It seems to me, that the panic occurred in oslec (function oslec_update). But maybe I am wrong with this. In the oslec code there is a patch to enable MMX. After switching this off, the problem disappeared. AFAIK the cpu supports mmx. Where should I address this issue to? Is it a known issue? Do you have CONFIG_DAHDI_MMX defined in include/dahdi/dahdi_config.h? No, I don't think so. (This is from memory, I currently have no access to the test system). But there was a patch (I think from debian packages, original from bug tracker (dahdi_mmx_auto.diff from http://bugs.digium.com/view.php?id=13500)) which enables mmx at least for the echo canceler oslec (I think). Disabling this patch let the kernel panic disappear. Maybe Alex suggestion points in an interesting direction. The kernel is indeed compiled with CONFIG_PREEMPT=y. If I have enough time, I'll try compiling the kernel with another preemption model (voluntary or no) and patch applied. Thanks, Karsten -- _ -- Bandwidth and Colocation Provided by http://www.api-digital.com -- New to Asterisk? Join us for a live introductory webinar every Thurs: http://www.asterisk.org/hello asterisk-users mailing list To UNSUBSCRIBE or update options visit: http://lists.digium.com/mailman/listinfo/asterisk-users
Re: [asterisk-users] Kernel panic (asterisk 1.8.0-rc3, dahdi-linux-2.4)
On 10/16/10 12:47 PM, Karsten Wemheuer wrote: Hi, Am Freitag, den 15.10.2010, 14:34 -0500 schrieb Shaun Ruffell: On 10/15/2010 04:00 AM, Karsten Wemheuer wrote: I setup an asterisk system (asterisk 1.8-rc3, dahdi-linux-2.4.0 with dahdi-extra from Tzafrirs git, kernel 2.6.35.4). The hardware is an older pc system with Celeron CPU (2.5 GHz) with a Beronet BN4S0 ISDN card. The system starts without any errors. I discovered a severe issue. The kernel panics on a very small load. The first call normally gets through. If I start the second or third call and sometimes when I terminate the first call, the system panics (Oops text on console). After solving some difficulties (the relevant part of the Oops text scrolls out of the monitor, no serial interface), I get the text via netconsole. It seems to me, that the panic occurred in oslec (function oslec_update). But maybe I am wrong with this. In the oslec code there is a patch to enable MMX. After switching this off, the problem disappeared. AFAIK the cpu supports mmx. Where should I address this issue to? Is it a known issue? Do you have CONFIG_DAHDI_MMX defined in include/dahdi/dahdi_config.h? No, I don't think so. (This is from memory, I currently have no access to the test system). But there was a patch (I think from debian packages, original from bug tracker (dahdi_mmx_auto.diff from http://bugs.digium.com/view.php?id=13500)) which enables mmx at least for the echo canceler oslec (I think). Disabling this patch let the kernel panic disappear. Hmmm...I can't be certain since there are many parts coming from out of the tree here (besides just olsec itself), but looking at https://issues.asterisk.org/file_download.php?file_id=22366type=bug doesn't *seem* right. It appears that DAHDI_USE_MMX is exported and therefore the olsec in git://gitorious.org/dahdi-extra/dahdi-extra.git uses the MMX instructions, but -DCONFIG_DAHDI_MMX is only added onto CFLAGS_zaptel_base.o and not CFLAGS_dahdi_base.o. Therefore, oslec most likely is killing the FPU registers since it believes that dahdi-base.c is taking care of saving and restoring them by hand. I would recommend changing CFLAGS_zaptel_base.o to CFLAGS_dahdi_base.o, or hand edit include/dahdi/dahdi_config.h to make sure CONFIG_DAHDI_MMX is defined and see if you still get the crash. Cheers, Shaun -- Shaun Ruffell Digium, Inc. | Linux Kernel Developer 445 Jan Davis Drive NW - Huntsville, AL 35806 - USA Check us out at: www.digium.com www.asterisk.org -- _ -- Bandwidth and Colocation Provided by http://www.api-digital.com -- New to Asterisk? Join us for a live introductory webinar every Thurs: http://www.asterisk.org/hello asterisk-users mailing list To UNSUBSCRIBE or update options visit: http://lists.digium.com/mailman/listinfo/asterisk-users
Re: [asterisk-users] Kernel panic (asterisk 1.8.0-rc3, dahdi-linux-2.4)
On 10/15/2010 04:00 AM, Karsten Wemheuer wrote: I setup an asterisk system (asterisk 1.8-rc3, dahdi-linux-2.4.0 with dahdi-extra from Tzafrirs git, kernel 2.6.35.4). The hardware is an older pc system with Celeron CPU (2.5 GHz) with a Beronet BN4S0 ISDN card. The system starts without any errors. I discovered a severe issue. The kernel panics on a very small load. The first call normally gets through. If I start the second or third call and sometimes when I terminate the first call, the system panics (Oops text on console). After solving some difficulties (the relevant part of the Oops text scrolls out of the monitor, no serial interface), I get the text via netconsole. It seems to me, that the panic occurred in oslec (function oslec_update). But maybe I am wrong with this. In the oslec code there is a patch to enable MMX. After switching this off, the problem disappeared. AFAIK the cpu supports mmx. Where should I address this issue to? Is it a known issue? Do you have CONFIG_DAHDI_MMX defined in include/dahdi/dahdi_config.h? -- Shaun Ruffell Digium, Inc. | Linux Kernel Developer 445 Jan Davis Drive NW - Huntsville, AL 35806 - USA Check us out at: www.digium.com www.asterisk.org -- _ -- Bandwidth and Colocation Provided by http://www.api-digital.com -- New to Asterisk? Join us for a live introductory webinar every Thurs: http://www.asterisk.org/hello asterisk-users mailing list To UNSUBSCRIBE or update options visit: http://lists.digium.com/mailman/listinfo/asterisk-users