- 16 Feb, 2001 1 commit
-
-
Tom Lane authored
to generate unnecessarily stupid code. Tweak macro to describe a series of store-constant ops, not store/load/store/load/store/load/store.
-
- 10 Feb, 2001 1 commit
-
-
Tom Lane authored
Man, this brings back some old memories ...
-
- 02 Feb, 2001 1 commit
-
-
Bruce Momjian authored
-
- 24 Jan, 2001 1 commit
-
-
Bruce Momjian authored
-
- 20 Jan, 2001 1 commit
-
-
Tom Lane authored
whitespace is unimportant in assembly code. Also, move VAX definition of typedef slock_t to port header files to be like all the other ports. Note that netbsd.h and openbsd.h are now identical, and I rather think that freebsd.h is broken in the places where it doesn't agree --- but I'll leave it to the freebsders to look at that.
-
- 19 Jan, 2001 6 commits
-
-
Bruce Momjian authored
-
Bruce Momjian authored
-
Bruce Momjian authored
-
Bruce Momjian authored
-
Bruce Momjian authored
-
Bruce Momjian authored
/* * Standard __asm__ format: * * __asm__( * "command;" * "command;" * "command;" * : "=r"(_res) return value, in register * : "r"(lock) argument, 'lock pointer', in register * : "r0"); inline code uses this register */
-
- 18 Jan, 2001 1 commit
-
-
Bruce Momjian authored
-
- 30 Dec, 2000 1 commit
-
-
Tom Lane authored
for Alpha gcc case. For Alpha non-gcc case, replace use of __INTERLOCKED_TESTBITSS_QUAD builtin with __LOCK_LONG_RETRY and __UNLOCK_LONG. The former does not execute an MB instruction and therefore was guaranteed not to work on multiprocessor machines. The LOCK_LONG builtins produce code that is the same in all essential details as the gcc assembler code.
-
- 29 Dec, 2000 1 commit
-
-
Tom Lane authored
assume that TAS() will always succeed the first time, even if the lock is known to be free. Also, make sure that code will eventually time out and report a stuck spinlock, rather than looping forever. Small cleanups in s_lock.h, too.
-
- 03 Dec, 2000 1 commit
-
-
Thomas G. Lockhart authored
-
- 28 Nov, 2000 1 commit
-
-
Tom Lane authored
IPC key assignment will now work correctly even when multiple postmasters are using same logical port number (which is possible given -k switch). There is only one shared-mem segment per postmaster now, not 3. Rip out broken code for non-TAS case in bufmgr and xlog, substitute a complete S_LOCK emulation using semaphores in spin.c. TAS and non-TAS logic is now exactly the same. When deadlock is detected, "Deadlock detected" is now the elog(ERROR) message, rather than a NOTICE that comes out before an unhelpful ERROR.
-
- 22 Oct, 2000 1 commit
-
-
Peter Eisentraut authored
* Makefile: Add more standard targets. Improve shell redirection in GNU make detection. * src/backend/access/transam/rmgr.c: Fix incorrect(?) C. * src/backend/libpq/pqcomm.c (StreamConnection): Work around accept() bug. * src/include/port/unixware.h: ...with help from here. * src/backend/nodes/print.c (plannode_type): Remove some "break"s after "return"s. * src/backend/tcop/dest.c (DestToFunction): ditto. * src/backend/nodes/readfuncs.c: Add proper prototypes. * src/backend/utils/adt/numutils.c (pg_atoi): Cope specially with strtol() setting EINVAL. This saves us from creating an extra set of regression test output for the affected systems. * src/include/storage/s_lock.h (tas): Correct prototype. * src/interfaces/libpq/fe-connect.c (parseServiceInfo): Don't use variable as dimension in array definition. * src/makefiles/Makefile.unixware: Add support for GCC. * src/template/unixware: same here * src/test/regress/expected/abstime-solaris-1947.out: Adjust whitespace. * src/test/regress/expected/horology-solaris-1947.out: Part of this file was evidently missing. * src/test/regress/pg_regress.sh: Fix shell. mkdir -p returns non-zero if the directory exists. * src/test/regress/resultmap: Add entries for Unixware.
-
- 08 Oct, 2000 1 commit
-
-
Bruce Momjian authored
> > For a while I though it might be because we are using an alpha TAS in > > the spinlock rather than the old semaphore. I replaced our spinlock > > with the standard one and it made no difference. We have been running > > with our spinlock implementation for nearly 2 months on a production > > database now without a hitch, so I think it is ok. Did I ever submit > > any patches for the Alpha spinlock? > > Not that I recall. We did get some advice from some Alpha gurus at DEC > who seemed to think the existing TAS code is OK. What was it that you > felt needed to be improved? The current code uses semaphores, which has the advantage that it works well even on multi-processor machines, but the disadvantage that it is not the fastest way possible. Writing a spinlock on Alpha for SMP machines is very difficult, as you need to deal with memory barriers. A real mess. But then one of the people at Compaq pointed out to us that there is a ready-made routine on Alpha. We implemented it with the two patches below. I ran tests with lots of parallel back-ends and got around a 10% speed increase. I include the two patches. Perhaps some of the other people running Tru64 can have a look at these as well. Cheers, Adriaan Joubert
-
- 05 Jul, 2000 1 commit
-
-
Bruce Momjian authored
PostgreSQL-7.0.2 run on Linux for the Intel-IA64 architecture. It also fixes a bug in the configure scripts that caused configure to fail on the fcntl(F_SETLK) test. This fix triggered a bug in the fcntl(F_SETLK) code of the Linux kernel when used on unix domain sockets resulting in postmaster to segfault immediately after startup. There is a fix available and included in the kernel that will be on SuSE Linux 7.0, but kernels <= 2.2.16 still have this bug. Reinhard Max
-
- 12 Apr, 2000 1 commit
-
-
Bruce Momjian authored
-
- 26 Jan, 2000 1 commit
-
-
Bruce Momjian authored
* Portions Copyright (c) 1996-2000, PostgreSQL, Inc to all files copyright Regents of Berkeley. Man, that's a lot of files.
-
- 16 Dec, 1999 1 commit
-
-
Bruce Momjian authored
backend/Makefiles to be patched could significantly be reduced since they have been adopted to the QNX4 needs. Andreas Kardos
-
- 23 Nov, 1999 1 commit
-
-
Bruce Momjian authored
-
- 18 Nov, 1999 1 commit
-
-
Bruce Momjian authored
-
- 06 Nov, 1999 1 commit
-
-
Bruce Momjian authored
-
- 15 Jul, 1999 1 commit
-
-
Bruce Momjian authored
-
- 13 Jul, 1999 2 commits
-
-
Bruce Momjian authored
-
Bruce Momjian authored
-
- 13 Jun, 1999 1 commit
-
-
Tatsuo Ishii authored
#if defined(__mc68000__) && defined(__linux__) so that other m68k systems(such as NetBSD) will not be affected.
-
- 10 Jun, 1999 1 commit
-
-
Bruce Momjian authored
This patch should enable 6.5 to build on Motorola 68000 architecture. It comes from Roman Hodek <Roman.Hodek@informatik.uni-erlangen.de>.
-
- 13 Apr, 1999 1 commit
-
-
Bruce Momjian authored
-
- 13 Feb, 1999 1 commit
-
-
Bruce Momjian authored
-
- 15 Dec, 1998 1 commit
-
-
Vadim B. Mikheev authored
New code for locking buffer' context.
-
- 31 Oct, 1998 1 commit
-
-
Bruce Momjian authored
-
- 28 Oct, 1998 1 commit
-
-
Bruce Momjian authored
-
- 27 Oct, 1998 1 commit
-
-
Bruce Momjian authored
-
- 02 Oct, 1998 2 commits
-
-
Bruce Momjian authored
-
Bruce Momjian authored
Here's the new diff for getting the NS32K assembly code into the spin-locks. Notice that it's now inline assembler in s_lock.h, rather than seperate code in s_lock.c. It also shrank a little bit... Just rip out the S_LOCK() define and insert the tas() inline function. Please let me know if there are any problems with it. Jon Buller
-
- 01 Oct, 1998 1 commit
-
-
Tom Lane authored
Make default S_LOCK macro more robust against syntax mistakes. (I cleared these changes with David Gould a few days ago.)
-
- 21 Sep, 1998 1 commit
-
-
Bruce Momjian authored
-