Linux-Development-Sys Digest #308, Volume #6     Wed, 20 Jan 99 00:14:23 EST

Contents:
  Re: What does this traceroute output mean? (BL)
  Re: GCC's inline assembler, and it's apparent lack of knowledge (Emile van Bergen)
  Re: GCC's inline assembler, and it's apparent lack of knowledge (Chris Giese)
  Re: Resuming a program execution after SIGSEGV excep. ("Bjorn Wesen")
  Inoffensive bug in mm/page_alloc.c (Paul Hamshere)
  Re: linux shared libs ("Bjorn Wesen")
  Re: Linux Sound Engine ("Bjorn Wesen")
  Re: pre7 and 3dfx/glide/Mesa (gpasa)
  Re: Registry for Linux - Bad idea (Leslie Mikesell)
  Mapping driver buffer to user space (Frank McGirt)
  Re: Linux on an early Sun 4 Sparc???? (Fredrik Lundholm)
  Re: Will 2.2.x support removable medias better? (David T. Blake)
  Re: LILO and 10 GB drives (John Reiser)
  Linux on an early Sun 4 Sparc???? ("Robert D. Keys")
  Re: K6-2 300 Problem (Derek Piper)

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

From: BL <[EMAIL PROTECTED]>
Subject: Re: What does this traceroute output mean?
Date: 19 Jan 1999 20:50:34 GMT
Reply-To: no.spambots.please

Martin Kahlert <[EMAIL PROTECTED]> wrote:
: In article <[EMAIL PROTECTED]>,
:       James Youngman <[EMAIL PROTECTED]> writes:


: I have a twisted cable and no hub (only 2 machines). 
: The card is configured for duplex. Is this o.k.?

I'm guessing its a duplex or auto-negotiate issue.

whenever I see 'it works, but very slowly', I think 10/100 half/full stuff
being flakey.

can you manually -force- both to be 100/fullDuplex?  and if you can squeak any
pkts thru at all, your physical connect is probably ok.  and for a rolled
cable, there is little to go wrong ;-)

so disable auto-neg and nail the speed at 100/full on both.

-- 
AntiSpam: For email, change all 'zero' chars to letter 'o' chars.
bryan, http://www.Grateful.Net/


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

From: Emile van Bergen <[EMAIL PROTECTED]>
Crossposted-To: comp.lang.asm.x86,alt.os.assembly,alt.os.development
Subject: Re: GCC's inline assembler, and it's apparent lack of knowledge
Date: 19 Jan 1999 23:55:14 GMT

Greg Law wrote:
> 
> Does anyone know why gcc claims that lidt and int are not i386
> instructions for:
> 
>   __asm__( "LIDT %0" : : "r" (&new_idt) );

lidt <general register> is indeed invalid. Get the 386 reference manual.

It must be a memory reference pointing to a

struct tidtdesc {
  unsigned short limit;
  void *base;
}

> or even for
> 
>   __asm__( "INT 33" : : );

int $33 maybe?
 
> I could (begrudgingly) accept that gcc doesn't know about LIDT, but it
> must know about INT, surely!  What am I doing wrong?
> 
> The error message seems a little odd too -
> /tmp/cca08544.s:244: Error: operands given don't match any known 386
> instruction
> 
> I can't work if maybe its talking about operands or instructions.
> 
> Any pointers most appreciated,
> 
> Greg.

-- 

M.vr.gr. / Best regards,

Emile van Bergen (preferred e-mail address: [EMAIL PROTECTED])

This e-mail message is 100% electronically degradeable and produced
on a GNU/Linux system.

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

From: [EMAIL PROTECTED] (Chris Giese)
Crossposted-To: comp.lang.asm.x86,alt.os.assembly,alt.os.development
Subject: Re: GCC's inline assembler, and it's apparent lack of knowledge
Date: 20 Jan 1999 01:39:12 GMT

Mind-control rays from black helicopters made Greg Law
<[EMAIL PROTECTED]> write:

>  __asm__( "LIDT %0" : : "r" (&new_idt) );

Change this to
   __asm__( "LIDT %0" : : "m" (&new_idt) );

The  "r" constraint indicates that the %0 operand is a register;
"m" indicates that it's a memory location.

>  __asm__( "INT 33" : : );

Change this to
   __asm__( "INT $33" : : );

$ means an immediate operand.

-- 
geezer@    | Sales rushes in where
execpc.com | Engineering fears to tread
pmode tutorial, homebrew OS: http://www.execpc.com/~geezer/os


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

From: "Bjorn Wesen" <[EMAIL PROTECTED]>
Subject: Re: Resuming a program execution after SIGSEGV excep.
Date: Tue, 19 Jan 1999 22:31:25 +0100

Richard Jones wrote in message ...
>This is one of the best kept secrets of
>signal handlers. There are in fact extra

ssssshhhhhh!!!! don't tell everyone :)

/bjorn




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

From: Paul Hamshere <[EMAIL PROTECTED]>
Subject: Inoffensive bug in mm/page_alloc.c
Reply-To: Paul Hamshere <[EMAIL PROTECTED]>
Date: Tue, 19 Jan 1999 21:37:06 GMT

Hi
I was trawling through the mm sources to try and understand how linux tracks the
use of pages of memory, how kmalloc and vmalloc work, and I think there is a bug
in the kernel (2.0) - it doesn't affect anything, only waste a tiny amount of
memory....does anyone else think it looks wrong?
The problem is in free_area_init where it allocates the bitmaps - I think they
are twice the size they need to be.
The dodgy line is

            bitmap_size = (end_mem - PAGE_OFFSET) >> (PAGE_SHIFT + i );

which I think should be 

            bitmap_size = (end_mem - PAGE_OFFSET) >> (PAGE_SHIFT + i + 1);

because the bitmap refers to adjacent pages.
I've changed my kernel to the second line and it seems to work.
Paul


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

unsigned long free_area_init(unsigned long start_mem, unsigned long end_mem)
{
      mem_map_t * p;
      unsigned long mask = PAGE_MASK;
      int i;

      /*
       * select nr of pages we try to keep free for important stuff
       * with a minimum of 48 pages. This is totally arbitrary
       */
      i = (end_mem - PAGE_OFFSET) >> (PAGE_SHIFT+7);
      if (i < 24)
            i = 24;
      i += 24;   /* The limit for buffer pages in __get_free_pages is
                * decreased by 12+(i>>3) */
      min_free_pages = i;
      free_pages_low = i + (i>>1);
      free_pages_high = i + i;
      start_mem = init_swap_cache(start_mem, end_mem);
      mem_map = (mem_map_t *) start_mem;
      p = mem_map + MAP_NR(end_mem);
      start_mem = LONG_ALIGN((unsigned long) p);
      memset(mem_map, 0, start_mem - (unsigned long) mem_map);
      do {
            --p;
            p->flags = (1 << PG_DMA) | (1 << PG_reserved);
            p->map_nr = p - mem_map;
      } while (p > mem_map);

      for (i = 0 ; i < NR_MEM_LISTS ; i++) {
            unsigned long bitmap_size;
            init_mem_queue(free_area+i);
            mask += mask;
            end_mem = (end_mem + ~mask) & mask;
/* commented out because not correct ?? PH
            bitmap_size = (end_mem - PAGE_OFFSET) >> (PAGE_SHIFT + i);
*/
            bitmap_size = (end_mem - PAGE_OFFSET) >> (PAGE_SHIFT + i +1);
            bitmap_size = (bitmap_size + 7) >> 3;
            bitmap_size = LONG_ALIGN(bitmap_size);
            free_area[i].map = (unsigned int *) start_mem;
            memset((void *) start_mem, 0, bitmap_size);
            start_mem += bitmap_size;
      }
      return start_mem;
}



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

From: "Bjorn Wesen" <[EMAIL PROTECTED]>
Subject: Re: linux shared libs
Date: Tue, 19 Jan 1999 22:19:46 +0100

Wai Wu wrote in message <01be43e3$a35a8bd0$64640a64@station0000>...
> Does any one know if a shared lib gets loaded by two different processes,
>how many copys of it (e.g. code) are actually loaded into memory?


One, of course. Since CPU's got MMU's, there is no reason whatsoever to keep
more than one copy of the same data in memory at the same time. Not even
when a process forks and duplicates it's memory, does an actual copy
happen - instead those pages are marked read-only and aren't copied until
they actually need to differ due to one of the processes writing to it. Even
Windows DLL's gets this right... (I think :)

/Bjorn




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

From: "Bjorn Wesen" <[EMAIL PROTECTED]>
Subject: Re: Linux Sound Engine
Date: Tue, 19 Jan 1999 22:28:48 +0100

Peter Steiner wrote in message ...
>What about using a kernel-daemon? It can easily open (and block at)
>/dev/dsp, it has its own context (AFAIK the fpu is automatically saved
>(but only if really needed)) and it can deal with that /dev/leaf.


One reason you get bad performance with power-hungry kernel drivers is
because kernel-mode code isn't pre-empted. But if you make sure you don't
run the mixer for more than X ms at a time, it's more ok although you'll
probably end up turning Linux into Windows if you keep doing stuff this way.

The kernel is absolutely no place for such a mixer, really.

It can be done almost totally in user-mode. You just write a kernel device
which pipes data from /dev/leaf into for example /dev/leaf0-9 depending on
how many processes have opened /dev/leaf. The user-land mixer has opened
/dev/leaf0 to leaf9 before and is "listening" on those streams, mixing them,
and writing them to the real /dev/dsp or whatever.

The kernel-mode code required for that wouldn't be much and isn't difficult
to write.

/Bjorn Wesen




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

From: gpasa <[EMAIL PROTECTED]>
Subject: Re: pre7 and 3dfx/glide/Mesa
Date: Mon, 18 Jan 1999 23:40:46 +0100

"Frank T. Lofaro" wrote:

> 
> Since your post doesn't give any more description of the problem,
> don't expect it to get fixed soon, or possibly ever.
> 
> You really need to give more information, such as:

Right, I'm very sorry to have missed all that stuff !
 
> What DOES happen? Does it hang? Segfault? Program just exits? Cause
> the system to hang, or reboot? Run with a black screen? Put up garbage
> on the screen? Colors all wrong? Parts of screen missing?

The screen turned black and the system seemed to hang. I had to hard
reboot.
 
> What version of Mesa? What version of Glide? What 3dfx card you have?
> What other apps? Did you compile any of them yourself, and if so, with
> what compiler version?

I have a Voodoo 2 (Diamond Monster 2) card (8M) with an ATI XPert@Play
8M.
I have Mesa-3.0 and glide 5.3 glibc version. My compiler is gcc 2.7.2.3
with glibc. And on kernels starting from pre5, until pre4 everything is
fine.
On bootup there are no errors. Only when trying to build the frame
buffer
stuff I am unable to boot up correctly. There is a bit of garbage on
startup
after the LILO  prompt, even if I don't select a vga text mode.

All the apps running on Mesa-glide have problems (Mame, quake, ...)
 
I've tried to build the kernels with varying options selected, but
nothing can make it better. I've even tried with the ac patches (up to
ac7).

> Did you change any of the kernel config options? Does it detect
> different hardware or hardware settings? Do you get any syslog errors?
> When it boots? When you run 3dfx/Mesa/Glide apps?


-- 
Sincerely yours,
                                Pasa Guglielmo
==================================================================
¦ homepage: http://www.omedia.ch/pages/gpasa/                    ¦
¦----------------------------------------------------------------¦
¦ e-mail  : [EMAIL PROTECTED]       ¦  tel. :  +41 (0)24 485 50 40 ¦
¦ mailing : Pasa Guglielmo        ¦  fax  :  +41 (0)24 485 50 44 ¦
¦           Rte des Cases 17A     ¦                              ¦      
¦        CH-1890 St-Maurice       ¦  prof.: physicist            ¦      
¦           (Switzerland)         ¦                              ¦      
==================================================================
. 

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

From: [EMAIL PROTECTED] (Leslie Mikesell)
Crossposted-To: comp.os.linux.development.apps,comp.os.linux.setup
Subject: Re: Registry for Linux - Bad idea
Date: 14 Jan 1999 15:23:18 -0600

In article <[EMAIL PROTECTED]>,
George MacDonald  <[EMAIL PROTECTED]> wrote:

>> >> - $HOME/etc/ seems to me to be most sensible, as it agrees with the use
>> >>of /etc/ for "global" configuration.
>> >
>> >I like that also.
>> >
>> >One thing that concerns me a bit about this discussion: it sounds as if you
>> >intend to handle system and application configuration with the same tools.
>> >
>> >Please don't.
>> 
>> Why not?  Do you want the system administrator to have to learn 2 new
>> and different ways of doing things instead of just one?  I was hoping
>> this would be a way that would encompass both.
>
>Developers, End Users, System Administrators all view the configuration
>issue from different perspectives. If he is raising an issue from
>a perspective other that the ones I'm used to(mostly developer, sometimes
>administrator), then I think it important that we listen and understand.
>
>I am concerned that we improve things for all participants, and not
>improve one group at the expense of another. In particular I don't
>want to force users/admin's/developers to change, I would prefer
>to offer them something that they will want. Of course this is
>easier said than done.

Developers should be able to take care of themselves and tend to be
just an unusual case of end user most of the time.  The unusual
part is that they want to be able to control their own machines.
A more typical end user doesn't want to have to set anything
himself and the sysadmin (a) doesn't want to have to visit the
machine or talk the user through a setting and (b) only wants
to individually set things that are different from one machine
to the next.  From the admin perspective I would prefer that
machines just pick up their defaults automatically unless someone
who knows what they are doing specifically sets them up for
local overrides.  I think this suits the typical office/network
end user as well, and the developer who knows enough to be
dangerous can undo it to keep everyone happy.  However, I had
been thinking in terms of a new automatic servics for this.
Perhaps it really maps into what an NT domain controller does
with its login scripts as the clients come up.  Maybe obtaining
network-set defaults belongs in samba-related code as part
of a client initiated domain login and just made to work across
platforms.  The get/set library routines would be mapped to
whatever this step decided.

  Les Mikesell
   [EMAIL PROTECTED]

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

From: [EMAIL PROTECTED] (Frank McGirt)
Subject: Mapping driver buffer to user space
Date: Wed, 20 Jan 1999 03:50:57 GMT

I am developing a driver for RH 5.2 for a PCI-based adapter which
supports DMA.  I have allocated a driver buffer using __get_dma_pages
and I would like to map this buffer to user space so as to be directly
accessible by a user process.

Has anyone seen any sample code to do this??   I would appreciate any
hints and/or help.

Frank McGirt
[EMAIL PROTECTED]


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

From: [EMAIL PROTECTED] (Fredrik Lundholm)
Subject: Re: Linux on an early Sun 4 Sparc????
Date: 19 Jan 1999 22:30:00 GMT

In article <782v21$i2m$[EMAIL PROTECTED]>,
Robert D. Keys <[EMAIL PROTECTED]> wrote:
>Is there any kind of developmental work in Linux done for early Sparc
>boxes like the ancient and venerable Sun 4/200 series or 3/xxx series
>68K machines.  I was thinking I though I had heard of something like that,
>and have this pair of old Suns....sitting......

SUN3 and SUN3X linux development is in a very early stage, as for sun4 
you could perhaps try the latest ultrapenguin distribution and give it
a shot, don't know about VME support though. (I think it was this
guy called 'Sun Weenie' that did original sun4 work, however he
mysteriously dissapeared but some patches got in in late linux 2.1
kernels i think)

>Any insights appreciated.

Short, Sun3 is not usable unless you want to do kernel-hacking
yourself, userland is regular m68k so once finished it would be
interesting. Sun4 might work today with ultrapenguin and regular Sparc
V7 userland.

>
>Bob Keys
>
>

Wfr
Fredrik Lundholm


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

From: [EMAIL PROTECTED] (David T. Blake)
Subject: Re: Will 2.2.x support removable medias better?
Date: 19 Jan 1999 14:11:28 -0800

[EMAIL PROTECTED] (Tony Hoyle) writes:

>On Tue, 19 Jan 1999 07:22:54 +0100, [EMAIL PROTECTED] wrote:

>>With 2.0.x and removable medias you have to care about mount/umount
>>or use mtools if the media has a FAT fs.

>>supermount addresses this issue in older kernels. Now I wonder how 2.2.x will
>>care for removable media?

>autofs has been around for ages and does exactly this in both 2.0 and
>2.2:
...
>Then a 'cd' to /misc/cdrom automatically mounts the drive and unmounts
>it a minute after you stop using it.

Autofs, while being cool, is no supermount.

Autofs will not allow a removable media to be removed if there
is a process accessing that device.

For example, load a cdrom, cd /cdrom, and
then startx

You cannot unmount the cd with autofs. It is stuck in
the drive until you stop X and change out of the directory.

With supermount, you can sit in /cdrom and still change the
cd (or floppy). That is the difference. 

-- 
Dave Blake
[EMAIL PROTECTED]

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

From: [EMAIL PROTECTED] (John Reiser)
Crossposted-To: comp.os.linux.hardware
Subject: Re: LILO and 10 GB drives
Date: Wed, 20 Jan 1999 04:27:31 GMT

Last spring and summer, I found good information on BIOS handling of
large disks at

        http://www.phoenix.com/techs/specs.html

specifically edd2c.pdf , which describes the BIOS INT 13h extensions.

Also, you may wish to look at

        ftp://ftp.teleport.com/pub/users/jreiser/mbr03.tgz
        ftp://ftp.teleport.com/pub/users/jreiser/e2boot4c.tgz

which are a Master Boot Record and ext2fs boot block.  Each is
self-contained (takes _no_ extra space other than the 512-byte or
1024-byte place officially allotted) and deals with disk capacity upto
2**40 or 2**41 bytes (2**31 or 2**32 sectors of 512 bytes).  The edd2c
spec allows for 2**64 sectors.
[EMAIL PROTECTED]

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

From: "Robert D. Keys" <[EMAIL PROTECTED]>
Subject: Linux on an early Sun 4 Sparc????
Date: 19 Jan 1999 21:56:17 GMT

Is there any kind of developmental work in Linux done for early Sparc
boxes like the ancient and venerable Sun 4/200 series or 3/xxx series
68K machines.  I was thinking I though I had heard of something like that,
and have this pair of old Suns....sitting......

Any insights appreciated.

Bob Keys



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

From: Derek Piper <[EMAIL PROTECTED]>
Subject: Re: K6-2 300 Problem
Date: Tue, 19 Jan 1999 22:54:24 +0000
Reply-To: [EMAIL PROTECTED]

Marcos Silva wrote:
> 
> I 'm running linux now.  When I start with dos and execute loadlin form HD it
> start.
> 
> "loadlin vmlinuz root=/dev/hda5".
> 
> If  i put the vmlinuz in the floppy disk and boot my computer by floppy.....
> LOCK.
> 
> Marco Vannini wrote:
> 
> > I have a K6-2 300 oc. 333 (asus txp4)  with RH 5.0 (kernel 2.0.32) and all
> > works fine!!
> 
> --
> Marcos Ferreira da Silva
> Centrio Universitario do Triangulo
> Uberlandia - MG
> Brazil

I too have an AMD K6-2/300, 64MB RAM .. works great with RedHat 5.2 and kernel
2.0.36 .. I do select the CPU type of 'Pentium' (or 586) which is what the cpu
is compatible with. 686 is for Pentium Pros. Any other lockups may be other
hardware related issues but the processor works with Linux with no problems. I
have left this computer on for 30 days or more at a go with no problems.

        Derek.

-- 
.--= Derek Piper =----------------------------------------------------------.
|  [EMAIL PROTECTED]                            http://welcome.to/delsworld/  |
|---------------------------------------------------------------------------|
|   If a train station is where the train stops, what is a work station?    |
`--= ICQ# 20124379 =--------------------------------------------------------'

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


** 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