Re: Call for port reports
От | Bruce Momjian |
---|---|
Тема | Re: Call for port reports |
Дата | |
Msg-id | 200310260138.h9Q1cQ715263@candle.pha.pa.us обсуждение исходный текст |
Ответ на | Re: Call for port reports (Peter Eisentraut <peter_e@gmx.net>) |
Список | pgsql-hackers |
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_SETtypedef 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 tonon-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 pgman@candle.pha.pa.us | (610) 359-1001+ If your life is a hard drive, | 13 Roberts Road + Christ can be your backup. | Newtown Square, Pennsylvania19073
В списке pgsql-hackers по дате отправления: