Peter Eisentraut wrote:
> Bruce Momjian writes:
> 
> > I can't certify the following platform because it doesn't recognize our
> > spinlock code.  Would you run src/tools/ccsym and report back the
> > symbols you have.  Do you not have __powerpc__ defined?
> 
> The way I read his report (a little tricky to find the divisions) is that
> ppc has passed and parisc64 doesn't have spinlock code, which sounds a
> lot more credible.

Oh, I see now --- sorry.

Wow, I looked in hpux.h and saw:
        
        #if defined(__hppa)
        
        #define HAS_TEST_AND_SET
        typedef struct
        {
            int         sema[4];
        } slock_t;
        
        #ifndef         BYTE_ORDER
        #define         BYTE_ORDER      BIG_ENDIAN
        #endif

and I see in s_lock.h:
        
        #if defined(__hppa)
        /*
         * HP's PA-RISC
         *
         * Note that slock_t on PA-RISC is a structure instead of char
         * (see include/port/hpux.h).
         *
         * a "set" slock_t has a single word cleared.  a "clear" slock_t has
         * all words set to non-zero. tas() is in tas.s
         */
        
        #define S_UNLOCK(lock) \
            do { \
                volatile slock_t *lock_ = (volatile slock_t *) (lock); \
                lock_->sema[0] = -1; \
                lock_->sema[1] = -1; \
                lock_->sema[2] = -1; \
                lock_->sema[3] = -1; \
            } while (0)
        
        #define S_LOCK_FREE(lock)   ( *(int *) (((long) (lock) + 15) & ~15) != 0)
        
        #endif   /* __hppa */

Can Linux handle this?  Can you copy the stuff from hpux.h and see if
that works for Linux?

We can't mark this port as working unless we have spinlocks.

-- 
  Bruce Momjian                        |  http://candle.pha.pa.us
  [EMAIL PROTECTED]               |  (610) 359-1001
  +  If your life is a hard drive,     |  13 Roberts Road
  +  Christ can be your backup.        |  Newtown Square, Pennsylvania 19073

---------------------------(end of broadcast)---------------------------
TIP 8: explain analyze is your friend

Reply via email to