Linux PARISC architecture development
 help / color / mirror / Atom feed
* [parisc-linux] PCXS fixes
@ 2001-10-03  8:32 John Marvin
  2001-10-03 16:44 ` Jochen Friedrich
                   ` (2 more replies)
  0 siblings, 3 replies; 6+ messages in thread
From: John Marvin @ 2001-10-03  8:32 UTC (permalink / raw)
  To: parisc-linux

I just committed some PCXS fixes, some of which were based on the ideas
posted here in the last week or so for 720 support.  One new fix is that I
program the Asp interrupts correctly, fixing a bug which was preventing
710's from booting (I think there is at least one person on this list
with such a machine).

However, ls still hangs randomly (actually it is not random, it depends on
which directory the ls is done in).  It gets stuck in a ldcw loop due to
the lock word not being 16 byte aligned.  The problem is that we fixed the
alignment problems for static and dynamic allocations, but the align
attribute is ignored for automatic (stack) allocations. Note that
although ldcw requires 16 byte alignment for correct function, it does
not cause an unaligned fault if the address is not aligned, it just
doesn't work correctly!

Here are some suggested fixes:

    1) Fix the compiler to honor the aligned attribute for stack
    allocations. I'm not sure how difficult this would be. I'm
    not a compiler person, so someone else would have to do this.
    I would guess that this problem is in the machine independent
    part of the compiler. I'm not sure whether or not it would
    be considered a bug. It might be worth writing a test for
    the 386 version of gcc, and if it fails, report the "bug" and
    see what happens ...

    2) Change the lock structure to have 4 contiguous lock words, each
    initialized to 1.  Then the lock code can round the address up to the
    nearest 16 byte aligned address and use that for the semaphore.  If we
    choose this solution we can just get rid of the aligned attribute,
    since it would no longer serve any purpose.


John Marvin
jsm@fc.hp.com

^ permalink raw reply	[flat|nested] 6+ messages in thread
* Re: [parisc-linux] PCXS fixes
@ 2001-10-03 11:58 Jim Buttafuoco
  0 siblings, 0 replies; 6+ messages in thread
From: Jim Buttafuoco @ 2001-10-03 11:58 UTC (permalink / raw)
  To: John Marvin, parisc-linux

John,

I have a couple of 710's and would love to test if you can provide me 
with a kernel to net boot from.

Jim


> I just committed some PCXS fixes, some of which were based on the 
ideas
> posted here in the last week or so for 720 support.  One new fix is 
that I
> program the Asp interrupts correctly, fixing a bug which was 
preventing
> 710's from booting (I think there is at least one person on this list
> with such a machine).
> 
> However, ls still hangs randomly (actually it is not random, it 
depends on
> which directory the ls is done in).  It gets stuck in a ldcw loop due 
to
> the lock word not being 16 byte aligned.  The problem is that we 
fixed the
> alignment problems for static and dynamic allocations, but the align
> attribute is ignored for automatic (stack) allocations. Note that
> although ldcw requires 16 byte alignment for correct function, it does
> not cause an unaligned fault if the address is not aligned, it just
> doesn't work correctly!
> 
> Here are some suggested fixes:
> 
>     1) Fix the compiler to honor the aligned attribute for stack
>     allocations. I'm not sure how difficult this would be. I'm
>     not a compiler person, so someone else would have to do this.
>     I would guess that this problem is in the machine independent
>     part of the compiler. I'm not sure whether or not it would
>     be considered a bug. It might be worth writing a test for
>     the 386 version of gcc, and if it fails, report the "bug" and
>     see what happens ...
> 
>     2) Change the lock structure to have 4 contiguous lock words, each
>     initialized to 1.  Then the lock code can round the address up to 
the
>     nearest 16 byte aligned address and use that for the semaphore.  
If we
>     choose this solution we can just get rid of the aligned attribute,
>     since it would no longer serve any purpose.
> 
> 
> John Marvin
> jsm@fc.hp.com
> 
> 
> _______________________________________________
> parisc-linux mailing list
> parisc-linux@lists.parisc-linux.org
> http://lists.parisc-linux.org/cgi-bin/mailman/listinfo/parisc-linux
> 
> 

^ permalink raw reply	[flat|nested] 6+ messages in thread

end of thread, other threads:[~2001-10-18 16:19 UTC | newest]

Thread overview: 6+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2001-10-03  8:32 [parisc-linux] PCXS fixes John Marvin
2001-10-03 16:44 ` Jochen Friedrich
2001-10-06  8:41 ` Albert Strasheim
2001-10-11 19:41   ` Albert Strasheim
2001-10-18 16:17 ` Michael S.Zick
  -- strict thread matches above, loose matches on Subject: below --
2001-10-03 11:58 Jim Buttafuoco

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox