Commit Graph

1046 Commits

Author SHA1 Message Date
Joel Sherrill
c1cdaa0ce8 Patch from Emmanuel Raguet <raguet@crf.canon.fr> and Eric Valette
<valette@crf.canon.fr> to add a port of the GoAhead web server
(httpd) to the RTEMS build tree.  They have successfully used
this BSP on i386/pc386 and PowerPC/mcp750.

Mark and Joel spoke with Nick Berliner <nickb@goahead.com> on
26 Oct 1999 about this port and got verbal approval to include
it in RTEMS distributions.
1999-10-27 12:50:33 +00:00
Joel Sherrill
79991746da New files created by split of old imfs_handlers.c. 1999-10-26 21:51:20 +00:00
Joel Sherrill
2fe47fff06 Added include of libio.h so this would compile when posix is disabled. 1999-10-26 21:51:07 +00:00
Joel Sherrill
657e1bf66b Added initial cut at miniIMFS which leaves out memfile and directory
readdir support.  The next step is to add a mount table and configure
either the miniIMFS or the full IMFS at the application level.
1999-10-26 20:17:13 +00:00
Joel Sherrill
e54a7d33d2 Patch from Gerwin Pfab <pb@schenk.isar.de> to leave dispatching
disabled on exit to ISR Thread dispatching.  This allows a
context switch to finish under high high interrupt rates.
1999-10-26 16:22:55 +00:00
Joel Sherrill
9a986282df Increased minimum stack size to ensure that there are no problems
running the network stack.
1999-10-26 14:39:57 +00:00
Joel Sherrill
2782e69ff0 idir=/opt/tmp/opt/rtems
rdir=/opt/rtems

cd $idir
find . -type f | while read file
do
  if [ ! -f ${file} ] ; then
     echo ${file} missing
  fi
done
1999-10-26 12:39:24 +00:00
Joel Sherrill
dd04e32a80 Patch from Ralf Corsepius <corsepiu@faw.uni-ulm.de> to move
c/src/lib/libmisc to c/src/libmisc.
1999-10-26 02:58:06 +00:00
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
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
c774a07e88 Changed leading spaces to periods to ease comparing test output. 1999-10-25 14:09:46 +00:00
Joel Sherrill
61a4d8116a Removed warning. 1999-10-21 19:36:29 +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
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
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
4a4efb5fde New directive added -- rtems_task_is_suspended. 1999-10-07 16:26:31 +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
8dd127620b Removed go32 ifdefs 1999-10-05 19:21:34 +00:00
Joel Sherrill
30f7ff91fc 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-05 19:11:57 +00:00
Joel Sherrill
0139484fbd Patch from Wayne Bullaughey <wayne@wmi.com>. Comments follow:
I'm working on code to mount my host based file system on the base file
  system (imfs) and have a suggestion for a change to eval.c in the
  c/src/lib/libc directory of the 8/20/1999 snapshot.  The current version
  does not test the result value returned from the evalpath callback (line 47)
  in the case where follow_link is true.  Attached is my suggested change.
  Without this test the node_type callback may be called after evalpath
  failed.  node_type could set the type to some value other then
  RTEMS_FILESYSTEM_HARD_LINK or RTEMS_FILESYSTEM_SYM_LINK but it seems cleaner
  to add the check on result.
1999-10-05 16:34:20 +00:00
Joel Sherrill
4075af6f55 Regenerated. 1999-10-05 13:49:54 +00:00
Joel Sherrill
d83c39dc36 Bug report and fix from Jay Kulpinski <jskulpin@eng01.gdds.com> where
sigemptyset(&old_mask) needed to be added on glibc2 systems.  Ian
Lance Taylor pointed out that sigemptyset() is portable so Joel removed
all conditionals around calls to sigemptyset().
1999-10-05 13:08:41 +00:00
Joel Sherrill
811804fec8 Patch from Ralf Corsepius <corsepiu@faw.uni-ulm.de> to make fix bug
where wrapup left pieces out of the librtemsall.a.
1999-10-04 19:15:14 +00:00
Joel Sherrill
0efa9f01f8 Patch from Ralf Corsepius <corsepiu@faw.uni-ulm.de> to make fix bug
where wrapup left pieces out of the librtemsall.a.
1999-10-04 18:53:31 +00:00
Joel Sherrill
cc63e08130 Patch from Ralf Corsepius <corsepiu@faw.uni-ulm.de> to make libnetworking
a top level more independently configured package.
1999-10-04 18:40:53 +00:00
Joel Sherrill
5a83ba24bd Patch from Ralf Corsepius <corsepiu@faw.uni-ulm.de>:
The patch below actuallly consists of two patches:
1) moving librpc to c/src/librpc similar to what has been done to librtems++
2) reworked configure scripts, many safety and dependency checks added to
aclocal/*.m4 macros + configuration fixes.

To apply:

mkdir c/src/librpc
mkdir c/src/librpc/src
cp c/src/lib/librpc/*.c c/src/librpc/src
cp c/src/lib/librpc/Makefile.in c/src/librpc/src
mkdir c/src/librpc/include
mkdir c/src/librpc/include/rpc
cp c/src/lib/include/rpc/* c/src/librpc/include/rpc
patch -p1 < ../rtems-rc-19990820-7.diff
rm -rf c/src/lib/librpc
rm -rf c/src/lib/include/rpc
./autogen

The additional checks in aclocal/*m4 macros add rather restrictive, sometimes
unnecessarily restrictive constraints on the sequence of how macros can be
used in a configure.in script. Adding them has let my problems with some more
complicated configuration options vanish. Apparently some macros had not been
in the required order .

----

Now I still get some linking errors for some cpus and bsps, esp when linking
cdtest, but also at other locations:

e.g. this happens for mips64orion/p4600:

# make[5]: Entering directory
`/lfs/poseidon/users/rtems/src/multi/build/mips64orion-rtems/c/p4600/tests/samples/hello'

/opt/rtems/bin/mips64orion-rtems-gcc --pipe -B../../../../../../p4600/lib/
-specs bsp_specs -qrtems -DP4000 -DCPU_R4000 -DP3_DIAG -D_R4000 -D__mips=3
-mcpu=4600 -G0   -I../../../../../../p4600/lib/include/networking  -g -Wall
-ansi -fasm  -O4 -fomit-frame-pointer     -o o-p4600/hello.exe
o-p4600/init.o ../../../../../../p4600/lib/no-dpmem.rel
../../../../../../p4600/lib/no-event.rel
../../../../../../p4600/lib/no-msg.rel ../../../../../../p4600/lib/no-mp.rel
../../../../../../p4600/lib/no-part.rel
../../../../../../p4600/lib/no-signal.rel
../../../../../../p4600/lib/no-timer.rel
../../../../../../p4600/lib/no-rtmon.rel
/opt/rtems/mips64orion-rtems/lib/libc.a(dtoa.o): In function `_dtoa_r':
/opt/hermes/embedded/build/build-mips64orion-tools/mips64orion-rtems/newlib/libc/stdlib/../../../../../src/newlib/libc/stdlib/dtoa.c:348: relocation truncated to fit: R_MIPS_LITERAL no symbol
/opt/hermes/embedded/build/build-mips64orion-tools/mips64orion-rtems/newlib/libc/stdlib/../../../../../src/newlib/libc/stdlib/dtoa.c:348: relocation truncated to fit: R_MIPS_LITERAL no symbol
/opt/hermes/embedded/build/build-mips64orion-tools/mips64orion-rtems/newlib/libc/stdlib/../../../../../src/newlib/libc/stdlib/dtoa.c:348: relocation truncated to fit: R_MIPS_LITERAL no symbol
collect2: ld returned 1 exit status

# mips64orion-rtems-gcc -v
Reading specs from /opt/rtems/lib/gcc-lib/mips64orion-rtems/2.95.1/specs
gcc version 2.95.1 19990816 (release)

# mips64orion-rtems-ld -v
GNU ld version 2.9.5 (with BFD 2.9.5)
1999-10-04 18:33:17 +00:00
Joel Sherrill
b62a92c804 Patch from Ralf Corsepius <corsepiu@faw.uni-ulm.de>:
The patch below actuallly consists of two patches:
1) moving librpc to c/src/librpc similar to what has been done to librtems++
2) reworked configure scripts, many safety and dependency checks added to
aclocal/*.m4 macros + configuration fixes.

To apply:

mkdir c/src/librpc
mkdir c/src/librpc/src
cp c/src/lib/librpc/*.c c/src/librpc/src
cp c/src/lib/librpc/Makefile.in c/src/librpc/src
mkdir c/src/librpc/include
mkdir c/src/librpc/include/rpc
cp c/src/lib/include/rpc/* c/src/librpc/include/rpc
patch -p1 < ../rtems-rc-19990820-7.diff
rm -rf c/src/lib/librpc
rm -rf c/src/lib/include/rpc
./autogen

The additional checks in aclocal/*m4 macros add rather restrictive, sometimes
unnecessarily restrictive constraints on the sequence of how macros can be
used in a configure.in script. Adding them has let my problems with some more
complicated configuration options vanish. Apparently some macros had not been
in the required order .

----

Now I still get some linking errors for some cpus and bsps, esp when linking
cdtest, but also at other locations:

e.g. this happens for mips64orion/p4600:

# make[5]: Entering directory
`/lfs/poseidon/users/rtems/src/multi/build/mips64orion-rtems/c/p4600/tests/samples/hello'

/opt/rtems/bin/mips64orion-rtems-gcc --pipe -B../../../../../../p4600/lib/
-specs bsp_specs -qrtems -DP4000 -DCPU_R4000 -DP3_DIAG -D_R4000 -D__mips=3
-mcpu=4600 -G0   -I../../../../../../p4600/lib/include/networking  -g -Wall
-ansi -fasm  -O4 -fomit-frame-pointer     -o o-p4600/hello.exe
o-p4600/init.o ../../../../../../p4600/lib/no-dpmem.rel
../../../../../../p4600/lib/no-event.rel
../../../../../../p4600/lib/no-msg.rel ../../../../../../p4600/lib/no-mp.rel
../../../../../../p4600/lib/no-part.rel
../../../../../../p4600/lib/no-signal.rel
../../../../../../p4600/lib/no-timer.rel
../../../../../../p4600/lib/no-rtmon.rel
/opt/rtems/mips64orion-rtems/lib/libc.a(dtoa.o): In function `_dtoa_r':
/opt/hermes/embedded/build/build-mips64orion-tools/mips64orion-rtems/newlib/libc/stdlib/../../../../../src/newlib/libc/stdlib/dtoa.c:348: relocation truncated to fit: R_MIPS_LITERAL no symbol
/opt/hermes/embedded/build/build-mips64orion-tools/mips64orion-rtems/newlib/libc/stdlib/../../../../../src/newlib/libc/stdlib/dtoa.c:348: relocation truncated to fit: R_MIPS_LITERAL no symbol
/opt/hermes/embedded/build/build-mips64orion-tools/mips64orion-rtems/newlib/libc/stdlib/../../../../../src/newlib/libc/stdlib/dtoa.c:348: relocation truncated to fit: R_MIPS_LITERAL no symbol
collect2: ld returned 1 exit status

# mips64orion-rtems-gcc -v
Reading specs from /opt/rtems/lib/gcc-lib/mips64orion-rtems/2.95.1/specs
gcc version 2.95.1 19990816 (release)

# mips64orion-rtems-ld -v
GNU ld version 2.9.5 (with BFD 2.9.5)
1999-10-04 18:20:14 +00:00
Joel Sherrill
4f021c01cc Removed Makefile.in generated from Makefile.am 1999-10-04 17:33:23 +00:00
Joel Sherrill
6fca2f5568 Patch from Eric Norum <eric@cls.usask.ca>. Comments follow:
The old system would panic when the loopback interface was included as
    part of the network initialation structures.  With the printf you get an
    message, but the interface is still properly initialized.
1999-10-04 13:51:22 +00:00
Joel Sherrill
473b4e58d0 Regenerated. 1999-10-04 13:30:15 +00:00
Joel Sherrill
3cad291962 Addition of more functionality by Eric Norum to support GNU readline. 1999-10-01 15:55:30 +00:00
Joel Sherrill
a24c2808e5 Applied patch rtems-rc-19990820-6.diff.gz from
Ralf Corsepius <corsepiu@faw.uni-ulm.de> which converted many
Makefile.in's to Makefile.am's.  This added a lot of files.
1999-09-09 21:22:36 +00:00
Joel Sherrill
e1d8abbe28 Applied patch rtems-rc-19990820-6.diff.gz from
Ralf Corsepius <corsepiu@faw.uni-ulm.de> which converted many
Makefile.in's to Makefile.am's.  This added a lot of files.
1999-09-07 13:45:03 +00:00
Joel Sherrill
c935c5f9db Removed by patch rtems-rc-19990820-6.diff.gz from
Ralf Corsepius <corsepiu@faw.uni-ulm.de> which converted many
Makefile.in's to Makefile.am's.
1999-09-07 12:55:28 +00:00
Joel Sherrill
260b0c2155 Patch from Charles-Antoine Gauthier <charles.gauthier@iit.nrc.ca> to add
support for return codes from POSIX threads that do an implicit exit
by returning from the bottom of the main function.
1999-08-30 18:05:48 +00:00
Joel Sherrill
e49d7c3df2 Removed definition of NO_IMPLICIT_EXTERN_C since it is supposed to be
in the compiler not in the header file.
1999-08-30 15:02:20 +00:00