Linux-Development-Sys Digest #408, Volume #8     Thu, 11 Jan 01 12:13:11 EST

Contents:
  Re: glibc-2.2 testing problem (J�rgen Koslowski)
  How to disable L1 cache? (=?ISO-8859-1?Q?Sebasti=E1n=20S=E1nchez?= Prieto)
  Re: Moving processes (Malcolm Cowe)
  Re: glibc-2.2 testing problem (Andreas Jaeger)
  kernelprogramming (Ralf Edrich)
  Re: ppp 2.3.10 fails (LCP Timeout) after installing 2.4.0 kernel. ("Gene Heskett")
  NFS server probs in 2.2.18 AND 2.4.0 ([EMAIL PROTECTED])
  Re: mapping of shareable images ("Rob Eisink")
  realloc crashes with SIGSEGV ([EMAIL PROTECTED])
  Upgrading glibc using rpm (Pete Lachall)
  Re: UNIX98 Pty's ???? ("Morten B�hmer")
  Re: 2.2.18 won't boot diskless (Tom Daley)
  Re: realloc crashes with SIGSEGV (Kasper Dupont)
  Re: realloc crashes with SIGSEGV (Kaz Kylheku)
  Re: Extending /proc filesystem on Solaris 7/8? (Kaelin Colclasure)
  Re: need help fixing a tcp kernel problem (Eric Taylor)
  Re: Kernel 2.4 (bill davidsen)
  Re: In Kernel 2.4 cdrom mount.. (bill davidsen)

----------------------------------------------------------------------------

From: [EMAIL PROTECTED] (J�rgen Koslowski)
Subject: Re: glibc-2.2 testing problem
Date: 11 Jan 2001 10:51:02 GMT

Andreas Jaeger ([EMAIL PROTECTED]) wrote:

: How did you configure glibc?  Which compiler?

:  > I can post a detailed error message, if necessary.
: Please do so.

Compiler: pgcc-2.95.2.1 (patched from gcc-2.95.2)

Configuration (from memory, the problem arose on the machine at home):
--prefix=\usr --enable-add-ons=linuxthreads --disable-profile
--with-headers=/usr/src/linux/include 

I'm using the latest ac kernels, 2.4.0-ac2 resp ac4.  If necessary,
I can make the 2.2 includes available again.  Initially, I tried to
add "crypt" to the add-on list (like for glibc 2.1.3, I believe), but
this resulted in warnings about repeated declarations concerning crypt.

Error message:

...
Testing EUC-CN
Testing GBK
Testing EUC-TW
This might take a while
Testing GB18030
/root/view/src/glibc-build/malloc/mtrace 
/root/view/src/glibc-build/iconvdata/tst-loading.mtrace > 
/root/view/src/glibc-build/iconvdata/mtrace-tst-loading
/bin/sh: /root/view/src/glibc-build/malloc/mtrace: No such file or directory
make[2]: *** [/root/view/src/glibc-build/iconvdata/mtrace-tst-loading] Error 
127make[2]: Leaving directory `/root/view/src/glibc-2.2/iconvdata'
make[1]: *** [iconvdata/tests] Error 2
make[1]: Leaving directory `/root/view/src/glibc-2.2'
make: *** [check] Error 2

As mentined before, the directory malloc has been generated with a 
number of files ending in .d, .o and .os, in particular mtrace.

Cheers,

-- J�rgen

--
J�rgen Koslowski                If I don't see you no more on this world
ITI, TU Braunschweig               I'll meet you on the next one
[EMAIL PROTECTED]               and don't be late!
http://www.iti.cs.tu-bs.de/~koslowj      Jimi Hendrix (Voodoo Child, SR)

------------------------------

From: =?ISO-8859-1?Q?Sebasti=E1n=20S=E1nchez?= Prieto <[EMAIL PROTECTED]>
Subject: How to disable L1 cache?
Date: Thu, 11 Jan 2001 13:01:29 +0100

Hi:

Maybe this is an old question, in that case sorry for the inconvenience. 
I'm trying to disable the L1 cache memory on a PII computer using a 
loadable module. When I install the module with insmod the system always 
hangs. The code I use is as follows:


         .file   "l1off.s"
         .version        "1.00"

         .data
.globl kernel_version
kernel_version:
         .string "2.2.16-22"

         .text
         .align  4
         .globl  init_module
init_module:
         pushfl
         cli
         movl %cr0,%eax
         orl $0x40000000,%eax
         orl $0x20000000,%eax
         movl %eax,%cr0
         wbinvd
         invd
         jmp next_off
next_off:
         popfl
         xorl %eax,%eax
         sti
         ret
         .globl cleanup_module
cleanup_module:
         ret

Any hel would be greatly appreciated.

Thanks in advance.

-- 
Sebasti�n S�nchez Prieto    tel:   +34 91 8856602
Dpto. Autom�tica (ATC)      fax:   +34 91 8856641
E.P. Universidad de Alcal�  email: [EMAIL PROTECTED]
Campus Universitario        www:   http://www.aut.alcala.es:8080/~chan/
28871  MADRID               SPAIN


------------------------------

Date: Thu, 11 Jan 2001 10:48:47 +0000
From: Malcolm Cowe <[EMAIL PROTECTED]>
Crossposted-To: 
comp.os.linux.development.apps,comp.os.linux.networking,comp.unix.programmer
Subject: Re: Moving processes

I guess you could look at a persistent memory mechanism for saving the
state of the application while it is migrated to the new node. If the
process has its data structures mirrored to disk, say, then you could
move both application and data to the new node and restart. I've been
looking at Coldstore (http://coldstore.sourceforge.net/), but don't
really have an application for it (yet). It works by mmapping data from
memory to disk -- you could adapt that mechanism to work with a DBMS as
well, if you do not want to be dependent on Coldstore itself.

Might be interesting, especially in conjunction with a MOSIX-like
cluster.

-- 
Malcolm Cowe.
IT | Information Technology,    eMail: [EMAIL PROTECTED]
Agilent Technologies Ltd.       External: +44 131 331 6466
South Queensferry, EH30 9TG.    Telnet: 313-3466


Robert Hofner wrote:
> 
> Look at the Mosix project.
> 
> Robert
> 
> "Derek M. Flynn" wrote:
> 
> > frederik wrote:
> >
> > > I am currently working on an implementation of a Mobile Agent platform. The
> > > agents run in different processes on several host machines in a network.
> > > The agents and thus the processes have to be movable from one host to
> > > another for load balancing purposes.
> > > Does anybody know wether it is possible to capture the state of a running
> > > process, transfer it to another host and restarting it on the other machine
> > > in the same state as it left the first one
> >
> > Look at the work being done by the Condor project at:
> >
> >   http://www.cs.wisc.edu/condor/
> >
> > In addition, they wrote an article that you might try to find:
> >
> >   "Checkpointing and Migration of UNIX Processes in the Condor Distributed
> >    Processing System" Dr Dobbs Journal, February 1995

------------------------------

From: Andreas Jaeger <[EMAIL PROTECTED]>
Subject: Re: glibc-2.2 testing problem
Date: 11 Jan 2001 13:39:08 +0100

>>>>> J�rgen Koslowski writes:

 > Andreas Jaeger ([EMAIL PROTECTED]) wrote:
 > : How did you configure glibc?  Which compiler?

 > :  > I can post a detailed error message, if necessary.
 > : Please do so.

 > Compiler: pgcc-2.95.2.1 (patched from gcc-2.95.2)
pgcc is broken, don't use it.  You'll have more sucess with gcc
2.95.2.

 > Configuration (from memory, the problem arose on the machine at home):
 > --prefix=\usr --enable-add-ons=linuxthreads --disable-profile
 > --with-headers=/usr/src/linux/include 

 > I'm using the latest ac kernels, 2.4.0-ac2 resp ac4.  If necessary,
 > I can make the 2.2 includes available again.  Initially, I tried to
 > add "crypt" to the add-on list (like for glibc 2.1.3, I believe), but
 > this resulted in warnings about repeated declarations concerning crypt.
Did you RTFM?  crypt is now part of glibc and the add-on is way too
old.

 > Error message:

 > ...
 > Testing EUC-CN
 > Testing GBK
 > Testing EUC-TW
 > This might take a while
 > Testing GB18030
 > /root/view/src/glibc-build/malloc/mtrace 
 >/root/view/src/glibc-build/iconvdata/tst-loading.mtrace > 
 >/root/view/src/glibc-build/iconvdata/mtrace-tst-loading
 > /bin/sh: /root/view/src/glibc-build/malloc/mtrace: No such file or directory
 > make[2]: *** [/root/view/src/glibc-build/iconvdata/mtrace-tst-loading] Error 
 >127make[2]: Leaving directory `/root/view/src/glibc-2.2/iconvdata'
 > make[1]: *** [iconvdata/tests] Error 2
 > make[1]: Leaving directory `/root/view/src/glibc-2.2'
 > make: *** [check] Error 2

This might be a broken make version since there has to be a binary
called mtrace.

 > As mentined before, the directory malloc has been generated with a 
 > number of files ending in .d, .o and .os, in particular mtrace.

Andreas
-- 
 Andreas Jaeger
  SuSE Labs [EMAIL PROTECTED]
   private [EMAIL PROTECTED]
    http://www.suse.de/~aj

------------------------------

From: Ralf Edrich <[EMAIL PROTECTED]>
Subject: kernelprogramming
Date: Thu, 11 Jan 2001 14:07:23 +0100

Hi,

does anyony know, if there is an online(or download)-version of the book
"Linux Kernelprogrammierung"
by Beck / B�hme / Dziadzaka / Kunitz / Magnus / Schr�ter / Verworner ?

tia,

Ralf


------------------------------

Date: 11 Jan 2001 7:56:22 -0500
From: "Gene Heskett" <[EMAIL PROTECTED]>
Subject: Re: ppp 2.3.10 fails (LCP Timeout) after installing 2.4.0 kernel.

Gene Heskett sends Greetings to Clifford Kite;

 CK> Gene Heskett <[EMAIL PROTECTED]> wrote:
>> Gene Heskett sends Greetings to Jerry Peters;

>>  JP> Definitely not my pppd, which came from cs.anu.edu.au. It
>>  expects JP> everything in /etc/ppp. I would suspect a distribution
>>  customized JP> pppd. If the distro has changed the location of the
>>  config files, JP> then the distro should have changed the man
>>  pages accordingly.

>> Jerry, I'd *almost* argue that point, because I'm quite sure I got
>> that tar.gz from the .au site Clifford Kite gave me a few weeks
>> back.  Of course .au is a heck of a lot of square miles, so it
>> might not have been the same site, but it most certainly was an
>> aussie site I got it from.

>> Is that the same site you gave me Clifford?

 CK> No.  The site for the new 2.4.0 pppd source packages, and any
 CK> later 2.4.x pppd that Paul Mackerras generates, is
 CK> linuxcare.com.au. 

Ok, I just checked my archive against that one, and its the same length,
dated Aug 7 on the linuxcare site.  ppp-2.4.0.tar.gz, 546,883 bytes long.

Also, my bad, its the kernel ppp module that checks in near the end of
dmesg with:

PPP generic driver version 2.4.1

Its all built as modules, good grief kernel 2.4.0-ac6 is big!  I had to
modularize a bunch of stuff just to get it to boot.

And you're right, the rpm I got from PLD wasn't anywhere near the same
thing.  Someone might be able to use it, but I spent a couple of weeks
playing with it from time to time with zilch success.

Who, or what, is 'PLD'?

Cheers, Gene
-- 
  Gene Heskett, CET, UHK       |Amiga A2k Zeus040, Linux @ 600mhz 
        email gene underscore heskett at iolinc dot net
#Amiga based X10 home automation program EZHome, see at:#
# <http://www.thirdwave.net/~jimlucia/amigahomeauto> #
ISP's please take note: My spam control policy is explicit!
#Any Class C address# involved in spamming me is added to my killfile
never to be seen again.  Message will be automaticly deleted without dl.
This messages reply content, but not any previously quoted material,
is � 2000 by Gene Heskett, all rights reserved.
-- 


------------------------------

From: [EMAIL PROTECTED]
Subject: NFS server probs in 2.2.18 AND 2.4.0
Date: Thu, 11 Jan 2001 13:27:41 GMT

Ok, here I go:

NFS server support working fine in <2.2.18 as I had several exported
directories to other machines on my lan.
After downloading and compiling 2.2.18 and specifying NFS server
support, I get a "NFS server lockdsvc" error on bootup (if nfsd.o is
compiled in) or "undefined symbols in nfsd.o" if i compile it as a
module.

I had given up on getting it working and changed to using samba shares
instead. Now getting the source for 2.4.0 and all the required util
upgrades I get the SAME errors.

I really need a helping hand here.

John
--
"If you're not scared, then you're not going fast enough"

http://www.btinternet.com/~megatron


Sent via Deja.com
http://www.deja.com/

------------------------------

From: "Rob Eisink" <[EMAIL PROTECTED]>
Subject: Re: mapping of shareable images
Date: Thu, 11 Jan 2001 14:52:14 +0100

Thanks, exactly what I needed!



------------------------------

From: [EMAIL PROTECTED]
Subject: realloc crashes with SIGSEGV
Date: Thu, 11 Jan 2001 13:49:38 GMT

Is there a known problem with realloc in Red Hat 6.2 ?

I get several sucessful calls to malloc and realloc. Then when I malloc
a single byte and subsequently pass the returned address (0x805f460)
into realloc and ask for 36 bytes, I get:

  Program received signal SIGSEGV, Segmentation fault.
  0x40074709 in chunk_alloc (ar_ptr=0x40109d60, nb=40) at malloc.c:2763

This happens when I run the program from the command line or within
gdb, BUT if I switch on the MALLOC_CHECK_=1 environment variable the
program sails straight past the realloc without a problem.

Any ideas?

Colin


Sent via Deja.com
http://www.deja.com/

------------------------------

From: Pete Lachall <[EMAIL PROTECTED]>
Crossposted-To: comp.os.linux.misc,comp.os.linux.setup
Subject: Upgrading glibc using rpm
Date: Thu, 11 Jan 2001 09:43:59 -0500

I'm upgrading glibc from 2.1.1 to 2.1.3 on Redhat 6.2 using the rpm.
After running 'rpm -U xxx.rpm'  I get a bunch of conflicts, all of them
having to do with the 'localedata' package of my current glibc. Any
ideas would be greatly appreciated.

- Pete Lachall


------------------------------

From: "Morten B�hmer" <[EMAIL PROTECTED]>
Subject: Re: UNIX98 Pty's ????
Date: Thu, 11 Jan 2001 16:30:09 +0100

Ok, thanks for the lesson.

I still get an error with kwrited (KDE) when I start X(with KDE)

It seems like kwrited wants to create the file pts/0 but it cannot. Do you
now why this is?

I have managed to get other programs to create files in the pts/ dir.

--
Med vennlig hilsen/Best Regards,
Morten B�hmer - [EMAIL PROTECTED]
AdCo Partner AS
Bjellandveien 14 - 3172 VEAR
[EMAIL PROTECTED]
http://www.veggers.no
"Kasper Dupont" <[EMAIL PROTECTED]> wrote in message
news:[EMAIL PROTECTED]...
> Morten B�hmer wrote:
> >
> > Maybe I havn't explained my problem clear enough, or maybe I have miss
> > understood the whole problem.
> >
> > When running commands like w/who/last and other utils
> > from the util-linux package, shouldn't it show that I'm logged
> > on to tty: pts/[0-9...] ????
>
> How did you logon to the system?
>  (X/console/rlogin/telnet)
> What does w/who/last show you?
> What does the tty command say?
>
> >
> > Should not getty use the ptmx file to get a new tty?
> >
>
> No *getty takes as argument the name of an existing
> tty, that tty is a piece of code in the kernel that
> communicate with external hardware. A pts is used
> when a user space program wants to act as tty. When
> a shell or other program tries to communicate with
> the tty the communication does not go to external
> hardware but through the kernel to the process that
> created the pts. See figure
>
> The situation when /dev/tty* is used.
> +-------+    +------------+    +-----------+
> |       |    +---+        |    | Hardware  |
> | Shell |====|TTY| Kernel |====| eg Screen |
> |       |    +---+        |    | or Serial |
> +-------+    +------------+    +-----------+
>
> The situation when /dev/pts/* is used
> +-------+    +------------+    +-----------+
> |       |    +---+        |    |           |
> | Shell |====|TTY| Kernel |====|   xterm   |
> |       |    +---+        |    |           |
> +-------+    +------------+    +-----------+
>
> --
> Kasper Dupont



------------------------------

From: [EMAIL PROTECTED] (Tom Daley)
Crossposted-To: comp.os.linux.networking
Subject: Re: 2.2.18 won't boot diskless
Date: 11 Jan 2001 15:46:17 GMT

In article <[EMAIL PROTECTED]>,
        Christian Leber <[EMAIL PROTECTED]> writes:
> On 8 Jan 2001 15:03:20 GMT, [EMAIL PROTECTED] (Tom Daley) wrote:
> 
>>I tried to upgrade to 2.2.18 for my diskless Linux systems.
>>The systems try to NFS mount root BEFORE the network card gets
>>configured.
> 
> I think you need the ip= option.
> 

I do use the ip= option.  The problem is that the mount message comes 
up BEFORE I see any BOOTP message on the screen.

Are you able to get 2.2.18 to boot diskless?

-- 
===================================================================
|         o        Tom Daley                                      |
|   ___ </v        Woodland Park, CO                              |
|  ___  -\         [EMAIL PROTECTED]                            |
| ___    /                                         (719) 785-4227 |
|       (*)        Linux!                                         |
===================================================================

------------------------------

From: Kasper Dupont <[EMAIL PROTECTED]>
Subject: Re: realloc crashes with SIGSEGV
Date: Thu, 11 Jan 2001 16:05:55 +0000

[EMAIL PROTECTED] wrote:
> 
> Is there a known problem with realloc in Red Hat 6.2 ?
> 
> I get several sucessful calls to malloc and realloc. Then when I malloc
> a single byte and subsequently pass the returned address (0x805f460)
> into realloc and ask for 36 bytes, I get:
> 
>   Program received signal SIGSEGV, Segmentation fault.
>   0x40074709 in chunk_alloc (ar_ptr=0x40109d60, nb=40) at malloc.c:2763
> 
> This happens when I run the program from the command line or within
> gdb, BUT if I switch on the MALLOC_CHECK_=1 environment variable the
> program sails straight past the realloc without a problem.
> 
> Any ideas?
> 
> Colin
> 
> Sent via Deja.com
> http://www.deja.com/

When malloc, realloc or free causes a SIGSEGV
it is in most cases because you have written
outside an allocated address range and overwritten
some of the memory managements datastructures.

Try using efence it can sometimes make the SIGSEGV
happen where the bug is really located. Add an
-lefence option when linking the program.


-- 
Kasper Dupont

------------------------------

From: [EMAIL PROTECTED] (Kaz Kylheku)
Subject: Re: realloc crashes with SIGSEGV
Reply-To: [EMAIL PROTECTED]
Date: Thu, 11 Jan 2001 16:17:58 GMT

On Thu, 11 Jan 2001 16:05:55 +0000, Kasper Dupont <[EMAIL PROTECTED]> wrote:
>When malloc, realloc or free causes a SIGSEGV
>it is in most cases because you have written
>outside an allocated address range and overwritten
>some of the memory managements datastructures.

And in some cases it is because an indeterminate pointer value was
freed or realloc'ed (such as a pointer to an object that has already
been freed, or to one which did not come from the allocator).

------------------------------

From: Kaelin Colclasure <[EMAIL PROTECTED]>
Crossposted-To: comp.unix.solaris
Subject: Re: Extending /proc filesystem on Solaris 7/8?
Date: 11 Jan 2001 08:50:39 -0800

[EMAIL PROTECTED] (Roger A. Faulkner) writes:

> Kaelin Colclasure  <[EMAIL PROTECTED]> wrote:
[...]
> >This is true -- but the same criticism applies to the binary contents
> >of the Solaris /proc entries, does it not? You may argue that application
> >programs should be linking to libraries instead of reading directly from
> >/proc, and I would agree with you. But how much of /proc is accessible
> >that way today? (Not a rhetorical question -- I honestly don't know.)
> 
> I had been hoping to stay out of this discussion, but you have
> impugned the engineering the Solaris /proc interface and I can't
> let that slide.

Hmmm, I hope it's clear that I started this thread to *learn* about this
stuff on Solaris, not to criticize it. And so far it's been informative.

> The interfaces provided by /proc (documented in proc(4) and
> defined by data structures and constants in <sys/procfs.h>)
> form an Application Binary Interface (ABI) that remains
> compatible from release to release.  An application that uses
> /proc and was compiled for Solaris 2.6 does not need to be
> modified or even recompiled to continue to work the same on
> Solaris 7, Solaris 8, and on into the foreseeable future.
> 
> Since Solaris 2.6, when structured /proc was introduced
> (multiple files under each /proc/<pid> directory rather than
> the old ioctl()-based interface [which incidentally still exists
> and is source and binary compatible all the way back to Solaris 2.0]),
> extensibility of the interfaces is achieved via several mechanisms:
> 
> - Existing structures contain pad fields for small additions
>   from time to time.  Unused flag bits also exist.
> 
> - If space runs out, the structures can be extended by adding
>   members at the end because old programs read the old sizes
>   from the files and hence only get the information they expect.
> 
> - For large extensions, whole new files can be provided in
>   new releases.
> 
> - Control operations take unique control codes; new control
>   codes and their associated data structures can be created
>   in new releases for new process control functionality.
> 
> In short, the Solaris /proc interface was designed from the
> outset to be binary compatible from release to release and
> to be extensible when the need arises.

Well, Roger, I'm pleased that my question provoked you to respond. It
sounds as though Solaris' /proc is indeed well-engineered for the
future.

I don't suppose I can *also* provoke you into sharing your opinion on
the topic this thread has drifted onto -- the relative merits of
Linux-style textual /proc interfaces into the kernel vs. binary /proc
or ioctl interfaces? :-)

-- Kaelin

------------------------------

From: Eric Taylor <[EMAIL PROTECTED]>
Subject: Re: need help fixing a tcp kernel problem
Date: Thu, 11 Jan 2001 16:52:36 GMT

Peter T. Breuer wrote:
> 
> Eric Taylor <[EMAIL PROTECTED]> wrote:
> > Peter T. Breuer wrote:
> >> The kernel list is your obvious target.
> > I am new to this, could you please elaborate on
> > where I can find this list? And how do I reach
> 
> Go to the obvious places. Read the MAINTAINERS list in the kernel
> source directory, and go to www.<linuxanything>.org (or deja!)
> for the kernel list. I won't publish email addresses here,
> though I'll mention vger.linux.org as being the list machine, with
> linux-kernel (on it) as your preferred list.
> 
> Peter

I went up to deja and posted a message, with
2 perl scripts that demostrate the problem.
I have not yet seen my post show up, so I am
also posting it here.






=============== post with source code =========


Hi:

I have been trying to figure out
why linux tcp is failing to ack
properly in some situations.

I can easily reproduce this error
using 2 perl scripts. (see below) I
create a socket server in one
script, a client in another, start
sending, suspend the receiver and
wait 4 minutes. The socket will get
disconnected. It should not do
this, it should send an ack with a
window of 0, which it fails to do.
Both the client and the server can
be on the same system to easily see
the error.

To any developer who might be
listening - please help me find and
fix this problem.

Thanks
Eric


---- debugging info follows ------------------



If I run the client from a windows
system, linux behaves properly,
sending acks/window 0, and when I
unsuspend the receiver, all
re-starts up in a few seconds.

When going linux to linux, it fails
almost always. When it does fail, I
see the sender trying to send a
large block (1-2k bytes) and when
no ack comes back the sender goes
into it's retransmit loop waiting
1,2,4... seconds. I also see the
retransmit count going up with:
/proc/net/tcp

When it fails, the last ack sent
back shows a window size of more
than 15000. Here is a sample:

21:48:23.376528   lo > 127.0.0.1.5000 > 127.0.0.1.1052: . 1:1(0) ack
1255213 win 18158 <nop,nop,timestamp 21258536 21258536> (DF)
21:48:23.379304   lo > 127.0.0.1.1052 > 127.0.0.1.5000: P
1255213:1255256(43) ack 1 win 31072 <nop,nop,timestamp 21258536
21258536> (DF)
21:48:23.384049   lo > 127.0.0.1.1052 > 127.0.0.1.5000: P
1255256:1257234(1978) ack 1 win 31072 <nop,nop,timestamp 21258537
21258536

No further acks here. This last
send occurs until the retransmit
count is exhausted. Then the socket
is closed.

Once in a while, it does not fail,
when it works, I see the sender
(tcpdump trace) sending only a 1
byte record. And I see all the acks
with a window getting smaller until
it reaches zero. At that point, the
sender is probing by sending 1 byte
records.

Here is a sample where it does
work:

22:13:34.161580   lo > 127.0.0.1.5000 > 127.0.0.1.1053: . 1:1(0) ack
5444248 win 11616 <nop,nop,timestamp 21409615 21409615> (DF)
22:13:34.161979   lo > 127.0.0.1.5000 > 127.0.0.1.1053: . 1:1(0) ack
5451992 win 7744 <nop,nop,timestamp 21409615 21409615> (DF)
22:13:34.162322   lo > 127.0.0.1.5000 > 127.0.0.1.1053: . 1:1(0) ack
5459736 win 3872 <nop,nop,timestamp 21409615 21409615> (DF)
22:13:34.162553   lo > 127.0.0.1.5000 > 127.0.0.1.1053: . 1:1(0) ack
5463608 win 3872 <nop,nop,timestamp 21409615 21409615> (DF)
22:13:34.179785   lo > 127.0.0.1.5000 > 127.0.0.1.1053: . 1:1(0) ack
5467480 win 0 <nop,nop,timestamp 21409617 21409615> (DF)
22:13:34.379759   lo > 127.0.0.1.1053 > 127.0.0.1.5000: .
5467479:5467479(0) ack 1 win 31072 <nop,nop,timestamp 21409637 21409617>
(DF)
22:13:34.379856   lo > 127.0.0.1.5000 > 127.0.0.1.1053: . 1:1(0) ack
5467480 win 0 <nop,nop,timestamp 21409637 21409615> (DF)
22:13:34.779762   lo > 127.0.0.1.1053 > 127.0.0.1.5000: .
5467479:5467479(0) ack 1 win 31072 <nop,nop,timestamp 21409677 21409637>
(DF)
22:13:34.779852   lo > 127.0.0.1.5000 > 127.0.0.1.1053: . 1:1(0) ack
5467480 win 0 <nop,nop,timestamp 21409677 21409615> (DF)
22:13:35.579755   lo > 127.0.0.1.1053 > 127.0.0.1.5000: .
5467479:5467479(0) ack 1 win 31072 <nop,nop,timestamp 21409757 21409677>
(DF)
22:13:35.579842   lo > 127.0.0.1.5000 > 127.0.0.1.1053: . 1:1(0) ack
5467480 win 0 <nop,nop,timestamp 21409757 21409615> (DF)

server resumed here.

22:18:33.572608   lo > 127.0.0.1.5000 > 127.0.0.1.1053: . 1:1(0) ack
5467480 win 3872 <nop,nop,timestamp 21439556 21409615> (DF)
22:18:33.572714   lo > 127.0.0.1.1053 > 127.0.0.1.5000: P
5467480:5471352(3872) ack 1 win 31072 <nop,nop,timestamp 21439556
21439556> (DF)
22:18:33.572910   lo > 127.0.0.1.5000 > 127.0.0.1.1053: . 1:1(0) ack
5471352 win 3872 <nop,nop,timestamp 21439556 21439556> (DF)
22:18:33.573007   lo > 127.0.0.1.1053 > 127.0.0.1.5000: P
5471352:5475224(3872) ack 1 win 31072 <nop,nop,timestamp 21439556
21439556

======================================================



To reproduce: create the 2 perl
files, badclient.pl and
badserver.pl shown below.

>From two terminal windows:

>perl badserver.pl 5000
>perl badclient.pl

You will see for the server (hit control-z):

[1028]$ perl badserver.pl 5000
waiting for connection on port 5000
accept connection from 127.0.0.1, 1052
hello there /badclient.pl/   //   // 1
hello there /badclient.pl/   //   // 1001
hello there /badclient.pl/   //   // 2001
hello there /badclient.pl/   //   // 3001
---type control z ---
[1]+  Stopped                 perl badserver.pl 5000

You will see nothing for the client.

---badclient.pl----

use IO::Socket;

$client = IO::Socket::INET->new("localhost:5000") or die $@;
$a = shift;
$b = shift;
$i=1;
while(1) {
  print $client "hello there /$0/   /$a/   /$b/ $i\n";
  $i++;
}

close($client);


---badserver.pl---



use IO::Socket;
use Socket;
$port = shift or die "usage: perl server port_number\n";

$server = IO::Socket::INET->new(
                LocalPort =>$port,
                Type => SOCK_STREAM,
                Reuse    => 1,
                Listen    => 10,
                )
                or die "cannot create server : $@\n";
print "waiting for connection on port $port\n";                 
while ($client = $server->accept()) {
    $other = getpeername($client) or die "cannot get peer $!\n";
    ($port,$iaddr) = unpack_sockaddr_in($other);
    $ip_addr = inet_ntoa($iaddr);
        print "accept connection from $ip_addr, $port\n";
    $i=0;
    while( $_ = <$client> ) {
        if($i%1000 == 0){print $_;}
        $i++;
    }
    print "done with this connection\n";
}                       
                        
close($server);

------------------------------

From: [EMAIL PROTECTED] (bill davidsen)
Subject: Re: Kernel 2.4
Date: 11 Jan 2001 16:53:56 GMT

In article <2WE56.47849$[EMAIL PROTECTED]>,
mpierce <[EMAIL PROTECTED]> wrote:
| I've compiled 2.4.0 from source and cannot get it to boot due to some
| changes in how it treats devices. Can you email me either a copy of your
| grub or lilo.conf or post these for me to look at?

  Is this a Redhat system? I've built 2.4.0 for a number of Slackware
systems w/o problems, but a friend was unable to get it to boot on RH.
Don't know the version of RH, but he got to printing dots and stopped
after three.

  I haven't tried it myself, and the machine is 130 miles north, but I
wonder if there is a difference in LILO version. Okay, Slackware 7.1
says "LILO version 21.4-3", RG 6.2 says "LILO version 21," and November
KRUD says the same thing. Doubt this sheds light.

-- 
  bill davidsen <[EMAIL PROTECTED]>  CTO, TMR Associates, Inc
Linux is a feedback loop. People use it because it has support for all
the neat hardware and applications they want, and implement all the
neat hardware and applications because they want to use Linux.

------------------------------

From: [EMAIL PROTECTED] (bill davidsen)
Subject: Re: In Kernel 2.4 cdrom mount..
Date: 11 Jan 2001 16:58:41 GMT

In article <93brgc$h2r$[EMAIL PROTECTED]>,
junwon,Seo <[EMAIL PROTECTED]> wrote:
| I'm using the Redhat 6.2 and Kernel2.4.
| But, I can't mount cdrom.
| I have a IDE cdrom
| 
| My command is following
| 
| # mount /mnt/cdrom    or
| # mount -t iso9660 /dev/cdrom /mnt/cdrom
| 
| My error message is
| 'mount: special device /dev/cdrom does not exist'
| 
| What's problem?

  Post the output of dmesg here and let's see if the system found your
CD. Also, you DID compile in ide-cd support, right?

-- 
  bill davidsen <[EMAIL PROTECTED]>  CTO, TMR Associates, Inc
Linux is a feedback loop. People use it because it has support for all
the neat hardware and applications they want, and implement all the
neat hardware and applications because they want to use Linux.

------------------------------


** FOR YOUR REFERENCE **

The service address, to which questions about the list itself and requests
to be added to or deleted from it should be directed, is:

    Internet: [EMAIL PROTECTED]

You can send mail to the entire list by posting to the
comp.os.linux.development.system newsgroup.

Linux may be obtained via one of these FTP sites:
    ftp.funet.fi                                pub/Linux
    tsx-11.mit.edu                              pub/linux
    sunsite.unc.edu                             pub/Linux

End of Linux-Development-System Digest
******************************

Reply via email to