Commit Graph

2294 Commits

Author SHA1 Message Date
Joel Sherrill
8379ada798 Patch from Eric Norum <eric@cls.usask.ca> to address the following problem
report from Philip A. Prindeville <philipp@zembu.com>:

        I was working on a device driver for a certain ethernet chipset that
    occassionally wraps in its buffer, and causes a resulting mbuf chain
    with only a few dozen bytes in the first mbuf of the chain.

        I wouldn't have thought this would be a problem, until I ran some
    stress tests that flooded the ethernet receiver with packets and
    started to get panics here:

       250
       251          if (m->m_pkthdr.len < sizeof(struct ip))
       252                  goto tooshort;
       253
       254  #ifdef  DIAGNOSTIC
       255          if (m->m_len < sizeof(struct ip))
       256                  panic("ipintr mbuf too short");
       257  #endif
       258
       259          if (m->m_len < sizeof (struct ip) &&
       260              (m = m_pullup(m, sizeof (struct ip))) == 0) {
       261                  ipstat.ips_toosmall++;
       262                  return;
       263          }
       264          ip = mtod(m, struct ip *);

    and the panic was at line 256.  But if I #undef'd DIAGNOSTICS,
    then the m_pullup() at line 260 does the right thing and the packet
    ends up being processed just fine.

    So I started wondering, (a) why was the test checking for
    something that apparently wasn't a fatal condition but rather
    one that is subsequently recovered from a couple of lines later
    and (b) why panic as a diagnostic "aid" from a recoverable
    condition rather than just (say) log a message to the console?

    All of this seems overly severe for no reason that is readily
    apparent to me.
1999-10-25 16:09:45 +00:00
Joel Sherrill
b6c868e445 Patch from Charles-Antoine Gauthier <charles.gauthier@iit.nrc.ca>
to initialize the pthread cancellation fields.  This is a patch to
_POSIX_Threads_Create_extension that fixes the problem.
1999-10-25 16:05:34 +00:00
Joel Sherrill
4e69f5b79e Added notes for new test. 1999-10-25 15:55:58 +00:00
Joel Sherrill
3eb75db389 tch from Eric Valette <valette@crf.canon.fr> and Emmanuel Raguet
<raguet@crf.canon.fr> to fix bugs and make the mcp750 boot
RTEMS running the GoAhead web server.
1999-10-25 14:52:19 +00:00
Joel Sherrill
1e57186135 Patch from Eric Valette <valette@crf.canon.fr> and Emmanuel Raguet
<raguet@crf.canon.fr> to use a local variable.
1999-10-25 14:46:56 +00:00
Jennifer Averett
04df848c65 Added code to correctly free any allocated space during the evaluation
process.
1999-10-25 14:23:03 +00:00
Joel Sherrill
1232196a7b Added sp26 which tests the rtems_task_is_suspended directive. 1999-10-25 14:14:07 +00:00
Joel Sherrill
9060699364 Modified to ease comparison of screen to target output. 1999-10-25 14:13:14 +00:00
Joel Sherrill
482960380d Modified to reflect test change where reinitialize mutex test case was
removed.
1999-10-25 14:11:12 +00:00
Joel Sherrill
524767cbfe Removed reinitialize mutex test case to reflect earlier code change in
the executive.
1999-10-25 14:10:38 +00:00
Joel Sherrill
c774a07e88 Changed leading spaces to periods to ease comparing test output. 1999-10-25 14:09:46 +00:00
Joel Sherrill
538db54642 Modified to produce correct output with new version of sis. 1999-10-25 14:09:13 +00:00
Joel Sherrill
61a4d8116a Removed warning. 1999-10-21 19:36:29 +00:00
Joel Sherrill
d013d05f92 Increased stack size of initialization thread. 1999-10-21 16:48:06 +00:00
Joel Sherrill
e7264f070e Added rtems_semaphore_flush directive. 1999-10-21 16:44:24 +00:00
Joel Sherrill
9583f6eacc Renamed CONFIGURE_POSIX_INIT_TASK_STACK_SIZE to
CONFIGURE_POSIX_INIT_THREAD_STACK_SIZE because in POSIX they are threads.
1999-10-21 16:41:59 +00:00
Joel Sherrill
812f440589 Fixed core dump caused when output parameter (otimer) was NULL. 1999-10-21 16:38:49 +00:00
Joel Sherrill
8f2cf93145 Added Semaphore_Flush. 1999-10-21 14:49:24 +00:00
Joel Sherrill
e39431b75f Added prototype for rtems_task_is_suspended at request of
Eric Norum.
1999-10-20 20:33:02 +00:00
Joel Sherrill
a6883c4eb9 Spacing. 1999-10-12 20:22:27 +00:00
Joel Sherrill
51435fc7c5 Split null handlers table to own file and renamed.
Renamed IMFS handler tables to include IMFS prefix.
1999-10-12 19:26:37 +00:00
Joel Sherrill
dd0f32614c Added rtems_filesystem_freenode() macro and added calls at appropriate
places to make sure memory allocated for filesystem specifif nodes
gets freed.
1999-10-12 19:10:46 +00:00
Joel Sherrill
e2116f9003 Fixed spacing. 1999-10-12 19:09:27 +00:00
Joel Sherrill
578a415014 Corrected mistakes in the IMFS file handlers table and added the missing
routine imfs_fcntl.c
1999-10-12 19:08:55 +00:00
Joel Sherrill
d71fcabaa6 Added call to freenod to let each filesystem free its own internal
node used to manage file access.
1999-10-12 18:44:40 +00:00
Joel Sherrill
cb5056b387 Changed bcopy to strncpy to stick to ANSI/ISO routines. 1999-10-12 18:44:05 +00:00
Joel Sherrill
c1b12e6a41 Moved RTEMS error and association from libmisc to libc support to
avoid cyclic dependencies generated when moving packages to the
top level.
1999-10-11 18:31:48 +00:00
Joel Sherrill
aba4025032 Removed targets and configurations that are no longer functional
and not likely to become so.  Comments on each configuration
are below.

  + Force CPU386 - This BSP was developed as part of the initial
    port of RTEMS to the i386.  This board has been unavailable
    for a long time now.

  + GO32 - This BSP and some CPU code supported djgpp v1.x.  This
    version is now quite old.  No one has stepped forward to
    update the code to v2.x which may be technically impossible
    anyway.  More importantly, go32 has been superceded by the pc386 BSP.
1999-10-11 16:12:05 +00:00
Joel Sherrill
87fad5c200 Added as part of moving librdbg to its own top level package. This was
done as part of a patch from Ralf Corsepius <corsepiu@faw.uni-ulm.de>.
1999-10-11 15:39:24 +00:00
Joel Sherrill
45269dc902 Patch from Ralf Corsepius <corsepiu@faw.uni-ulm.de> to move librdbg
to its own top level package.
1999-10-11 15:34:26 +00:00
Joel Sherrill
f58f0b45fc Now compiles for coff and elf. 1999-10-11 15:28:04 +00:00
Joel Sherrill
4a4efb5fde New directive added -- rtems_task_is_suspended. 1999-10-07 16:26:31 +00:00
Joel Sherrill
1e3e81fdb6 Added Is_Suspended method. 1999-10-07 16:17:41 +00:00
Joel Sherrill
4267b4bfd5 Removed targets and configurations that are no longer functional
and not likely to become so.  Comments on each configuration
are below.

  + Force CPU386 - This BSP was developed as part of the initial
    port of RTEMS to the i386.  This board has been unavailable
    for a long time now.

  + GO32 - This BSP and some CPU code supported djgpp v1.x.  This
    version is now quite old.  No one has stepped forward to
    update the code to v2.x which may be technically impossible
    anyway.  More importantly, go32 has been superceded by the pc386 BSP.
1999-10-06 21:15:21 +00:00
Joel Sherrill
ddaa60fd86 New file. 1999-10-06 21:08:14 +00:00
Joel Sherrill
1f350ef94d Removed aclocal.m4 generated from aclocal macros 1999-10-06 20:54:06 +00:00
Joel Sherrill
54eccb1ae9 Removed configure generated from configure.in 1999-10-06 20:52:34 +00:00
Joel Sherrill
1b8212423d Modified to avoid conflicts on definitions of malloc. newlib 1.8.2
now prototypes the malloc family in stdlib.h.  This causes conflicts
with the way the network stack overrides the definitions of malloc.
As best I (being Joel) can tell, commenting stdlib.h out keeps the
files compiling and referencing the desired malloc/free but results
in more warnings.
1999-10-06 20:37:26 +00:00
Joel Sherrill
3adc848dbe Modified to explicitly list all files as part of C_PIECES. 1999-10-06 20:34:55 +00:00
Joel Sherrill
252930563d Corrected build order so it was not as dependent on the mpc750 check. 1999-10-06 18:07:56 +00:00
Joel Sherrill
add0545d82 Added sections as required by C++ and ELF. 1999-10-06 18:05:39 +00:00
Joel Sherrill
01c36de4f2 Added more sections and made minor modifications to let the linkcmds
work with m68k-elf on late model versions of binutils (990901+)
without overlapping or missing section errors.
1999-10-06 18:04:34 +00:00
Joel Sherrill
e01c706bcd Fixed spelling error (FAMILLY --> FAMILY). 1999-10-06 13:41:30 +00:00
Joel Sherrill
235d9e0ed0 Invalid value used for baud rate per bug report from
Jay Kulpinski <jskulpin@eng01.gdds.com>.
1999-10-05 20:59:53 +00:00
Joel Sherrill
7a81160421 Removed ifdef on go32. 1999-10-05 19:21:54 +00:00
Joel Sherrill
8dd127620b Removed go32 ifdefs 1999-10-05 19:21:34 +00:00
Joel Sherrill
8eb0f64e44 Added comment with CVS Id. 1999-10-05 19:21:14 +00:00
Joel Sherrill
25ce07e07d Changed bra.s to bra.l to remove error with new version of binutils. 1999-10-05 19:20:27 +00:00
Joel Sherrill
649bcbc124 Changed bra.s to bra.l to correct compilation error triggered by new
version of binutils.
1999-10-05 19:19:13 +00:00
Joel Sherrill
74f3d8fc92 Corrected so sections did not overlap with new version of binutils. 1999-10-05 19:18:14 +00:00