public inbox for ecos-discuss@sourceware.org
 help / color / mirror / Atom feed
* [ECOS] Net BSD network stack posix tasks -
@ 2007-05-29 17:11 Alok Singh
  2007-05-29 17:20 ` Gary Thomas
                   ` (2 more replies)
  0 siblings, 3 replies; 11+ messages in thread
From: Alok Singh @ 2007-05-29 17:11 UTC (permalink / raw)
  To: ecos-discuss

Hi,
I don't understand licensing issues much. I've a question. Am I allowed
to convert network stack threads to posix threads instead of native cyg
threads?   I've compatibility issues making ecos network stack work with
my application (Posix based.) Though there are ways to overcome this
issue, but they affect the performance of the system.


regards,
Alok


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

^ permalink raw reply	[flat|nested] 11+ messages in thread

* Re: [ECOS] Net BSD network stack posix tasks -
  2007-05-29 17:11 [ECOS] Net BSD network stack posix tasks - Alok Singh
@ 2007-05-29 17:20 ` Gary Thomas
  2007-05-29 17:26 ` Robin Randhawa
  2007-05-30  0:00 ` Nick Garnett
  2 siblings, 0 replies; 11+ messages in thread
From: Gary Thomas @ 2007-05-29 17:20 UTC (permalink / raw)
  To: Alok Singh; +Cc: ecos-discuss

-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

Alok Singh wrote:
> Hi,
> I don't understand licensing issues much. I've a question. Am I allowed
> to convert network stack threads to posix threads instead of native cyg
> threads?   I've compatibility issues making ecos network stack work with
> my application (Posix based.) Though there are ways to overcome this
> issue, but they affect the performance of the system.

What are your compatibility issues?  I doubt that changing the
network threads is going to have any effect, since POSIX threads
are eCos threads underneath.

- --
- ------------------------------------------------------------
Gary Thomas                 |  Consulting for the
MLB Associates              |    Embedded world
- ------------------------------------------------------------
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.7 (GNU/Linux)
Comment: Using GnuPG with Fedora - http://enigmail.mozdev.org

iD8DBQFGXF+gmaKbSsQGV8ARAqFkAKCgpXg0usJQ+Jifo5Gxj/frHhcijwCcDO4g
OW7vj95E4bYK8EXCgeAu+ao=
=mDsq
-----END PGP SIGNATURE-----

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

^ permalink raw reply	[flat|nested] 11+ messages in thread

* Re: [ECOS] Net BSD network stack posix tasks -
  2007-05-29 17:11 [ECOS] Net BSD network stack posix tasks - Alok Singh
  2007-05-29 17:20 ` Gary Thomas
@ 2007-05-29 17:26 ` Robin Randhawa
  2007-05-30  0:00 ` Nick Garnett
  2 siblings, 0 replies; 11+ messages in thread
From: Robin Randhawa @ 2007-05-29 17:26 UTC (permalink / raw)
  To: Alok Singh; +Cc: ecos-discuss

Greetings.

Your description is quite puzzling. 

POSIX threads in eCos have nothing to do with the network stack, not
directly at least. The POSIX functionality is essentially a carefully
crafted set of wrappers over the basic eCos threading architecture.

Think of the networking stack as a state machine implementation borrowed
from a BSD derivative and driven using native eCos threads running under
the eCos kernel.

Now you can take a POSIX application and via the POSIX "wrapper" link
the application to the networking stack and the kernel.

My humble and pointed suggestion : RTFM.
eCos has abundant documentation that sheds light on these concepts.

Cheerio!
Robin

On Tue, 2007-05-29 at 22:35 +0530, Alok Singh wrote:
> Hi,
> I don't understand licensing issues much. I've a question. Am I allowed
> to convert network stack threads to posix threads instead of native cyg
> threads?   I've compatibility issues making ecos network stack work with
> my application (Posix based.) Though there are ways to overcome this
> issue, but they affect the performance of the system.
> 
> 
> regards,
> Alok
> 
> 


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

^ permalink raw reply	[flat|nested] 11+ messages in thread

* Re: [ECOS] Net BSD network stack posix tasks -
  2007-05-29 17:11 [ECOS] Net BSD network stack posix tasks - Alok Singh
  2007-05-29 17:20 ` Gary Thomas
  2007-05-29 17:26 ` Robin Randhawa
@ 2007-05-30  0:00 ` Nick Garnett
  2007-05-30 11:59   ` Alok Singh
  2 siblings, 1 reply; 11+ messages in thread
From: Nick Garnett @ 2007-05-30  0:00 UTC (permalink / raw)
  To: Alok Singh; +Cc: ecos-discuss

"Alok Singh" <aloks@broadcom.com> writes:

> Hi,
> I don't understand licensing issues much. I've a question. Am I allowed
> to convert network stack threads to posix threads instead of native cyg
> threads?   I've compatibility issues making ecos network stack work with
> my application (Posix based.) Though there are ways to overcome this
> issue, but they affect the performance of the system.

(I'm not sure why this has anything to do with licensing.)

The network threads are internal to the stack. POSIX threads are for
running application code. The network threads will never run
application code and so don't need to be POSIX threads. The network
threads work perfectly well alongside POSIX applications without
needing to be POSIX threads themselves.

I don't know what problems you are having, but your suggestion is
almost certainly the wrong solution. It sounds to me like you are
trying to do something that eCos doesn't support. Tell us what the
problem is and maybe someone can offer a better solution.


-- 
Nick Garnett                                     eCos Kernel Architect
eCosCentric Limited     http://www.eCosCentric.com/   The eCos experts
Barnwell House, Barnwell Drive, Cambridge, UK.    Tel: +44 1223 245571
Registered in England and Wales: Reg No 4422071.


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

^ permalink raw reply	[flat|nested] 11+ messages in thread

* RE: [ECOS] Net BSD network stack posix tasks -
  2007-05-30  0:00 ` Nick Garnett
@ 2007-05-30 11:59   ` Alok Singh
  2007-05-30 13:07     ` Gary Thomas
  0 siblings, 1 reply; 11+ messages in thread
From: Alok Singh @ 2007-05-30 11:59 UTC (permalink / raw)
  To: Nick Garnett; +Cc: ecos-discuss

Thanks for all the suggestions. My only issue is, and a simple one, that
if I want to send a packet out of the device in the network thread
context, then I've problems. We have our implementation of message
queues, mutexes, and other stuff that all use POSIX calls. So the code
crashes, since I'm trying to make posix calls (while putting the packet
in the message queue, and using mutexes), in the context of native cyg
thread context. To overcome this problem, I'm queuing the packet coming
out of the network stack, and then another posix thread de-queues the
packet, and sends it out. This is working fine except that performance
is not that good, and some fine tuning is required. In the limited
testing I did while sending the packet out in the context of network
thread, the performance is better, and suits my purpose.

There is no issue with BSD stack. It runs perfectly fine.  

regards,
Alok

-----Original Message-----
From: ecos-discuss-owner@ecos.sourceware.org
[mailto:ecos-discuss-owner@ecos.sourceware.org] On Behalf Of Nick
Garnett
Sent: Tuesday, May 29, 2007 10:56 PM
To: Alok Singh
Cc: ecos-discuss@ecos.sourceware.org
Subject: Re: [ECOS] Net BSD network stack posix tasks -

"Alok Singh" <aloks@broadcom.com> writes:

> Hi,
> I don't understand licensing issues much. I've a question. Am I
allowed
> to convert network stack threads to posix threads instead of native
cyg
> threads?   I've compatibility issues making ecos network stack work
with
> my application (Posix based.) Though there are ways to overcome this
> issue, but they affect the performance of the system.

(I'm not sure why this has anything to do with licensing.)

The network threads are internal to the stack. POSIX threads are for
running application code. The network threads will never run
application code and so don't need to be POSIX threads. The network
threads work perfectly well alongside POSIX applications without
needing to be POSIX threads themselves.

I don't know what problems you are having, but your suggestion is
almost certainly the wrong solution. It sounds to me like you are
trying to do something that eCos doesn't support. Tell us what the
problem is and maybe someone can offer a better solution.


-- 
Nick Garnett                                     eCos Kernel Architect
eCosCentric Limited     http://www.eCosCentric.com/   The eCos experts
Barnwell House, Barnwell Drive, Cambridge, UK.    Tel: +44 1223 245571
Registered in England and Wales: Reg No 4422071.


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




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

^ permalink raw reply	[flat|nested] 11+ messages in thread

* Re: [ECOS] Net BSD network stack posix tasks -
  2007-05-30 11:59   ` Alok Singh
@ 2007-05-30 13:07     ` Gary Thomas
  2007-05-30 15:42       ` Alok Singh
  0 siblings, 1 reply; 11+ messages in thread
From: Gary Thomas @ 2007-05-30 13:07 UTC (permalink / raw)
  To: Alok Singh; +Cc: ecos-discuss

-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

Alok Singh wrote:
> Thanks for all the suggestions. My only issue is, and a simple one, that
> if I want to send a packet out of the device in the network thread
> context, then I've problems. We have our implementation of message
> queues, mutexes, and other stuff that all use POSIX calls. So the code
> crashes, since I'm trying to make posix calls (while putting the packet
> in the message queue, and using mutexes), in the context of native cyg
> thread context. To overcome this problem, I'm queuing the packet coming
> out of the network stack, and then another posix thread de-queues the
> packet, and sends it out. This is working fine except that performance
> is not that good, and some fine tuning is required. In the limited
> testing I did while sending the packet out in the context of network
> thread, the performance is better, and suits my purpose.

Sorry, but this description doesn't make a lot of sense (to me at least).
There should be no difference doing network I/O from a POSIX thread and
a native eCos thread.  Everything should boil down to socket I/O, which
is the API exported by the network stacks.

Perhaps you can explain in more detail, or provide some code snippets.
What do you mean by "send a packet out of the device in the network thread
context?"

> 
> There is no issue with BSD stack. It runs perfectly fine.  
> 
> regards,
> Alok
> 
> -----Original Message-----
> From: ecos-discuss-owner@ecos.sourceware.org
> [mailto:ecos-discuss-owner@ecos.sourceware.org] On Behalf Of Nick
> Garnett
> Sent: Tuesday, May 29, 2007 10:56 PM
> To: Alok Singh
> Cc: ecos-discuss@ecos.sourceware.org
> Subject: Re: [ECOS] Net BSD network stack posix tasks -
> 
> "Alok Singh" <aloks@broadcom.com> writes:
> 
>> Hi,
>> I don't understand licensing issues much. I've a question. Am I
> allowed
>> to convert network stack threads to posix threads instead of native
> cyg
>> threads?   I've compatibility issues making ecos network stack work
> with
>> my application (Posix based.) Though there are ways to overcome this
>> issue, but they affect the performance of the system.
> 
> (I'm not sure why this has anything to do with licensing.)
> 
> The network threads are internal to the stack. POSIX threads are for
> running application code. The network threads will never run
> application code and so don't need to be POSIX threads. The network
> threads work perfectly well alongside POSIX applications without
> needing to be POSIX threads themselves.
> 
> I don't know what problems you are having, but your suggestion is
> almost certainly the wrong solution. It sounds to me like you are
> trying to do something that eCos doesn't support. Tell us what the
> problem is and maybe someone can offer a better solution.
> 
> 


- --
- ------------------------------------------------------------
Gary Thomas                 |  Consulting for the
MLB Associates              |    Embedded world
- ------------------------------------------------------------
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.7 (GNU/Linux)
Comment: Using GnuPG with Fedora - http://enigmail.mozdev.org

iD8DBQFGXWckmaKbSsQGV8ARAr3GAKCCnOVJk6HLJcYN9wLLJSVzJLAOlgCgqeUN
+tgYjbY2PUR/MndJIzNO3GM=
=K/bm
-----END PGP SIGNATURE-----

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

^ permalink raw reply	[flat|nested] 11+ messages in thread

* RE: [ECOS] Net BSD network stack posix tasks -
  2007-05-30 13:07     ` Gary Thomas
@ 2007-05-30 15:42       ` Alok Singh
  2007-05-30 15:56         ` Gary Thomas
  0 siblings, 1 reply; 11+ messages in thread
From: Alok Singh @ 2007-05-30 15:42 UTC (permalink / raw)
  To: Gary Thomas; +Cc: ecos-discuss

Gary,
    To give an example, I'm required to make a posix call in the
end_send function below. end_send will be called by the network stack to
send the out to Ethernet driver( layers below network layer to be
precise).  What will be happen in this case? Wouldn't the system crash
because of it??

ETH_DRV_SC(end_sc0,
    &end0_priv_data,    // Driver specific data
    ETH_NAME,           // Name for this interface
    end_start,
    end_stop,
    end_ioctl,
    end_can_send,
    end_send,
    end_recv,
    end_deliver,      
    end_poll,
    end_int_vector);

NETDEVTAB_ENTRY(end_netdev0,
    "device_end0",
    end_drv_init,
    &end_sc0);


*****************
end_send()
{
-------------------------------
  pthread_cleanup_push();
----------------------------

}


regards,
Alok

-----Original Message-----
From: Gary Thomas [mailto:gary@mlbassoc.com] 
Sent: Wednesday, May 30, 2007 5:30 PM
To: Alok Singh
Cc: ecos-discuss@ecos.sourceware.org
Subject: Re: [ECOS] Net BSD network stack posix tasks -

-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

Alok Singh wrote:
> Thanks for all the suggestions. My only issue is, and a simple one,
that
> if I want to send a packet out of the device in the network thread
> context, then I've problems. We have our implementation of message
> queues, mutexes, and other stuff that all use POSIX calls. So the code
> crashes, since I'm trying to make posix calls (while putting the
packet
> in the message queue, and using mutexes), in the context of native cyg
> thread context. To overcome this problem, I'm queuing the packet
coming
> out of the network stack, and then another posix thread de-queues the
> packet, and sends it out. This is working fine except that performance
> is not that good, and some fine tuning is required. In the limited
> testing I did while sending the packet out in the context of network
> thread, the performance is better, and suits my purpose.

Sorry, but this description doesn't make a lot of sense (to me at
least).
There should be no difference doing network I/O from a POSIX thread and
a native eCos thread.  Everything should boil down to socket I/O, which
is the API exported by the network stacks.

Perhaps you can explain in more detail, or provide some code snippets.
What do you mean by "send a packet out of the device in the network
thread
context?"

> 
> There is no issue with BSD stack. It runs perfectly fine.  
> 
> regards,
> Alok
> 
> -----Original Message-----
> From: ecos-discuss-owner@ecos.sourceware.org
> [mailto:ecos-discuss-owner@ecos.sourceware.org] On Behalf Of Nick
> Garnett
> Sent: Tuesday, May 29, 2007 10:56 PM
> To: Alok Singh
> Cc: ecos-discuss@ecos.sourceware.org
> Subject: Re: [ECOS] Net BSD network stack posix tasks -
> 
> "Alok Singh" <aloks@broadcom.com> writes:
> 
>> Hi,
>> I don't understand licensing issues much. I've a question. Am I
> allowed
>> to convert network stack threads to posix threads instead of native
> cyg
>> threads?   I've compatibility issues making ecos network stack work
> with
>> my application (Posix based.) Though there are ways to overcome this
>> issue, but they affect the performance of the system.
> 
> (I'm not sure why this has anything to do with licensing.)
> 
> The network threads are internal to the stack. POSIX threads are for
> running application code. The network threads will never run
> application code and so don't need to be POSIX threads. The network
> threads work perfectly well alongside POSIX applications without
> needing to be POSIX threads themselves.
> 
> I don't know what problems you are having, but your suggestion is
> almost certainly the wrong solution. It sounds to me like you are
> trying to do something that eCos doesn't support. Tell us what the
> problem is and maybe someone can offer a better solution.
> 
> 


- --
- ------------------------------------------------------------
Gary Thomas                 |  Consulting for the
MLB Associates              |    Embedded world
- ------------------------------------------------------------
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.7 (GNU/Linux)
Comment: Using GnuPG with Fedora - http://enigmail.mozdev.org

iD8DBQFGXWckmaKbSsQGV8ARAr3GAKCCnOVJk6HLJcYN9wLLJSVzJLAOlgCgqeUN
+tgYjbY2PUR/MndJIzNO3GM=
=K/bm
-----END PGP SIGNATURE-----



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

^ permalink raw reply	[flat|nested] 11+ messages in thread

* Re: [ECOS] Net BSD network stack posix tasks -
  2007-05-30 15:42       ` Alok Singh
@ 2007-05-30 15:56         ` Gary Thomas
  2007-05-30 16:33           ` Andrew Lunn
  0 siblings, 1 reply; 11+ messages in thread
From: Gary Thomas @ 2007-05-30 15:56 UTC (permalink / raw)
  To: Alok Singh; +Cc: ecos-discuss

-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

Alok Singh wrote:
> Gary,
>     To give an example, I'm required to make a posix call in the
> end_send function below. end_send will be called by the network stack to
> send the out to Ethernet driver( layers below network layer to be
> precise).  What will be happen in this case? Wouldn't the system crash
> because of it??

Why would you be calling some POSIX function from this code?  That's
most certainly not right (and is a layering violation).  What are you
trying to accomplish that the standard stack and I/O functions (e.g.
select) cannot provide?

> 
> ETH_DRV_SC(end_sc0,
>     &end0_priv_data,    // Driver specific data
>     ETH_NAME,           // Name for this interface
>     end_start,
>     end_stop,
>     end_ioctl,
>     end_can_send,
>     end_send,
>     end_recv,
>     end_deliver,      
>     end_poll,
>     end_int_vector);
> 
> NETDEVTAB_ENTRY(end_netdev0,
>     "device_end0",
>     end_drv_init,
>     &end_sc0);
> 
> 
> *****************
> end_send()
> {
> -------------------------------
>   pthread_cleanup_push();
> ----------------------------
> 
> }
> 
> 
> regards,
> Alok
> 
> -----Original Message-----
> From: Gary Thomas [mailto:gary@mlbassoc.com] 
> Sent: Wednesday, May 30, 2007 5:30 PM
> To: Alok Singh
> Cc: ecos-discuss@ecos.sourceware.org
> Subject: Re: [ECOS] Net BSD network stack posix tasks -
> 
> Alok Singh wrote:
>> Thanks for all the suggestions. My only issue is, and a simple one,
> that
>> if I want to send a packet out of the device in the network thread
>> context, then I've problems. We have our implementation of message
>> queues, mutexes, and other stuff that all use POSIX calls. So the code
>> crashes, since I'm trying to make posix calls (while putting the
> packet
>> in the message queue, and using mutexes), in the context of native cyg
>> thread context. To overcome this problem, I'm queuing the packet
> coming
>> out of the network stack, and then another posix thread de-queues the
>> packet, and sends it out. This is working fine except that performance
>> is not that good, and some fine tuning is required. In the limited
>> testing I did while sending the packet out in the context of network
>> thread, the performance is better, and suits my purpose.
> 
> Sorry, but this description doesn't make a lot of sense (to me at
> least).
> There should be no difference doing network I/O from a POSIX thread and
> a native eCos thread.  Everything should boil down to socket I/O, which
> is the API exported by the network stacks.
> 
> Perhaps you can explain in more detail, or provide some code snippets.
> What do you mean by "send a packet out of the device in the network
> thread
> context?"
> 
>> There is no issue with BSD stack. It runs perfectly fine.  
> 
>> regards,
>> Alok
> 
>> -----Original Message-----
>> From: ecos-discuss-owner@ecos.sourceware.org
>> [mailto:ecos-discuss-owner@ecos.sourceware.org] On Behalf Of Nick
>> Garnett
>> Sent: Tuesday, May 29, 2007 10:56 PM
>> To: Alok Singh
>> Cc: ecos-discuss@ecos.sourceware.org
>> Subject: Re: [ECOS] Net BSD network stack posix tasks -
> 
>> "Alok Singh" <aloks@broadcom.com> writes:
> 
>>> Hi,
>>> I don't understand licensing issues much. I've a question. Am I
>> allowed
>>> to convert network stack threads to posix threads instead of native
>> cyg
>>> threads?   I've compatibility issues making ecos network stack work
>> with
>>> my application (Posix based.) Though there are ways to overcome this
>>> issue, but they affect the performance of the system.
>> (I'm not sure why this has anything to do with licensing.)
> 
>> The network threads are internal to the stack. POSIX threads are for
>> running application code. The network threads will never run
>> application code and so don't need to be POSIX threads. The network
>> threads work perfectly well alongside POSIX applications without
>> needing to be POSIX threads themselves.
> 
>> I don't know what problems you are having, but your suggestion is
>> almost certainly the wrong solution. It sounds to me like you are
>> trying to do something that eCos doesn't support. Tell us what the
>> problem is and maybe someone can offer a better solution.
> 
> 
> 
> 

- --
- ------------------------------------------------------------
Gary Thomas                 |  Consulting for the
MLB Associates              |    Embedded world
- ------------------------------------------------------------
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.7 (GNU/Linux)
Comment: Using GnuPG with Fedora - http://enigmail.mozdev.org

iD8DBQFGXZtbmaKbSsQGV8ARAtyGAJ4rc3vaIGDEDEWNN5VOPOPkN5nLBwCgmd+N
v914Bs1vf3lDuVzapG7iqJk=
=4sqX
-----END PGP SIGNATURE-----

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

^ permalink raw reply	[flat|nested] 11+ messages in thread

* Re: [ECOS] Net BSD network stack posix tasks -
  2007-05-30 15:56         ` Gary Thomas
@ 2007-05-30 16:33           ` Andrew Lunn
  2007-05-30 17:53             ` Alok Singh
  0 siblings, 1 reply; 11+ messages in thread
From: Andrew Lunn @ 2007-05-30 16:33 UTC (permalink / raw)
  To: Gary Thomas; +Cc: Alok Singh, ecos-discuss

On Wed, May 30, 2007 at 09:42:20AM -0600, Gary Thomas wrote:
> -----BEGIN PGP SIGNED MESSAGE-----
> Hash: SHA1
> 
> Alok Singh wrote:
> > Gary,
> >     To give an example, I'm required to make a posix call in the
> > end_send function below. end_send will be called by the network stack to
> > send the out to Ethernet driver( layers below network layer to be
> > precise).  What will be happen in this case? Wouldn't the system crash
> > because of it??
> 
> Why would you be calling some POSIX function from this code?  That's
> most certainly not right (and is a layering violation).  What are you
> trying to accomplish that the standard stack and I/O functions (e.g.
> select) cannot provide?

Im guessing here, but i think there "Ethernet" driver is actually not
an Ethernet driver. It is something a lot more complex and it just
emulates being Ethernet. This is broadcom after all. I guess they have
existing code which used to run in user space on Unix/POSIX and used
TAP/TUN to pass packets to the kernel. They are now trying to push
that code down into "kernel" space of the BSD stack and finding out
why it was a bad idea.

   Andrew

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

^ permalink raw reply	[flat|nested] 11+ messages in thread

* RE: [ECOS] Net BSD network stack posix tasks -
  2007-05-30 16:33           ` Andrew Lunn
@ 2007-05-30 17:53             ` Alok Singh
  2007-05-30 18:14               ` Andrew Lunn
  0 siblings, 1 reply; 11+ messages in thread
From: Alok Singh @ 2007-05-30 17:53 UTC (permalink / raw)
  To: Andrew Lunn, Gary Thomas; +Cc: ecos-discuss

I guess I need to register to the list with some non-official mail id.
:-)

Ok. But My original question remains unanswered.  Am I allowed to
convert the network cyg threads to posix threads, in case I want to do
it??

regards,
Alok

-----Original Message-----
From: ecos-discuss-owner@ecos.sourceware.org
[mailto:ecos-discuss-owner@ecos.sourceware.org] On Behalf Of Andrew Lunn
Sent: Wednesday, May 30, 2007 9:26 PM
To: Gary Thomas
Cc: Alok Singh; ecos-discuss@ecos.sourceware.org
Subject: Re: [ECOS] Net BSD network stack posix tasks -

On Wed, May 30, 2007 at 09:42:20AM -0600, Gary Thomas wrote:
> -----BEGIN PGP SIGNED MESSAGE-----
> Hash: SHA1
> 
> Alok Singh wrote:
> > Gary,
> >     To give an example, I'm required to make a posix call in the
> > end_send function below. end_send will be called by the network
stack to
> > send the out to Ethernet driver( layers below network layer to be
> > precise).  What will be happen in this case? Wouldn't the system
crash
> > because of it??
> 
> Why would you be calling some POSIX function from this code?  That's
> most certainly not right (and is a layering violation).  What are you
> trying to accomplish that the standard stack and I/O functions (e.g.
> select) cannot provide?

Im guessing here, but i think there "Ethernet" driver is actually not
an Ethernet driver. It is something a lot more complex and it just
emulates being Ethernet. This is broadcom after all. I guess they have
existing code which used to run in user space on Unix/POSIX and used
TAP/TUN to pass packets to the kernel. They are now trying to push
that code down into "kernel" space of the BSD stack and finding out
why it was a bad idea.

   Andrew

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




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

^ permalink raw reply	[flat|nested] 11+ messages in thread

* Re: [ECOS] Net BSD network stack posix tasks -
  2007-05-30 17:53             ` Alok Singh
@ 2007-05-30 18:14               ` Andrew Lunn
  0 siblings, 0 replies; 11+ messages in thread
From: Andrew Lunn @ 2007-05-30 18:14 UTC (permalink / raw)
  To: Alok Singh; +Cc: Andrew Lunn, Gary Thomas, ecos-discuss

On Wed, May 30, 2007 at 10:50:33PM +0530, Alok Singh wrote:
> I guess I need to register to the list with some non-official mail id.
> :-)

Why? That piece of information helped me at least understand your
problem. The more we understand the better we can answer. You have
also shown you have taken time to understand the problem, dug around
in the code, and are asking intelligent questions, even if we didn't
understand the question the first time around. I personally don't like
people who hide behind anonymous emails addresses because they don't
want to make there company look bad when they ask stupid questions
with no research. I say use your official email address and be proud
if it.

> Ok. But My original question remains unanswered.  Am I allowed to
> convert the network cyg threads to posix threads, in case I want to do
> it??

The best answer i can give is, i've no idea! Nobody has done it before
that i know off, you are breaking new ground. Try it and see. I don't
know of anything which should stop it working, but i don't use POSIX
threads much...

        Andrew

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

^ permalink raw reply	[flat|nested] 11+ messages in thread

end of thread, other threads:[~2007-05-30 18:04 UTC | newest]

Thread overview: 11+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2007-05-29 17:11 [ECOS] Net BSD network stack posix tasks - Alok Singh
2007-05-29 17:20 ` Gary Thomas
2007-05-29 17:26 ` Robin Randhawa
2007-05-30  0:00 ` Nick Garnett
2007-05-30 11:59   ` Alok Singh
2007-05-30 13:07     ` Gary Thomas
2007-05-30 15:42       ` Alok Singh
2007-05-30 15:56         ` Gary Thomas
2007-05-30 16:33           ` Andrew Lunn
2007-05-30 17:53             ` Alok Singh
2007-05-30 18:14               ` Andrew Lunn

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).