ftp server upload filer error.

jameszxj jameszxj at gmail.com
Tue May 8 05:54:51 UTC 2018


sorry, this problem is nothing to do with libbsd. The rtems/cpukit/ftpd/ftpd.c add a new function yield(),
this function makes the problem.

static void
yield(void)
{
/*
 * If we build not for the legacy network stack, then we use the libbsd.  In
 * the libbsd there is no global network stack semaphore which provides round
 * robin fairness for threads of equal priority.
 */
#ifndef RTEMS_NETWORKING
  yield();
#endif
}

recursive invocation yield() make the function do not return. I use rtems_task_wake_after(0) replace the yield,
ftp server works correctly.



------------------ Original ------------------
From:  "jameszxj"<jameszxj at gmail.com>;
Date:  Fri, May 4, 2018 12:00 PM
To:  "devel"<devel at rtems.org>;

Subject:  ftp server upload filer error.



hi,
 I update libbsd to the github version, and when i upload a file, the upload process failed at the end, and the target shell stuck.
 I disconnect from the ftp client, shell print the msg
          debug: _bsd_sonewconn: pcb 0x15df2000: Listen queue overflow: 2 already in queue awaiting acceptance (1 occurrences)

 The target still respond the ping command.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.rtems.org/pipermail/devel/attachments/20180508/f1e7c6dc/attachment-0002.html>


More information about the devel mailing list