This is the mail archive of the
ecos-discuss@sources.redhat.com
mailing list for the eCos project.
Fw: select err in ecos application
- To: <ecos-discuss at sources dot redhat dot com>
- Subject: [ECOS] Fw: [ECOS] select err in ecos application
- From: "wangwei" <wangw at start dot com dot cn>
- Date: Mon, 9 Jul 2001 09:24:34 +0800
and I had notice the changelog of kernel in cvs:
* src/common/thread.cxx (Cyg_Thread::Cyg_Thread): Initialize
wakeup_count
Does this change has some relative with this problem?
Best regard
wangwei
----- Original Message -----
From: "wangwei" <wangw@start.com.cn>
To: <ecos-discuss@sources.redhat.com>
Sent: Sunday, July 08, 2001 4:55 PM
Subject: [ECOS] select err in ecos application
> Hi all:
>
> I'm making a application in ecos , which will drive 8 serial ports and
> tcp/ip.
> I use function "select" in my program .To improve speed , I use ISR of
> serial port
> to receive data , not DSR. So the functon "cyg_selwakeup" is called in ISR
.
>
> It runs normally at begining . A while later, the thread of application
is
> blocked,
> maybe in select function and the program cann't get any data of serial
port
> from then on.
>
> At that time ,the ISR of serial port is still working perfectly.
> In gdb , I use another thread to break in, and use command "info thread"
to
> look at the state of all thread , the thread of serial application is
ready
> .But it doesn't work really.
>
> By the way , I had use the function "cyg_drv_isr_lock" instead of
> "cyg_drv_dsr_lock" in function "serial_read".
>
> Who can give me some advice .
> Thanks.
>