James Puckett
|
dhcp.client startup trouble
|
James Puckett
01/29/2009 6:30 PM
post21030
|
dhcp.client startup trouble
I'm running 6.4.0 on a Gigabyte G31M-ES2L motherboard (which uses the RTL 8111C LAN chip) and a dual core CPU.
I have the network mode in net.cfg set to dhcp but on a reboot dhcp.client is not started. I added it to rc.local but
it doesn't work correctly. dhcp.client is started and running when I log in but ifconfig doesn't show an IP address
(not even 0.0.0.0). If at that point I reconfigure the network via phlip, the initial instance of dhcp.client is killed
, a new one is started, and I get a valid IP address. It will also start working if I manually restart dhcp.client.
However, if I invoke dhcp.client in .profile for the root account I get different behavior. If I log in as soon as I
can after a reboot I get the same behavior as above. If I wait ten seconds before logging in ifconfig reports an IP of
0.0.0.0 for around 15 seconds and then gets a valid IP. If I let the machine sit on the login screen for around 30
seconds before I log in everything is fine.
Also on a side note, I left the machine on last night and when I came in today io-pkt-v4-hc was alternating between the
cores about once a second taking 100% CPU time. I was unable to slay io-pkt-v4-hc and reset the machine with a shutdown
command.
Anyone have any ideas?
|
|
|
Andrew Boyd(deleted)
|
RE: dhcp.client startup trouble
|
Andrew Boyd(deleted)
01/30/2009 8:57 AM
post21046
|
RE: dhcp.client startup trouble
This is really weird. Another customer just reported
a very similar problem with the rtl8169 driver and
dhcp - as best as we can figure out, with some switches
the rtl8169 was taking a long time to successfully
auto-negotiate the link, and dhcp.client was impatiently
timing out before the link came up, and backing off
excessively with it's exponential timeout.
There are two ways to go at the problem: try to diagnose
the driver - to see if there are any obvious errors which
can be address - to speed up the link-up, or to relax the
dhcp.client timeout.
--
aboyd
|
|
|
Weijie Zhang(deleted)
|
RE: dhcp.client startup trouble
|
Weijie Zhang(deleted)
01/30/2009 10:09 AM
post21056
|
RE: dhcp.client startup trouble
It looks like two issues there. The first one, that is, the failure of
dhcp.client, sounds like a timing issue. There is a possibility that
when the driver is not ready yet, applications (e.g. ifconfig,
dhcp.client etc) can see the interface. So if the application attempts
to configure the interface during the time slice, it will fail. Although
the time window is very small, the chance is there. What the sloginfo
says? (If it is the case, it will leave a trace in the slogger). The
second one is that the io-pkt is consuming all cpus. Can you still ping
your box at the time? What pidin irq says? Are there any other
applications sharing the line with io-pkt? If yes and one of them is
related to graphics, you may create an empty file
"/etc/system/config/nophoton" so next time when you logon, you will be
in text mode instead of photon.
Thanks
Weijie
-----Original Message-----
From: James Puckett [mailto:community-noreply@qnx.com]
Sent: January 29, 2009 6:31 PM
To: general-networking
Subject: dhcp.client startup trouble
I'm running 6.4.0 on a Gigabyte G31M-ES2L motherboard (which uses the
RTL 8111C LAN chip) and a dual core CPU.
I have the network mode in net.cfg set to dhcp but on a reboot
dhcp.client is not started. I added it to rc.local but it doesn't work
correctly. dhcp.client is started and running when I log in but
ifconfig doesn't show an IP address (not even 0.0.0.0). If at that
point I reconfigure the network via phlip, the initial instance of
dhcp.client is killed, a new one is started, and I get a valid IP
address. It will also start working if I manually restart dhcp.client.
However, if I invoke dhcp.client in .profile for the root account I get
different behavior. If I log in as soon as I can after a reboot I get
the same behavior as above. If I wait ten seconds before logging in
ifconfig reports an IP of 0.0.0.0 for around 15 seconds and then gets a
valid IP. If I let the machine sit on the login screen for around 30
seconds before I log in everything is fine.
Also on a side note, I left the machine on last night and when I came in
today io-pkt-v4-hc was alternating between the cores about once a second
taking 100% CPU time. I was unable to slay io-pkt-v4-hc and reset the
machine with a shutdown command.
Anyone have any ideas?
_______________________________________________
General
http://community.qnx.com/sf/go/post21030
|
|
|
Robert Craig
|
RE: dhcp.client startup trouble
|
Robert Craig
01/30/2009 10:51 AM
post21072
|
RE: dhcp.client startup trouble
I think that what's happening is that your network card is taking too
long to auto-negotiate the link. This results in dhcp.client (which is
started with the -T10 option by netmanager) to time out and exit with an
error. Unfortunately, this timeout value is hard-coded in netmanager.c
(look at the do_dhcp function). I'm not sure about increasing this
value in the product. While netmanager is waiting for dhcp.client to
complete, the booting process stops, so if your network card doesn't
work, this results in an extra 10 seconds for the boot process to
complete. (Of course, you can always come back with "but without a
network connection, I can't do anything anyway, but that's another issue
:>).
Here's a custom x86 build of netmanager that has that timeout increased
to 20 seconds to try out. (Backup and then replace /bin/netmanager).
Let me know if that works out for you.
Robert.
-----Original Message-----
From: James Puckett [mailto:community-noreply@qnx.com]
Sent: Thursday, January 29, 2009 6:31 PM
To: general-networking
Subject: dhcp.client startup trouble
I'm running 6.4.0 on a Gigabyte G31M-ES2L motherboard (which uses the
RTL 8111C LAN chip) and a dual core CPU.
I have the network mode in net.cfg set to dhcp but on a reboot
dhcp.client is not started. I added it to rc.local but it doesn't work
correctly. dhcp.client is started and running when I log in but
ifconfig doesn't show an IP address (not even 0.0.0.0). If at that
point I reconfigure the network via phlip, the initial instance of
dhcp.client is killed, a new one is started, and I get a valid IP
address. It will also start working if I manually restart dhcp.client.
However, if I invoke dhcp.client in .profile for the root account I get
different behavior. If I log in as soon as I can after a reboot I get
the same behavior as above. If I wait ten seconds before logging in
ifconfig reports an IP of 0.0.0.0 for around 15 seconds and then gets a
valid IP. If I let the machine sit on the login screen for around 30
seconds before I log in everything is fine.
Also on a side note, I left the machine on last night and when I came in
today io-pkt-v4-hc was alternating between the cores about once a second
taking 100% CPU time. I was unable to slay io-pkt-v4-hc and reset the
machine with a shutdown command.
Anyone have any ideas?
_______________________________________________
General
http://community.qnx.com/sf/go/post21030
|
|
|
Mario Charest
|
RE: dhcp.client startup trouble
|
Mario Charest
01/30/2009 11:01 AM
post21077
|
RE: dhcp.client startup trouble
The cisco switches we're using take 30 seconds to auto-negotiate the link...
> -----Original Message-----
> From: Robert Craig [mailto:community-noreply@qnx.com]
> Sent: January-30-09 10:51 AM
> To: general-networking
> Subject: RE: dhcp.client startup trouble
>
> I think that what's happening is that your network card is taking too
> long to auto-negotiate the link. This results in dhcp.client (which is
> started with the -T10 option by netmanager) to time out and exit with
> an error. Unfortunately, this timeout value is hard-coded in
> netmanager.c (look at the do_dhcp function). I'm not sure about
> increasing this value in the product. While netmanager is waiting for
> dhcp.client to complete, the booting process stops, so if your network
> card doesn't work, this results in an extra 10 seconds for the boot
> process to complete. (Of course, you can always come back with "but
> without a network connection, I can't do anything anyway, but that's
> another issue :>).
>
> Here's a custom x86 build of netmanager that has that timeout increased
> to 20 seconds to try out. (Backup and then replace /bin/netmanager).
> Let me know if that works out for you.
>
> Robert.
>
> -----Original Message-----
> From: James Puckett [mailto:community-noreply@qnx.com]
> Sent: Thursday, January 29, 2009 6:31 PM
> To: general-networking
> Subject: dhcp.client startup trouble
>
> I'm running 6.4.0 on a Gigabyte G31M-ES2L motherboard (which uses the
> RTL 8111C LAN chip) and a dual core CPU.
>
> I have the network mode in net.cfg set to dhcp but on a reboot
> dhcp.client is not started. I added it to rc.local but it doesn't work
> correctly. dhcp.client is started and running when I log in but
> ifconfig doesn't show an IP address (not even 0.0.0.0). If at that
> point I reconfigure the network via phlip, the initial instance of
> dhcp.client is killed, a new one is started, and I get a valid IP
> address. It will also start working if I manually restart dhcp.client.
>
> However, if I invoke dhcp.client in .profile for the root account I get
> different behavior. If I log in as soon as I can after a reboot I get
> the same behavior as above. If I wait ten seconds before logging in
> ifconfig reports an IP of 0.0.0.0 for around 15 seconds and then gets a
> valid IP. If I let the machine sit on the login screen for around 30
> seconds before I log in everything is fine.
>
>
> Also on a side note, I left the machine on last night and when I came
> in today io-pkt-v4-hc was alternating between the cores about once a
> second taking 100% CPU time. I was unable to slay io-pkt-v4-hc and
> reset the machine with a shutdown command.
>
> Anyone have any ideas?
>
> _______________________________________________
> General
> http://community.qnx.com/sf/go/post21030
>
>
>
> _______________________________________________
> General
> http://community.qnx.com/sf/go/post21072
|
|
|
Robert Craig
|
RE: dhcp.client startup trouble
|
Robert Craig
01/30/2009 11:11 AM
post21082
|
RE: dhcp.client startup trouble
Let's just say that netmanager is not my favourite utility. In this
particular case, I'd say that if you want to use netmanager (and not
modify the enumerators to launch dhcp.client yourself... Which is
something that is definitely worth considering since it gives you more
control), the best thing to do is to change netmanager to match your
system.
The source is here (look for the do_dhcp function).
http://community.qnx.com/integration/viewcvs/viewcvs.cgi/trunk/utils/n/n
etmanager/netmanager.c?root=core_networking&rev=409&system=exsy1001&view
=markup
As I can tell from this thread, it's unlikely that one setting will work
for everyone :>
Robert.
-----Original Message-----
From: Mario Charest [mailto:community-noreply@qnx.com]
Sent: Friday, January 30, 2009 11:01 AM
To: general-networking
Subject: RE: dhcp.client startup trouble
The cisco switches we're using take 30 seconds to auto-negotiate the
link...
> -----Original Message-----
> From: Robert Craig [mailto:community-noreply@qnx.com]
> Sent: January-30-09 10:51 AM
> To: general-networking
> Subject: RE: dhcp.client startup trouble
>
> I think that what's happening is that your network card is taking too
> long to auto-negotiate the link. This results in dhcp.client (which
> is started with the -T10 option by netmanager) to time out and exit
> with an error. Unfortunately, this timeout value is hard-coded in
> netmanager.c (look at the do_dhcp function). I'm not sure about
> increasing this value in the product. While netmanager is waiting for
> dhcp.client to complete, the booting process stops, so if your network
> card doesn't work, this results in an extra 10 seconds for the boot
> process to complete. (Of course, you can always come back with "but
> without a network connection, I can't do anything anyway, but that's
> another issue :>).
>
> Here's a custom x86 build of netmanager that has that timeout
> increased to 20 seconds to try out. (Backup and then replace
/bin/netmanager).
> Let me know if that works out for you.
>
> Robert.
>
> -----Original Message-----
> From: James Puckett [mailto:community-noreply@qnx.com]
> Sent: Thursday, January 29, 2009 6:31 PM
> To: general-networking
> Subject: dhcp.client startup trouble
>
> I'm running 6.4.0 on a Gigabyte G31M-ES2L motherboard (which uses the
> RTL 8111C LAN chip) and a dual core CPU.
>
> I have the network mode in net.cfg set to dhcp but on a reboot
> dhcp.client is not started. I added it to rc.local but it doesn't
> work correctly. dhcp.client is started and running when I log in but
> ifconfig doesn't show an IP address (not even 0.0.0.0). If at that
> point I reconfigure the network via phlip, the initial instance of
> dhcp.client is killed, a new one is started, and I get a valid IP
> address. It will also start working if I manually restart
dhcp.client.
>
> However, if I invoke dhcp.client in .profile for the root account I
> get different behavior. If I log in as soon as I can after a reboot I
> get the same behavior as above. If I wait ten seconds before logging
> in ifconfig reports an IP of 0.0.0.0 for around 15 seconds and then
> gets a valid IP. If I let the machine sit on the login screen for
> around 30 seconds before I log in everything is fine.
>
>
> Also on a side note, I left the machine on last night and when I came
> in today io-pkt-v4-hc was alternating between the cores about once a
> second taking 100% CPU time. I was unable to slay io-pkt-v4-hc and
> reset the machine with a shutdown command.
>
> Anyone have any ideas?
>
> _______________________________________________
> General
> http://community.qnx.com/sf/go/post21030
>
>
>
>...
|
|
|
James Puckett
|
Re: RE: dhcp.client startup trouble
|
James Puckett
01/30/2009 3:09 PM
post21135
|
Re: RE: dhcp.client startup trouble
I tried the new netmanager, thanks for providing it.
It's still doing the same thing however. When I log in ifconfig reports an IP of 0.0.0.0 for 5-10 seconds then it stops
reporting an IP at all. During the period that ifconfig reports the 0.0.0.0 IP, nicinfo shows that the link is up.
After ifconfig stops reporting any IP I run dhcp.client manually and everything works.
While testing the new netmanager I came across some other strange behavior. About every five reboots I can't get dhcp.
client to work at all. ifconfig shows an ethernet adapter and nicinfo shows that the link is down but the nic does not
show up in the output of pci -vvv. If I kill io-pkt-v4-hc and restart it it won't recognize the nic. I discussed this
with a co-worker and he said that he saw the same behavior on a separate, identically configured machine.
I've attached the output of sloginfo and pci -vvv for both cases.
|
|
|
Robert Craig
|
RE: RE: dhcp.client startup trouble
|
Robert Craig
01/30/2009 3:22 PM
post21139
|
RE: RE: dhcp.client startup trouble
ifconfig will stop reporting an IP if dhcp.client stops running, so
that's still consistent with dhcp.client timing out. Maybe I need to
bump up the timeout even more. Here's another version with a 60 second
timeout. The problem here is that dhcp.client goes into exponential
back off, so if the interface doesn't come up early on, it could take a
much longer time to get assigned an address.
In terms of your other issues, I'd seriously wonder about the hardware.
The fact that the NIC doesn't show up in pci -vvvv is a bad thing. If
the NIC doesn't show up in the PCI server, the stack isn't going to be
able to do much with it. By "reboot" do you mean software reboot or a
power cycle?
R.
-----Original Message-----
From: James Puckett [mailto:community-noreply@qnx.com]
Sent: Friday, January 30, 2009 3:09 PM
To: general-networking
Subject: Re: RE: dhcp.client startup trouble
I tried the new netmanager, thanks for providing it.
It's still doing the same thing however. When I log in ifconfig reports
an IP of 0.0.0.0 for 5-10 seconds then it stops reporting an IP at all.
During the period that ifconfig reports the 0.0.0.0 IP, nicinfo shows
that the link is up. After ifconfig stops reporting any IP I run
dhcp.client manually and everything works.
While testing the new netmanager I came across some other strange
behavior. About every five reboots I can't get dhcp.client to work at
all. ifconfig shows an ethernet adapter and nicinfo shows that the link
is down but the nic does not show up in the output of pci -vvv. If I
kill io-pkt-v4-hc and restart it it won't recognize the nic. I
discussed this with a co-worker and he said that he saw the same
behavior on a separate, identically configured machine.
I've attached the output of sloginfo and pci -vvv for both cases.
_______________________________________________
General
http://community.qnx.com/sf/go/post21135
|
|
|
James Puckett
|
Re: RE: RE: dhcp.client startup trouble
|
James Puckett
01/30/2009 3:24 PM
post21140
|
Re: RE: RE: dhcp.client startup trouble
By reboot I mean executing "shutdown -f"
|
|
|
Robert Craig
|
RE: RE: RE: dhcp.client startup trouble
|
Robert Craig
01/30/2009 3:27 PM
post21141
|
RE: RE: RE: dhcp.client startup trouble
Hmmm... So a soft reboot. There have been occasions when the hardware
seems to be left in some sort of "bad state" by a soft reboot whereas a
full power cycle (or reset) doesn't. I'm not sure what else to say
about that one, but if the PCI server isn't reporting the device, there
may be something that isn't being fully re-configured in the PCI
hardware after a soft reboot.
R.
-----Original Message-----
From: James Puckett [mailto:community-noreply@qnx.com]
Sent: Friday, January 30, 2009 3:24 PM
To: general-networking
Subject: Re: RE: RE: dhcp.client startup trouble
By reboot I mean executing "shutdown -f"
_______________________________________________
General
http://community.qnx.com/sf/go/post21140
|
|
|
James Puckett
|
Re: RE: RE: RE: dhcp.client startup trouble
|
James Puckett
01/30/2009 3:38 PM
post21143
|
Re: RE: RE: RE: dhcp.client startup trouble
The strange thing about this situation is that it appears that io-pkt-v4-hc has successfully started the driver for the
nic. Both ifconfig and nicinfo report valid info for en0 and it is mounted in /dev/io-net.
|
|
|
Robert Craig
|
RE: RE: RE: RE: dhcp.client startup trouble
|
Robert Craig
01/30/2009 3:40 PM
post21144
|
RE: RE: RE: RE: dhcp.client startup trouble
And yet, when you query the PCI server a bit later, the NIC no longer
appears? Now that IS bizarre.
-----Original Message-----
From: James Puckett [mailto:community-noreply@qnx.com]
Sent: Friday, January 30, 2009 3:39 PM
To: general-networking
Subject: Re: RE: RE: RE: dhcp.client startup trouble
The strange thing about this situation is that it appears that
io-pkt-v4-hc has successfully started the driver for the nic. Both
ifconfig and nicinfo report valid info for en0 and it is mounted in
/dev/io-net.
_______________________________________________
General
http://community.qnx.com/sf/go/post21143
|
|
|
Mario Charest
|
RE: RE: RE: RE: dhcp.client startup trouble
|
Mario Charest
01/30/2009 3:43 PM
post21146
|
RE: RE: RE: RE: dhcp.client startup trouble
Maybe there is more then X number of buses in the machine. What if you try pci -n100?
> -----Original Message-----
> From: Robert Craig [mailto:community-noreply@qnx.com]
> Sent: January-30-09 3:41 PM
> To: general-networking
> Subject: RE: RE: RE: RE: dhcp.client startup trouble
>
> And yet, when you query the PCI server a bit later, the NIC no longer
> appears? Now that IS bizarre.
>
>
>
> -----Original Message-----
> From: James Puckett [mailto:community-noreply@qnx.com]
> Sent: Friday, January 30, 2009 3:39 PM
> To: general-networking
> Subject: Re: RE: RE: RE: dhcp.client startup trouble
>
> The strange thing about this situation is that it appears that
> io-pkt-v4-hc has successfully started the driver for the nic. Both
> ifconfig and nicinfo report valid info for en0 and it is mounted in
> /dev/io-net.
>
> _______________________________________________
> General
> http://community.qnx.com/sf/go/post21143
>
>
> _______________________________________________
> General
> http://community.qnx.com/sf/go/post21144
>
|
|
|
James Puckett
|
Re: RE: RE: RE: RE: dhcp.client startup trouble
|
James Puckett
01/30/2009 3:54 PM
post21149
|
Re: RE: RE: RE: RE: dhcp.client startup trouble
pci -n100 -vvv produces the same output as pci -vvv
|
|
|
Andrew Boyd(deleted)
|
RE: RE: RE: RE: dhcp.client startup trouble
|
Andrew Boyd(deleted)
01/30/2009 4:00 PM
post21150
|
RE: RE: RE: RE: dhcp.client startup trouble
> it appears that io-pkt-v4-hc has successfully started
> the driver for the nic.
I think it's fooling you. That's what the other customer
saw - the link was reported up, but no traffic flowed for
a few seconds.
In your sloginfo, qnet started to work 10 seconds after
dhcp.client failed.
This problems seems to be unique to the rtl8169.
--
aboyd
|
|
|
James Puckett
|
Re: RE: RE: RE: RE: dhcp.client startup trouble
|
James Puckett
01/30/2009 4:14 PM
post21153
|
Re: RE: RE: RE: RE: dhcp.client startup trouble
Yes, that could be the case when the NIC shows up in pci -vvv.
In the case when it does not show up in the pci output, if I kill io-pkt-v4-hc and try to restart it, I can't get it to
recognize the NIC at all (even though ifconfig and nicinfo were both showing a NIC before I killed it). It won't work
even when I specify the driver, the vendor id, and the device id:
io-pkt-v4-hc -d rtl8169 did=0x8168 vid=0x10ec
|
|
|
Robert Craig
|
RE: RE: RE: RE: RE: dhcp.client startup trouble
|
Robert Craig
01/30/2009 4:18 PM
post21154
|
RE: RE: RE: RE: RE: dhcp.client startup trouble
Yup. If the NIC doesn't show up using the pci command, then io-pkt will
not be able to recognize it since io-pkt uses the same mechanisms to
find NICs. I'm not sure what's happening to the pci server in between
the "it was there" and the "it is no longer there" stages, but this is a
problem with the PCI server rather than io-pkt...
-----Original Message-----
From: James Puckett [mailto:community-noreply@qnx.com]
Sent: Friday, January 30, 2009 4:14 PM
To: general-networking
Subject: Re: RE: RE: RE: RE: dhcp.client startup trouble
Yes, that could be the case when the NIC shows up in pci -vvv.
In the case when it does not show up in the pci output, if I kill
io-pkt-v4-hc and try to restart it, I can't get it to recognize the NIC
at all (even though ifconfig and nicinfo were both showing a NIC before
I killed it). It won't work even when I specify the driver, the vendor
id, and the device id:
io-pkt-v4-hc -d rtl8169 did=0x8168 vid=0x10ec
_______________________________________________
General
http://community.qnx.com/sf/go/post21153
|
|
|
|