Linux-Development-Sys Digest #123, Volume #8 Mon, 4 Sep 00 19:13:12 EDT
Contents:
Re: Swap Atomically? (Pete Zaitcev)
Re: Elite CMI 8738 Chip modem configuration and RH 6.2 (Edward Lee)
Re: backup os? (Dewald Rossouw)
Re: linking in GPG (Frank Sweetser)
Re: Swap Atomically? (Kaz Kylheku)
Re: Swap Atomically? (Alexander Viro)
Re: Swap Atomically? (Alexander Viro)
Re: programming nvidia on linux ("Stephen Perez")
Re: Embedded linux (Mike McDonald)
Re: Swap Atomically? (Kaz Kylheku)
Problem with SMP kernel on Tekram motherboard (Brian Shea)
Re: Swap Atomically? (John Reiser)
Re: Memory allocation Strangeness. (Update) (Larry Ebbitt)
Re: /dev/log (The Ghost In The Machine)
Re: Swap Atomically? (David Wragg)
Re: How to have two glibc versions peacefully coexisting? (Juergen Heinzl)
----------------------------------------------------------------------------
From: [EMAIL PROTECTED] (Pete Zaitcev)
Subject: Re: Swap Atomically?
Date: Mon, 04 Sep 2000 17:03:47 GMT
On 4 Sep 2000 02:55:12 -0400, Alexander Viro <[EMAIL PROTECTED]> wrote:
> In article <[EMAIL PROTECTED]>,
> Kaz Kylheku <[EMAIL PROTECTED]> wrote:
> >Only a few of the architectures that Linux supports have the underlying
> >instruction needed to do this job. The developers of AIX might find
> >this out too if they bothered porting their operating system.
>
> I'm sorry? Not speaking for AIDX folks, but believe me, _all_ architectures
> where Linux runs have a way to do the atomic test_and_set_bit(). Grep the
> kernel source and you'll see it used in architecture-independent parts of
> the tree.
> glibc has the test_and_set_bit(), test_and_clear_bit() and
> test_and_change_bit() in asm/bitops.h
test_asn_set_bit() is atomic only in kernel mode.
On some architectures it is implemented using cli().
--Pete
------------------------------
From: Edward Lee <[EMAIL PROTECTED]>
Crossposted-To: comp.os.linux.hardware
Subject: Re: Elite CMI 8738 Chip modem configuration and RH 6.2
Date: Mon, 04 Sep 2000 03:16:39 -0700
David Yeung wrote:
> Does anyone know how to configure the internal modem in the CMI 8738 chip
> running RedHat 6.2.
>
> Thanks
>
> david
Download the CMI8738 (sound) and PCT0211 (modem) modules at
http://linnix.com.
------------------------------
From: Dewald Rossouw <[EMAIL PROTECTED]>
Crossposted-To: comp.os.linux.misc
Subject: Re: backup os?
Date: Mon, 04 Sep 2000 10:07:49 -0700
Reply-To: [EMAIL PROTECTED]
Hi,
Understudy by Polyserve, Inc. is what you might need. Check out
http://www.polyserve.com/
[EMAIL PROTECTED] wrote:
>
> Well, the security of one OS is becoming more and more important.
> However, there are some unexpectable catastrophes (not only the hack),
> which will destory the whole system. So there is such backup system: the
> second computer is runing the same pace of the first computer, then even
> the first computer crashs for some reason, the second computer can start
> work in very short time. Now, I like to ask you, is there such function
> which is finish by linux? Sorry, I even don't know the name of such
> system: backup os? or other name people have used? Any discussions of
> such os are wolcome.
>
> Sent via Deja.com http://www.deja.com/
> Before you buy.
------------------------------
From: [EMAIL PROTECTED] (Frank Sweetser)
Subject: Re: linking in GPG
Date: 4 Sep 2000 17:00:29 GMT
[EMAIL PROTECTED] <[EMAIL PROTECTED]> wrote:
>Hi,
>
> I am writing a honours thesis that involves kernel verification of
>digital signatures embedded in binary files. I am using GPG for the
>verification at this stage and so would like to link GPG into the
>kernel. (GPG = GNU Privacy Guard).
>
>I haven't had any experience with this sort of thing. I am wondering if
>anyone can help me out witha few pointers, things to watch out for,
>references, ways to go about it etc... Any help would be much
>appreciated.
Directly linking in gpg probably isn't the best way to go - in the kernel
you're missing quite a few things, like libc and simple file io, memory
management is completely different, etc etc. You're probably better off
reimplementing the bits you actually need rather than trying to relink the
object files or even just trying to cut and paste.
--
Frank Sweetser rasmusin at wpi.edu, fs at suave.net | $ x 5
Full-time WPI Network Tech, Part time Linux/Perl guy |
Anyway, my money is still on use strict vars . . .
-- Larry Wall in <[EMAIL PROTECTED]>
------------------------------
From: [EMAIL PROTECTED] (Kaz Kylheku)
Subject: Re: Swap Atomically?
Reply-To: [EMAIL PROTECTED]
Date: Mon, 04 Sep 2000 17:41:26 GMT
On 4 Sep 2000 02:55:12 -0400, Alexander Viro <[EMAIL PROTECTED]> wrote:
>In article <[EMAIL PROTECTED]>,
>Kaz Kylheku <[EMAIL PROTECTED]> wrote:
>>Only a few of the architectures that Linux supports have the underlying
>>instruction needed to do this job. The developers of AIX might find
>>this out too if they bothered porting their operating system.
>
>I'm sorry? Not speaking for AIDX folks, but believe me, _all_ architectures
>where Linux runs have a way to do the atomic test_and_set_bit(). Grep the
>kernel source and you'll see it used in architecture-independent parts of
>the tree.
The question was about atomic compare_and_swap, not atomic test_and_set.
Big difference!
>Semantics: atomically set/reset/flip bit #n in a bit vector at given address
>and return the old value. If you want to do compare_and_swap() - write it
>yourself either using test_and_set_bit for protection or doing it by hands.
You cannot compose a compare_and_swap out of test_and_set. You can only emulate
it in a truly lame way; e.g. by using test_and_set to create a spinlock which
provides the protection for performing the compare and swap.
------------------------------
From: [EMAIL PROTECTED] (Alexander Viro)
Subject: Re: Swap Atomically?
Date: 4 Sep 2000 13:50:31 -0400
In article <[EMAIL PROTECTED]>,
Pete Zaitcev <[EMAIL PROTECTED]> wrote:
>On 4 Sep 2000 02:55:12 -0400, Alexander Viro <[EMAIL PROTECTED]> wrote:
>> In article <[EMAIL PROTECTED]>,
>> Kaz Kylheku <[EMAIL PROTECTED]> wrote:
>> >Only a few of the architectures that Linux supports have the underlying
>> >instruction needed to do this job. The developers of AIX might find
>> >this out too if they bothered porting their operating system.
>>
>> I'm sorry? Not speaking for AIDX folks, but believe me, _all_ architectures
>> where Linux runs have a way to do the atomic test_and_set_bit(). Grep the
>> kernel source and you'll see it used in architecture-independent parts of
>> the tree.
>
>> glibc has the test_and_set_bit(), test_and_clear_bit() and
>> test_and_change_bit() in asm/bitops.h
>
>test_asn_set_bit() is atomic only in kernel mode.
>On some architectures it is implemented using cli().
<grep> Oops... Sorry, looks like on some MIPS boxen it may be a problem, and
SuperH may be painful too. I don't know either of these architectures well
enough to see whether there is a decent solution - not without the manual.
My apologies...
--
"You're one of those condescending Unix computer users!"
"Here's a nickel, kid. Get yourself a better computer" - Dilbert.
------------------------------
From: [EMAIL PROTECTED] (Alexander Viro)
Subject: Re: Swap Atomically?
Date: 4 Sep 2000 13:54:35 -0400
In article <[EMAIL PROTECTED]>,
Kaz Kylheku <[EMAIL PROTECTED]> wrote:
>You cannot compose a compare_and_swap out of test_and_set. You can only emulate
>it in a truly lame way; e.g. by using test_and_set to create a spinlock which
>provides the protection for performing the compare and swap.
Umm... I seriously suspect that it will be faster than playing with POSIX
mutexes (muteces? probably not - 'ex' comes from truncated 'exclusion', so
no replacement with 'c' in plural...). cli() used on several architectures
is a problem, though...
--
"You're one of those condescending Unix computer users!"
"Here's a nickel, kid. Get yourself a better computer" - Dilbert.
------------------------------
From: "Stephen Perez" <[EMAIL PROTECTED]>
Crossposted-To:
alt.comp.periphs.videocards.nvidia.programming,alt.comp.periphs.videocards.nvidia,comp.os.linux.development.apps,comp.os.linux.x
Subject: Re: programming nvidia on linux
Date: Mon, 04 Sep 2000 18:09:57 GMT
Actually, I've used svgalib several times in the past and was never
impressed with its performance(perhaps because it interfaces with the card
through VESA). I would really like to be able to take advantage of 2d
acceleration in these cards. This is as much for my own education as
anything else.
"Wolfgang Draxinger" <[EMAIL PROTECTED]> wrote in message
news:[EMAIL PROTECTED]...
> Stephen Perez schrieb:
>
> > Hi. I am wondering if anyone out there has an example piece of code that
> > does all the low-level stuff to change graphics modes, color a pixel on
the
> > screen, and return to text mode(from a linux console). I could and have
> > looked at the nvidia drivers that come with X but I would really like a
more
> > minimal/simple example than a full blown driver(they rely on X for too
many
> > things-making it difficult to trace). Also, I don't want to use X(or
install
> > it for that matter), I just want to do some simple rendering using my
nvidia
> > TNT2 card. Anyway, just wondering.
> >
> > Thanks in advance. Please email me directly.
> >
> > Stephen
>
> I assume you don't want to use the accelerator.
> try svgalib. There are some excelent tutorials.
>
> C.U.
>
------------------------------
Reply-To: [EMAIL PROTECTED]
From: [EMAIL PROTECTED] (Mike McDonald)
Subject: Re: Embedded linux
Date: Mon, 04 Sep 2000 18:15:52 GMT
In article <8o6fpc$sra$[EMAIL PROTECTED]>,
"Allison Bajo" <[EMAIL PROTECTED]> writes:
> How about an embedded Linux distribution for MIPS? If anyone knows of a
> distribution tailored for this chip please email me.
>
> Thank you for your help.
>
> - Al
Depending on your definition of "embedded", check out http://linuxvr.org/.
I've run Linux out of 1MB of flash/8MB or RAM on a 4121.
Mike McDonald
[EMAIL PROTECTED]
------------------------------
From: [EMAIL PROTECTED] (Kaz Kylheku)
Subject: Re: Swap Atomically?
Reply-To: [EMAIL PROTECTED]
Date: Mon, 04 Sep 2000 18:24:00 GMT
On 4 Sep 2000 13:50:31 -0400, Alexander Viro <[EMAIL PROTECTED]> wrote:
><grep> Oops... Sorry, looks like on some MIPS boxen it may be a problem, and
>SuperH may be painful too. I don't know either of these architectures well
>enough to see whether there is a decent solution - not without the manual.
Another problematic one is StrongARM.
Also, one is never sure in this newsgroup whether the question is about kernel
space or user space! So my recommendation to use the mutex might be useless.
------------------------------
From: Brian Shea <[EMAIL PROTECTED]>
Crossposted-To: comp.os.linux.hardware
Subject: Problem with SMP kernel on Tekram motherboard
Date: Mon, 04 Sep 2000 15:31:56 -0400
Reply-To: [EMAIL PROTECTED]
I am running Redhat 6.2 kernel version 2.2.14-5.0smp and get this
message before the system locks up.
hda: lost interrupt
This ONLY happens in SMP, I have been using single processor kernel for
two days and have not had the problem. I first noticed the problem when
i tried to recompile the modules for smp kernel running the smp kernel
to test the speed. After the hard drive stoped thrashing that message
was displayed.
I amagine it has something to do the the interrupt mapping but I have no
experience with smp programming. It only does this in the smp kernel.
I read the IO-APIC document and it explanes how to exclude pci irq's
connected to the apic but I not sure this is the problem.
I have read a couple of the how-to' s and seached redhats sight but have
found nothing.
I have posted this message on news://comp.os.linux.development.system
and news://comp.os.linux.hardware because i don't know who to tell.
System Info
Motherboard: Tekram P6B40D-A5
Memory: 256MB
hda: Maxtor 11.9GB
hdb: ZipDrive (100MB)
hdc: Yamaha CDRW
hdd: Atapi 40x cdrom
lspci >
00:00.0 Host bridge: Intel Corporation 440BX/ZX - 82443BX/ZX Host bridge
(rev 02)
00:01.0 PCI bridge: Intel Corporation 440BX/ZX - 82443BX/ZX AGP bridge
(rev 02)
00:07.0 ISA bridge: Intel Corporation 82371AB PIIX4 ISA (rev 02)
00:07.1 IDE interface: Intel Corporation 82371AB PIIX4 IDE (rev 01)
00:07.2 USB Controller: Intel Corporation 82371AB PIIX4 USB (rev 01)
00:07.3 Bridge: Intel Corporation 82371AB PIIX4 ACPI (rev 02)
00:09.0 Ethernet controller: Lite-On Communications Inc LNE100TX (rev
20)
00:0a.0 Ethernet controller: Realtek Semiconductor Co., Ltd.
RTL-8029(AS)
00:0b.0 Multimedia audio controller: Creative Labs SB Live! EMU10000
(rev 04)
00:0b.1 Input device controller: Creative Labs SB Live! (rev 01)
01:00.0 VGA compatible controller: nVidia Corporation Riva TNT2 Ultra
(rev 11)
cat /proc/cpuinfo > (single cpu mode, processor 1 not shown)
processor : 0
vendor_id : GenuineIntel
cpu family : 6
model : 6
model name : Celeron (Mendocino)
stepping : 5
cpu MHz : 534.558811
cache size : 128 KB
fdiv_bug : no
hlt_bug : no
sep_bug : no
f00f_bug : no
coma_bug : no
fpu : yes
fpu_exception : yes
cpuid level : 2
wp : yes
flags : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge
mca cmov pat pse36 mmx fxsr
bogomips : 532.48
------------------------------
From: John Reiser <[EMAIL PROTECTED]>
Subject: Re: Swap Atomically?
Date: Mon, 04 Sep 2000 13:04:19 -0700
> >There is not such a function offered by the OS. However, the cmpxchg
> >(compare and exchange) instruction offered by the x86 processors is what
> >you are looking for.
>
> By SOME x86 processors. It is not universal.
>
> Afaik plain and simple pentiums already don't have it.
cmpxchg (32-bit) is implemented on 486 and above, including Pentium
of all flavors. cmpxchg8b (64-bit) is implemened on PentiumPlain
and above, but not on 386 or 486. See pages 25-58 thru 25-61 of Pentium
Processor User's Manual, vol.3: Architecture and Programming Manual,
Intel order number 241430-001, copyright Intel 1993.
So unless you're targeting an embedded 386, or are interested in
running on x86 machines that are at least 10 years old, cmpxchg is there.
--
------------------------------
Date: Mon, 04 Sep 2000 18:00:33 -0400
From: Larry Ebbitt <[EMAIL PROTECTED]>
Subject: Re: Memory allocation Strangeness. (Update)
Szabolcs Csetey wrote:
> It's not bug however a built in feature for efficience and also to let
> applications run without enough resources [e.g. think of huge sparse
> matrixes in scientific apps]. "Workaround" is proper resource limits.
Absolutely. What's available now may not be what's available when the
storage is actually used. MVS used to try to make sure that a certain amount
of back store (page space) was available before starting a job. It no longer
does as it caused far more trouble than it prevented.
--
Larry Ebbitt - Linux + OS/2 - Atlanta
------------------------------
From: [EMAIL PROTECTED] (The Ghost In The Machine)
Subject: Re: /dev/log
Date: Mon, 04 Sep 2000 22:03:48 GMT
In comp.os.linux.development.system, Derek Fountain
<[EMAIL PROTECTED]>
wrote
on Fri, 01 Sep 2000 10:16:10 +0100
<[EMAIL PROTECTED]>:
>I'm so vague on this I'm not even sure where to ask the
>question. Someone point me the right direction if this forum
>isn't appropriate.
>
>On my 2 Linux systems - 1 Redhat, the other SuSE - there's
>file called /dev/log. It's socket file:
>
>> ls -l /dev/log
>srw-rw-rw- 1 root root 0 May 4 11:11
>/dev/log
>
>I'm unfamiliar with the concept of sockets on my file
>system. Can someone explain how they are used, and, in
>particular, how I create one?
>
>I'm setting up a minimal Linux system on an embedded PC, and
>I've started from absolute scratch. It's an interesting
>exercise and I'm learning a huge amount, but mingetty won't
>run without this /dev/log file. I'm at a standstill until
>someone can tell me how to create it.
A socket facilitates process-to-process communication, either
between two processes on the same node, or two nodes on
the Internet. There are at least two types; Unix sockets
can only be used for process-to-process on a single node,
whereas Internet Protocol (IP) sockets can be used anywhere.
Creating one is relatively simple -- socket() -- but there
are a fair number of issues involved. In order to have
it connect to anyone, one has to connect(); in order to
have people connect to you, you will need to bind(), then
listen(), then accept() every connection coming your way.
You will also have to grok sockaddr_in and sockaddr_un;
if using IP sockets, you'll probably also need gethostname()
and gethostbyname(). There also might be newer calls, as well,
such as inet_ntoa(), with which I am not that familiar,
although it looks fairly useful if one likes raw IP addys.
All of these have manpages, although they're not horribly
interconnected.
As for /dev/log, I'm not sure what that particular socket is
used for, although I suspect it's for system logging.
I'm a little surprised it's wide open.
--
[EMAIL PROTECTED] -- insert random misquote here
------------------------------
From: David Wragg <[EMAIL PROTECTED]>
Subject: Re: Swap Atomically?
Date: 04 Sep 2000 20:23:39 +0000
[EMAIL PROTECTED] (Marco van de Voort) writes:
> >There is not such a function offered by the OS. However, the cmpxchg
> >(compare and exchange) instruction offered by the x86 processors is what
> >you are looking for.
>
> By SOME x86 processors. It is not universal.
>
> Afaik plain and simple pentiums already don't have it.
All Pentiums have it. It first appeared in the 486.
So only the 386 is a little bit more difficult. But the 386 still has
wide variety of atomic operations, and any other needed primitives can
be implemented using XCHG for spinlocks.
David Wragg
------------------------------
From: [EMAIL PROTECTED] (Juergen Heinzl)
Subject: Re: How to have two glibc versions peacefully coexisting?
Date: 4 Sep 2000 22:26:13 GMT
In article <8p069t$9qa$[EMAIL PROTECTED]>, Jan Kreft wrote:
>Hi,
>
>my problem is that I have programs that need the original glibc-2.0.7
>that came with my SuSE 6.1 system, but for newer programs I need a new
>version of the glibc. So I compiled glibc-2.1.3 and installed it in
>/usr/local/glibc-2.1.3
>Now, when I try to run StarOffice 5.2 installation, it complains about a
>too old libc.
>When I say export LD_LIBRARY_PATH='/usr/local/glibc-2.1.3'
>it won't run because of undefined symbols.
>
>How can I get the two glibc versions to coexist???
[-]
See glibc-2.1.x/FAQ [3.18]. Keep in mind glibc-2.0.7 was a development
release while glibc-2.1.x and the upcoming 2.2.x are the official ones.
It would be better to compile applications that do not run with 2.1.x
against the new library and install it as the default.
Some caveats though and if you do not know your system well, then
better leave it until the next upgrade even though most but not
all binaries linked against 2.0.7 don't mind.
Cheers,
Juergen
--
\ Real name : J�rgen Heinzl \ no flames /
\ EMail Private : [EMAIL PROTECTED] \ send money instead /
------------------------------
** 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
******************************