public inbox for ecos-discuss@sourceware.org
 help / color / mirror / Atom feed
From: Jonathan Larmour <jifl@jifvik.org>
To: Laurie Gellatly <laurie.gellatly@netic.com>
Cc: Grant Edwards <grant.b.edwards@gmail.com>,
	   eCos discussion <ecos-discuss@ecos.sourceware.org>
Subject: Re: [ECOS]  Re: connect ethernet cable at run-time
Date: Fri, 25 Sep 2009 13:16:00 -0000	[thread overview]
Message-ID: <4ABCC25B.8000009@jifvik.org> (raw)
In-Reply-To: <C26B0FAB-1266-4AA5-B226-9F225DC81DC3@netic.com>

Laurie Gellatly wrote:
> On 25/09/2009, at 10:11 AM, Jonathan Larmour <jifl@jifvik.org> wrote:
>> Grant Edwards wrote:
>>>
>>> If one calls init_all_network_interfaces() before the Ethernet
>>> link is up does the DHCP code give up and terminate?  IOW,
>>> doesn't the DHCP client code retry if it doesn't get a
>>> response?  That seems a bit odd.
>> I don't believe it does retry at present.
>>
>> See for example in dhcp_prot.c that do_dhcp() calls no_lease(),  
>> whicih disables and deletes the alarm. Without that the  
>> needs_attention semaphore is not posted and the dhcp management  
>> thread gets stuck waiting on it. That's my belief anyway.
>>
> With my project I found some interesting things with DHCP and network  
> cables. If the network cable was unplugged at startup then there is no  
> IP address. I found that I could run out of file handles and that  
> DHCPinit call would never return even if the cable was later inserted.  
> I had to work around that and then regularly call  
> init_all_network_interfaces in the main TCP listening task just after  
> it also fed the watchdog if the IP address was 0.0.0.0.
> Switching in and out of DHCP or static addressing was also coded.

I think it would be hard to shield the DHCP code from insufficient file 
handles. But yes that does confirm that an unplugged cable at startup 
means no IP address unless the user calls init_all_network_interfaces again.

In this respect, the DHCP code wants improvement.

Jifl
-- 
--["No sense being pessimistic, it wouldn't work anyway"]-- Opinions==mine

-- 
Before posting, please read the FAQ: http://ecos.sourceware.org/fom/ecos
and search the list archive: http://ecos.sourceware.org/ml/ecos-discuss

  parent reply	other threads:[~2009-09-25 13:16 UTC|newest]

Thread overview: 15+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2009-09-24 10:34 [ECOS] " Lars Dahlin
2009-09-24 11:45 ` Edgar Grimberg
2009-09-24 14:42 ` [ECOS] " Grant Edwards
2009-09-24 16:26   ` Jonathan Larmour
2009-09-24 16:32     ` Grant Edwards
2009-09-25  0:11       ` Jonathan Larmour
2009-09-25  1:23         ` Laurie Gellatly
2009-09-25  3:20           ` Grant Edwards
2009-09-25  3:36             ` Laurie Gellatly
2009-09-25 13:16           ` Jonathan Larmour [this message]
2009-09-25 14:54             ` Grant Edwards
2009-09-26  8:12               ` [ECOS] Re: connect Ethernet " Laurie Gellatly
     [not found]               ` <26548.8079087392$1253952764@news.gmane.org>
2009-09-26 15:11                 ` Grant Edwards
2009-09-27 22:06               ` [ECOS] Re: connect ethernet " Jonathan Larmour
2009-09-25  3:12         ` Grant Edwards

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=4ABCC25B.8000009@jifvik.org \
    --to=jifl@jifvik.org \
    --cc=ecos-discuss@ecos.sourceware.org \
    --cc=grant.b.edwards@gmail.com \
    --cc=laurie.gellatly@netic.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).