Re: em0+msi related panic
- From: Goran Gajic <ggajic@xxxxxxxxxxxxxxxxxxxxxx>
- Date: Tue, 27 Feb 2007 14:32:26 +0100 (CET)
Hi,
Looking through source and diff of sys/dev/em/if_em.c I have noticed that
@@ -275,7 +275,7 @@ static void em_add_int_delay_sysctl(stru
static poll_handler_t em_poll;
static void em_intr(void *);
#else
-static void em_intr_fast(void *);
+static int em_intr_fast(void *);
static void em_add_int_process_limit(struct adapter *, const char *,
const char *, int *, int);
static void em_handle_rxtx(void *context, int pending);
@@ -1307,7 +1307,7 @@ em_handle_rxtx(void *context, int pendin
* Fast Interrupt Service routine
*
*********************************************************************/
-static void
+static int
em_intr_fast(void *arg)
{
struct adapter *adapter = arg;
@@ -2173,8 +2174,8 @@ em_allocate_intr(struct adapter *adapter
#ifdef DEVICE_POLLING
if (adapter->int_handler_tag == NULL && (error = bus_setup_intr(dev,
- adapter->res_interrupt, INTR_TYPE_NET | INTR_MPSAFE, em_intr, adapter,
- &adapter->int_handler_tag)) != 0) {
+ adapter->res_interrupt, INTR_TYPE_NET | INTR_MPSAFE, NULL, em_intr,
+ adapter, &adapter->int_handler_tag)) != 0) {
device_printf(dev, "Failed to register interrupt handler");
return (error);
}
between revision 1.168 and 1.169 that causes panic. I have switched
em_intr_fast to be static void and order in bus_setup_intr is incorrect. It should be:
if ((error = bus_setup_intr(dev, adapter->res_interrupt,
INTR_TYPE_NET,NULL, em_intr_fast, adapter,
&adapter->int_handler_tag)) != 0) {
not
if ((error = bus_setup_intr(dev, adapter->res_interrupt,
INTR_TYPE_NET, em_intr_fast,NULL adapter,
&adapter->int_handler_tag)) != 0) {
which causes panic when:
/boot/loader
contains:
hw.pci.enable_msi=0
hw.pci.enable_msix=0
Btw. I'm using this since msi=1 cases watchdog timeouts with em0.
Regards,
gg.
_______________________________________________
freebsd-current@xxxxxxxxxxx mailing list
http://lists.freebsd.org/mailman/listinfo/freebsd-current
To unsubscribe, send any mail to "freebsd-current-unsubscribe@xxxxxxxxxxx"
- Follow-Ups:
- Re: em0+msi related panic
- From: Ruslan Ermilov
- Re: em0+msi related panic
- From: Paolo Pisati
- Re: em0+msi related panic
- References:
- em0+msi related panic
- From: Goran Gajic
- em0+msi related panic
- Prev by Date: Re: em0+msi related panic
- Next by Date: Re: em0+msi related panic
- Previous by thread: Re: em0+msi related panic
- Next by thread: Re: em0+msi related panic
- Index(es):
Relevant Pages
|
|