Hi,
This one’s left me totally groping in the dark - any useful hints or ideas
will earn my everlasting gratitude!
Setup: QNX 6.1 on x86 with an el900 Ethernet adapter (*)
Configuration: An ip-ip intermediate driver is loaded, processing some
packets, passing others through without processing.
With most traffic, everything works fine.
With a specific traffic scenario, the driver causes io-net to die, even
though the driver does not process any of the packets!
gdb on io-net shows a segfault in “0xb03750da in resched() from
/x86/lib/dll/npm-tcpip.so” with NO traceback.
-
io-net does not crash with the driver unloaded.
-
By “passing packets through” I mean:
-
the driver’s rx_up routine does ion->tx_up() followed by
ion->tx_done() if tx_up() returned 0.
-
the driver’s rx_down routine does ion->tx_down()
-
The packets in question a fairly small tcp/ip packets. Nothing special
about them (as far as I can see…)
-
More information (much more!) available upon request…
Help!
Rony
(*) The problem also occurs on an RPX-Lite powerpc.
When handling down headed packets, are you using a lot of stack?
npm-tcpip.so is sensitive to this.
-seanb
Rony Shapiro <rshapiro@maya-st.com> wrote:
: Hi,
: This one’s left me totally groping in the dark - any useful hints or ideas
: will earn my everlasting gratitude!
: Setup: QNX 6.1 on x86 with an el900 Ethernet adapter (*)
: Configuration: An ip-ip intermediate driver is loaded, processing some
: packets, passing others through without processing.
: With most traffic, everything works fine.
: With a specific traffic scenario, the driver causes io-net to die, even
: though the driver does not process any of the packets!
: gdb on io-net shows a segfault in “0xb03750da in resched() from
: /x86/lib/dll/npm-tcpip.so” with NO traceback.
: - io-net does not crash with the driver unloaded.
: - By “passing packets through” I mean:
: - the driver’s rx_up routine does ion->tx_up() followed by
: ion->tx_done() if tx_up() returned 0.
: - the driver’s rx_down routine does ion->tx_down()
: - The packets in question a fairly small tcp/ip packets. Nothing special
: about them (as far as I can see…)
: - More information (much more!) available upon request…
: Help!
: Rony
: (*) The problem also occurs on an RPX-Lite powerpc.
In general, yes - we’re calling quite a few procedures nested rather deeply.
-
In the particular scenario I’ve described, we’re not calling any of that.
-
Is there a compile/link/load parameter that I can play with to make the
stack larger, or are we totally hosed?
A problem with the stack would be consistent with the lack of a traceback in
gdb, I guess…
Thanks,
Rony
“Sean Boudreau” <seanb@qnx.com> wrote in message
news:a36gl5$n3g$1@nntp.qnx.com…
When handling down headed packets, are you using a lot of stack?
npm-tcpip.so is sensitive to this.
-seanb
Rony Shapiro <> rshapiro@maya-st.com> > wrote:
: Hi,
: This one’s left me totally groping in the dark - any useful hints or
ideas
: will earn my everlasting gratitude!
: Setup: QNX 6.1 on x86 with an el900 Ethernet adapter (*)
: Configuration: An ip-ip intermediate driver is loaded, processing some
: packets, passing others through without processing.
: With most traffic, everything works fine.
: With a specific traffic scenario, the driver causes io-net to die, even
: though the driver does not process any of the packets!
: gdb on io-net shows a segfault in “0xb03750da in resched() from
: /x86/lib/dll/npm-tcpip.so” with NO traceback.
: - io-net does not crash with the driver unloaded.
: - By “passing packets through” I mean:
: - the driver’s rx_up routine does ion->tx_up() followed by
: ion->tx_done() if tx_up() returned 0.
: - the driver’s rx_down routine does ion->tx_down()
: - The packets in question a fairly small tcp/ip packets. Nothing special
: about them (as far as I can see…)
: - More information (much more!) available upon request…
: Help!
: Rony
: (*) The problem also occurs on an RPX-Lite powerpc.
The 6.2 stack will have a command line option.
-seanb
Rony Shapiro <rshapiro@maya-st.com> wrote:
: In general, yes - we’re calling quite a few procedures nested rather deeply.
: - In the particular scenario I’ve described, we’re not calling any of that.
: - Is there a compile/link/load parameter that I can play with to make the
: stack larger, or are we totally hosed?
: A problem with the stack would be consistent with the lack of a traceback in
: gdb, I guess…
: Thanks,
: Rony
: “Sean Boudreau” <seanb@qnx.com> wrote in message
: news:a36gl5$n3g$1@nntp.qnx.com…
:> When handling down headed packets, are you using a lot of stack?
:> npm-tcpip.so is sensitive to this.
:>
:> -seanb
:>
:> Rony Shapiro <rshapiro@maya-st.com> wrote:
:> : Hi,
:>
:> : This one’s left me totally groping in the dark - any useful hints or
: ideas
:> : will earn my everlasting gratitude!
:>
:> : Setup: QNX 6.1 on x86 with an el900 Ethernet adapter ()
:>
:> : Configuration: An ip-ip intermediate driver is loaded, processing some
:> : packets, passing others through without processing.
:> : With most traffic, everything works fine.
:> : With a specific traffic scenario, the driver causes io-net to die, even
:> : though the driver does not process any of the packets!
:>
:> : gdb on io-net shows a segfault in “0xb03750da in resched() from
:> : /x86/lib/dll/npm-tcpip.so” with NO traceback.
:>
:> : - io-net does not crash with the driver unloaded.
:> : - By “passing packets through” I mean:
:> : - the driver’s rx_up routine does ion->tx_up() followed by
:> : ion->tx_done() if tx_up() returned 0.
:> : - the driver’s rx_down routine does ion->tx_down()
:>
:> : - The packets in question a fairly small tcp/ip packets. Nothing special
:> : about them (as far as I can see…)
:>
:> : - More information (much more!) available upon request…
:>
:> : Help!
:>
:> : Rony
:>
:>
:>
:> : () The problem also occurs on an RPX-Lite powerpc.
:>
:>
So I guess we’re hosed until then?
(BTW - when is 6.2 scheduled for release?)
Rony
“Sean Boudreau” <seanb@qnx.com> wrote in message
news:a36md7$r8f$1@nntp.qnx.com…
The 6.2 stack will have a command line option.
-seanb
Rony Shapiro <> rshapiro@maya-st.com> > wrote:
: In general, yes - we’re calling quite a few procedures nested rather
deeply.
: - In the particular scenario I’ve described, we’re not calling any of
that.
: - Is there a compile/link/load parameter that I can play with to make
the
: stack larger, or are we totally hosed?
: A problem with the stack would be consistent with the lack of a
traceback in
: gdb, I guess…
: Thanks,
: Rony
: “Sean Boudreau” <> seanb@qnx.com> > wrote in message
: news:a36gl5$n3g$> 1@nntp.qnx.com> …
:> When handling down headed packets, are you using a lot of stack?
:> npm-tcpip.so is sensitive to this.
:
:> -seanb
:
:> Rony Shapiro <> rshapiro@maya-st.com> > wrote:
:> : Hi,
:
:> : This one’s left me totally groping in the dark - any useful hints or
: ideas
:> : will earn my everlasting gratitude!
:
:> : Setup: QNX 6.1 on x86 with an el900 Ethernet adapter ()
:
:> : Configuration: An ip-ip intermediate driver is loaded, processing
some
:> : packets, passing others through without processing.
:> : With most traffic, everything works fine.
:> : With a specific traffic scenario, the driver causes io-net to die,
even
:> : though the driver does not process any of the packets!
:
:> : gdb on io-net shows a segfault in “0xb03750da in resched() from
:> : /x86/lib/dll/npm-tcpip.so” with NO traceback.
:
:> : - io-net does not crash with the driver unloaded.
:> : - By “passing packets through” I mean:
:> : - the driver’s rx_up routine does ion->tx_up() followed by
:> : ion->tx_done() if tx_up() returned 0.
:> : - the driver’s rx_down routine does ion->tx_down()
:
:> : - The packets in question a fairly small tcp/ip packets. Nothing
special
:> : about them (as far as I can see…)
:
:> : - More information (much more!) available upon request…
:
:> : Help!
:
:> : Rony
:
:
:
:> : () The problem also occurs on an RPX-Lite powerpc.
:
:
Rony Shapiro <rshapiro@maya-st.com> wrote:
: So I guess we’re hosed until then?
Unless you can reduce your stack requirements.
: (BTW - when is 6.2 scheduled for release?)
Probably asking in the wrong place. Your
sales rep should be able to help you.
-seanb