Linux-Development-Sys Digest #83, Volume #8      Thu, 17 Aug 00 08:13:12 EDT

Contents:
  Re: far pointers in g++ (David Wibberley)
  Re: printk and EXPORT_SYMBOL in a MODULE (Brian Horton)
  Re: Kernel 2.4.0-test6 Compile and install module problem? ("E-mu")
  Re: Kernel 2.4.0-test6!!!!! Anyone have any Problems? ("E-mu")
  Re: Kernel 2.4.0-test6!!!!! Anyone have any Problems? (Dima Maziuk)
  compilation errors ("Jack Bowling")
  Re: Kernel 2.4.0-test6 Compile and install module problem? (Paul Kimoto)
  Dynamic Probes Announcement ([EMAIL PROTECTED])
  Re: far pointers in g++ (Joe Pfeiffer)
  How to cross-compile for an older dynamic linker? ("Petteri Ponsimaa")
  Re: Kernel 2.4.0-test6 Compile and install module problem? ("Emu")
  What these codes in sched.h mean? (Yi-Hsiu Chou)
  Circumventing TIME_WAIT...howto? (Robert Colbert)
  Re: Adding a system call dynamically (Marc SCHAEFER)
  soft-realtime system (wolfgang guldner)

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

From: David Wibberley <[EMAIL PROTECTED]>
Subject: Re: far pointers in g++
Date: Wed, 16 Aug 2000 23:37:08 +0100



Byron A Jeff wrote:
> 
> In article <[EMAIL PROTECTED]>,
> David Lamparter  <[EMAIL PROTECTED]> wrote:

> -Does anybody know how to code far pointers in g++ / c++ / another c++ under
> -Linux?

[snip]

> -P.S.: Please don't ask me for what I need the far pointer. It's a _little_ bit
> -secret.
> -
> 
> You'll probably have to tell us anyway. See in a flat memory model there
> is no such thing as a fax pointer. Linux uses a flat memory model.


C++ software doesn't really run on Linux (although a particular standard
library might); it does run on IA32 hardware though, and that has far
pointers even on Linux if you write a module to change the GDT entries
to something useful. Great performance improvements can be obtained
while maintaining memory protection by using 386 segmentation cleverly.
I would imagine the gentleman is writing some sort of multi-process
software (for security and modularisation) but needs to keep very low
latencies for some IPC. 386 segmentation is very poorly thought out, but
it can still be used to great effect (with much effort).

--
Tristan Wibberley

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

From: Brian Horton <[EMAIL PROTECTED]>
Subject: Re: printk and EXPORT_SYMBOL in a MODULE
Date: Wed, 16 Aug 2000 16:18:51 -0500

Still doesn't work for me. I got the versioning to work, but either way,
I still can't EXPORT_SYMTAB and do a printk from the same kernel module.

arg!!!! 

Anyone else help out here? RH6.2 w/ the 2.2.14 kernel.

thx.bri.

Chris wrote:
> 
> I just figured this out today...
> 
> In exactly one module, include the line
> #define EXPORT_SYMTAB
> 
> Then in the same module, export your symbols using the macro
> EXPORT_SYMBOL_NOVERS(MyFunction)
> 
> I was then able to get two modules talking to each other via exported
> functions.
> 
> That's all there is to it (for kernel 2.2+). I haven't figured out how to
> use the versioning version yet...
> 
> Chris
> 
> "Brian Horton" <[EMAIL PROTECTED]> wrote in message
> news:[EMAIL PROTECTED]...
> > kernel newbie here... I'm trying to build a kernel module (that I'll be
> > loading via insmod) and want it to export a symbol (via EXPORT_SYMBOL).
> > I compile the code w/ -DMODULE -DEXPORT_SYMTAB and it compiles fine.
> > But, when I insmod it fails w/ unresolved on symbol 'printk'. Sure
> > enough, my kernel doesn't have 'printk', it has:
> >
> > # cat /proc/ksyms|grep printk
> > c0113e2e printk_R1b7d4074
> >
> > So how do I get printk and EXPORT_SYMBOL at the same time? What am I
> > doing wrong? Some other flag or -D that I need? Or can Modules not
> > export symbols?
> >
> > thx.bri.

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

From: "E-mu" <[EMAIL PROTECTED]>
Subject: Re: Kernel 2.4.0-test6 Compile and install module problem?
Date: 16 Aug 2000 23:24:33 GMT

Thanks,
Its good to hear that I am not the only one who has seen a problem with the
test6 source.

Thanks again for replying.




"John Gluck" <[EMAIL PROTECTED]> wrote in message
news:[EMAIL PROTECTED]...
> I have a problem when it boots...
> I noticed that the structure of the /lib/modules/ 2.4.0-test6 is changed
from
> the way it was in eariler kernels.
> I suspect "make modules_install" is screwed up...
>
>
> E-mu wrote:
>
> > I have been testign all the kernels thus far with most pretty much the
same
> > configuration on the same PC laptop Dell Inspirion 7500.
> >
> > If I configure the Kernel to include "umsdos" I get a binry error at the
end
> > of the compilation and it bombs out.  If I don't include "umsdos" the
kernel
> > does succesfully compile but when I install the modules which is just
PCMCAI
> > and SCSI, the SCSI module bombs out and I get a bunch of depmods at the
end?
> > The scsi module folder thus is not created.
> >
> > Now  I say again this has not happend on any of the test hkernels thus
far
> > except 2.4.0-test6.  I am runnign Red hat.  Right now I am running
> > 2.4.0-test5.  And yes I compile new kernels generally under the
originally
> > instaled kernel that installs with Read HAt Linux 6.2 which I believe is
> > 2.2.14-5.0.
> >
> > Could there be soem scripting errors in thsi particular Source of
test6???
> >
> > Anyone see this happen to them??
>
> --
> John Gluck  (Passport Kernel Design Group)
>
> (613) 765-8392  ESN 395-8392
>
> Unless otherwise stated, any opinions expressed here are strictly my own
> and do not reflect any official position of Nortel Networks.
>
>
>



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

From: "E-mu" <[EMAIL PROTECTED]>
Subject: Re: Kernel 2.4.0-test6!!!!! Anyone have any Problems?
Date: 16 Aug 2000 23:38:55 GMT

What in the world are you all talking about.  Thank God I Beta Test for MS
and not Linux full time with these kinda responces, I refuse to try and help
linux OS take hold.

I put a COUPLE OF !!!!  and everyone is talking about spam and gyros etc.
What in the world is the problem here?

Anyhow I will refrain from using !!! From now on,  jeese almighty already!


"Emu" <[EMAIL PROTECTED]> wrote in message
news:8ncesl$[EMAIL PROTECTED]...
> I am using Red Hat Distribution Version 6.2.
>
> I noticed that my modutil needed updating as well as pcmcia-cs.   That
still
> does not resolve the errors I get after configuring the Kernel for
'umsdos'
> support.  I get a binary output error at the end of the compilation.  If I
> remove 'umsdos' and re-compile the kernel it successfully compiles but
there
> is a problem with the module_install step.  I get a bunch of depmods at
the
> end and it bombs out.
>
> So far I have not had any problems with any of the test kernels until this
> one.
>
> I am using a Dell Inspirion Model 7500.  It only takes 5 minutes now for
me
> to compile a kernel on my 750 mgh PIII.  On my 233mmmx intel it took
almost
> 30 minutes to complile these test kernels.  what a huge difference in
> time.:):):):)
>
>



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

From: Dima Maziuk <[EMAIL PROTECTED]>
Subject: Re: Kernel 2.4.0-test6!!!!! Anyone have any Problems?
Date: Wed, 16 Aug 2000 19:16:07 -0500

E-mu wrote:
> 
> ... Thank God I Beta Test for MS

LOL. doesn't everybody?

> ... I refuse to try and help linux OS take hold.

C|N>K, ROTFL and all that.

Dima
--
How do I set laser printer to stun?
===================================
Pungenday, 9 Bureaucracy 3166, 212:1:4 (1)

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

From: "Jack Bowling" <[EMAIL PROTECTED]>
Subject: compilation errors
Date: Wed, 16 Aug 2000 18:51:10 -0800

I am trying to compile kernel 2.2.16 sources with the latest released gcc 2.96-52 but 
am
stumbling on punctuation errors in checksum.S   The relevant stanzas of checksum.S are:

=====================
.....cut

 *
 * FIXME: could someone double-check whether I haven't mixed up some SRC and
 *        DST definitions? It's damn hard to trigger all cases.  I hope I got
 *        them all but there's no guarantee.
 */

#define SRC(y...)                       \
        9999: y;                        \
        .section __ex_table, "a";       \
        .long 9999b, 6001f      ;       \               /* line 230 */
        .previous

#define DST(y...)                       \
        9999: y;                        \
        .section __ex_table, "a";       \
        .long 9999b, 6002f      ;       \               /* line 236 */
        .previous

.align 4
.globl csum_partial_copy_generic

.....cut

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

while the relevant compiler error message is:

make[2]: Nothing to be done for `all_targets'.
make[2]: Leaving directory `/usr/src/linux-2.2.16/arch/i386/mm'
make[1]: Leaving directory `/usr/src/linux-2.2.16/arch/i386/mm'
make -C  arch/i386/lib
make[1]: Entering directory `/usr/src/linux-2.2.16/arch/i386/lib'
make all_targets
make[2]: Entering directory `/usr/src/linux-2.2.16/arch/i386/lib'
gcc -D__KERNEL__ -I/usr/src/linux/include -D__ASSEMBLY__  
-traditional -c checksum.S -o checksum.o
checksum.S:230: badly punctuated parameter list in #define
checksum.S:236: badly punctuated parameter list in #define
make[2]: *** [checksum.o] Error 1
make[2]: Leaving directory `/usr/src/linux-2.2.16/arch/i386/lib'
make[1]: *** [first_rule] Error 2
make[1]: Leaving directory `/usr/src/linux-2.2.16/arch/i386/lib'
make: *** [_dir_arch/i386/lib] Error 2

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

I also upgraded to cpp-2.96-52. If anyone has a suggestion for fixing
the punctuation, please pass it along.

Jack Bowling
[EMAIL PROTECTED]



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

From: [EMAIL PROTECTED] (Paul Kimoto)
Subject: Re: Kernel 2.4.0-test6 Compile and install module problem?
Date: 16 Aug 2000 22:57:26 -0500
Reply-To: [EMAIL PROTECTED]

In article <[EMAIL PROTECTED]>, John Gluck wrote:
> I noticed that the structure of the /lib/modules/ 2.4.0-test6 is changed from
> the way it was in eariler kernels.
> I suspect "make modules_install" is screwed up...

No, but it's been changed.  There have been newer modutils releases to
take care of that.

-- 
Paul Kimoto
Disclaimer: Other than explicit citations of URLs, hyperlinks appearing
in this article have been inserted without the permission of the author.

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

From: [EMAIL PROTECTED]
Subject: Dynamic Probes Announcement
Date: Thu, 17 Aug 2000 04:47:00 GMT

The IBM Linux Technology Centre announces today the first release of
Dynamic Probes (Dprobes) available from
http://oss.software.ibm.com/developerworks/opensource/linux/projects/d
probes

Dprobes is a generic and pervasive system debugging facility that will
operate under the most extreme software conditions such as debugging
a deep rooted operating system problem in a live environment.  For
example, page-manager bugs in the kernel or perhaps user or system
problems that will not re-create easily in either a lab or production
environment.  For such inaccessible problem scenarios Dynamic Probes
not only offers a technique for gathering diagnostic information but has a
high probability of successful outcome without the need to build custom
modules for debugging purposes.

Dprobes allows the insertion of fully automated breakpoints or
probepoints, anywhere in the system and user space.  Each probepoint
has an associated set of probe instructions that are interpreted when the
probe fires.  These instructions allow memory and CPU registers to be
examined and altered using conditional logic.  When the probe command
terminates, prior to returning to the probed code, a syslog record may be
optionally generated.

Our intention in the next Dprobes code drop is that the probe program will
be used to trigger any external debugging facility that registers for this
purpose. For example a trace program will be able to augment its
capability with a dynamic trace capability.  Similarly, a crash dump facility
will be able to be invoked conditionally when a specific set of
circumstances occurs in a particular code path.  and lastly a debugger
will be able to use Dprobes as high-speed complex conditional
breakpoint service.

  Suparna Bhattacharya
  IBM Linux Technology Centre, RAS
  Systems Software, IBM Global Services, India
  E-mail : [EMAIL PROTECTED]
  Phone : 91-80-5267117, Extn : 2525


Sent via Deja.com http://www.deja.com/
Before you buy.

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

From: Joe Pfeiffer <[EMAIL PROTECTED]>
Subject: Re: far pointers in g++
Date: 16 Aug 2000 22:44:34 -0600

David Lamparter <[EMAIL PROTECTED]> writes:
> 
> Does anybody know how to code far pointers in g++ / c++ / another c++ under
> Linux? I tried many variants but it don't want to go... I don't want to use
> assembler. It's too _low_ for me.

With the flat memory model used by Linux, and the code produced by
gcc, there's only one kind of pointer (so the terms near/far pointer
don't really apply).  The segment selector isn't used; it's all in the
32 bit offset.

> P.S.: Please don't ask me for what I need the far pointer. It's a _little_ bit
> secret.

Oh, PLEASE???
-- 
Joseph J. Pfeiffer, Jr., Ph.D.       Phone -- (505) 646-1605
Department of Computer Science       FAX   -- (505) 646-1002
New Mexico State University          http://www.cs.nmsu.edu/~pfeiffer
VL 2000 Homepage:  http://www.cs.orst.edu/~burnett/vl2000/

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

From: "Petteri Ponsimaa" <[EMAIL PROTECTED]>
Crossposted-To: comp.os.linux.development.apps
Subject: How to cross-compile for an older dynamic linker?
Date: Thu, 17 Aug 2000 10:26:41 +0300

Hi,

I'm trying to compile my code under Linux using dynamic linker 2.1.3 for
target environment running with version 1.7 dynamic linker and libraries.
When compiling and linking binaries with shared libraries enabled, the
linker presumes I want to use the newest one in my system, which is
ld-linux.so.2. However, the target system only has version ld-linux.so.1.

If I try explicitly to use ld-linux.so.2 and link with
opions --dynamic-linker or -soname, I get a segmentation fault from the
program just compiled -- obliously this is a little bit too short way to do
this... Do I have to build a cross-compiler or is there a simpler way to do
this?

So, I need to link my code against an older version of ld-linux.so shared
library. I have both installed, but how do I point my linker to use the
earlier?

/lib/ld-linux.so.2 (don't use this)

-->

/lib/ld-linux.so.1 (use this instead)

Thanks in advance!

Petteri

--




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

From: "Emu" <[EMAIL PROTECTED]>
Subject: Re: Kernel 2.4.0-test6 Compile and install module problem?
Date: Thu, 17 Aug 2000 02:49:06 -0500

Paul I already have the latest Modutils installed.  I just installed them
today.  So the answer to that the newest build of the modutil's does not
take care of that unfortunetly.

Like I said this is the onlly source that has given me problems thus far.
In my opinion it is a soucre script error.

If I choose 'umsdos' the kernel bombs out.  It doesn't bomb out in any of
the othert kernels.

Thanks :)


"Paul Kimoto" <[EMAIL PROTECTED]> wrote in message
news:[EMAIL PROTECTED]...
> In article <[EMAIL PROTECTED]>, John Gluck wrote:
> > I noticed that the structure of the /lib/modules/ 2.4.0-test6 is changed
from
> > the way it was in eariler kernels.
> > I suspect "make modules_install" is screwed up...
>
> No, but it's been changed.  There have been newer modutils releases to
> take care of that.
>
> --
> Paul Kimoto
> Disclaimer: Other than explicit citations of URLs, hyperlinks appearing
> in this article have been inserted without the permission of the author.



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

From: [EMAIL PROTECTED] (Yi-Hsiu Chou)
Subject: What these codes in sched.h mean?
Date: 17 Aug 2000 09:17:50 GMT

421 extern __inline__ struct task_struct **get_free_taskslot(void)
 422 {
 423         struct task_struct **tslot;
 424
 425         spin_lock(&taskslot_lock);
 426         if((tslot = tarray_freelist) != NULL)
 427                 tarray_freelist = (struct task_struct **) *tslot;
 428         spin_unlock(&taskslot_lock);
 429
 430         return tslot;
 431 }

hello..

   I want to know what is line 426 ,427 doing?
why it let tslot = tarray_freelist first,then let
tarray_freelist =(struct task_struct **) *tslot?
and why it want to change * tslot to (struct task_struct **) *tslot?

   I don't kown what is stored in *tslot ,and what it means?

  Thanks a lot!
--
Yi-Hsiu Chou   <mail to: [EMAIL PROTECTED]>
Department of Computer & Information Science
National Chiao-Tung University                            
Hsinchu, Taiwan, R.O.C.

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

From: Robert Colbert <[EMAIL PROTECTED]>
Subject: Circumventing TIME_WAIT...howto?
Date: Thu, 17 Aug 2000 02:43:22 -0700

First, I know why TIME_WAIT is there for TCP sockets. I don't need it,
and I know this completely. Our network does not communicate over
satellites, broken fiber one mile deep in the ocean and crappy phone
lines with even worse modems attached. The network is a dedicated system
that needs to generate massive amounts of connections per second through
a completely isolated series of boxes, etc., etc., etc.

Is there any way to completely eliminate the TIME_WAIT state short of
recompiling the kernel? Will SO_REUSEADDR do all that I need? What do I
need? I need sockets to become available immediately after a session has
ended. I can guarentee that there are no packets left in the ether. I
don't want this "protective" coating on my pill. I'll swallow it whole
and take the pain that occurs if I'm wrong.

In essence, is there any "proper" way to get around this TIME_WAIT state
in a socket without a kernel hack? This is not for an application that
is for public distribution. We're working on a very specific, in-house
test tool and I need to be able to get sockets available again fast.
Waiting for them to die out of the TIME_WAIT state severely limits our
ability to do what we're trying to do.

Thanks in advance for any and all feedback! Please either post here or
send mail to [EMAIL PROTECTED]

-Rob Colbert ([EMAIL PROTECTED])
"I have a touchable pet monkey!"


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

From: Marc SCHAEFER <[EMAIL PROTECTED]>
Subject: Re: Adding a system call dynamically
Date: 17 Aug 2000 08:18:07 GMT

Kasper Dupont <[EMAIL PROTECTED]> wrote:
: posibility to have. For some purposes a /proc interface might
: be ineffective or even imposible.

Another way is to register a new dynamic misc module (with a minor
in the reserved range), and to add a few ioctl()s.

This will be even portable between kernel revisions (I have such
modules running in 2.0.x and 2.2.x, with just a minor differences
in e.g. release()).

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

From: wolfgang guldner <[EMAIL PROTECTED]>
Subject: soft-realtime system
Date: Thu, 17 Aug 2000 14:00:22 +0200

Hello everyone,

I have got a question concerning how to realize a soft-realtime system
with standard linux (not RT-Linux).

I implemented a measuerement data acquisition system which has got several
process which communicate over FIFOS.

Now the problem:

While normally the delay time (time between sending of message to a FIFO and
receiving it) is short enough (about 5 msecs) accidentally it goes ** up to
200msecs ** which is too long.

I suppose, that there are system processes of high priority (console
input, network processes (nfsd, ftpd, ...), swap) which sometimes block the
application.

So my question:

Did anyone implement a soft-realtime under normal Linux and can give me
tips which ** configuration (daemons running, crontab entries,
kernel-compilation ...) ** optimizes the delay times/ performance
of the application?

Concerning the system services, I've got the following requirements:

* Printer access: NO

* X-Windows: NO

* Network:
 Socket communication: YES
 NFS: NO
 FTP: NO

* swap: NO (enough memory)

* Mail Services, Internet Services, etc.: NONE

Thanks in advance

  Uwe Speck, c/o Wolfgang Guldner BFAD--

_____________________________________________________________________

BFAD GmbH & Co. KG

Wolfgang Guldner
Kornblumenweg 36
D-78247 Hilzingen

Tel.07731-9057-73
Fax 07731-9057-66
E-Mail: [EMAIL PROTECTED]
Homepage: www.bfad.de




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


** 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 (and comp.os.linux.development.system) via:

    Internet: [EMAIL PROTECTED]

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