Return-Path: owner-postman Received: from localhost.Berkeley.EDU (localhost.Berkeley.EDU [127.0.0.1]) by nobozo.CS.Berkeley.EDU (8.6.9/8.6.3) with SMTP id QAA20714 for postgres-redist; Wed, 14 Sep 1994 16:23:10 -0700 Resent-From: POSTGRES mailing list Resent-Message-Id: <199409142323.QAA20714@nobozo.CS.Berkeley.EDU> Sender: owner-postman@postgres.Berkeley.EDU X-Return-Path: owner-postman Received: from faerie.CS.Berkeley.EDU (faerie.CS.Berkeley.EDU [128.32.37.53]) by nobozo.CS.Berkeley.EDU (8.6.9/8.6.3) with ESMTP id QAA20704 for ; Wed, 14 Sep 1994 16:23:08 -0700 Received: from localhost.Berkeley.EDU (localhost.Berkeley.EDU [127.0.0.1]) by faerie.CS.Berkeley.EDU (8.6.9/8.1B) with SMTP id QAA02312; Wed, 14 Sep 1994 16:23:07 -0700 Message-Id: <199409142323.QAA02312@faerie.CS.Berkeley.EDU> X-Authentication-Warning: faerie.CS.Berkeley.EDU: Host localhost.Berkeley.EDU didn't use HELO protocol From: aoki@cs.berkeley.edu (Paul M. Aoki) To: postgres@postgres.Berkeley.EDU Reply-To: aoki@cs.berkeley.edu (Paul M. Aoki) Subject: patch for libdl/dlReloc.c (ultrix only) Date: Wed, 14 Sep 94 16:23:01 -0700 X-Sender: aoki@postgres.Berkeley.EDU Resent-To: postgres-redist@postgres.Berkeley.EDU X-Mts: smtp Resent-Date: Wed, 14 Sep 94 16:23:09 -0700 Resent-XMts: smtp if you have a mips/ultrix box with the R4400 processor upgrade, e.g., the 5000/50, 5000/150, 5000/260, 5000/280 or the upgraded 5900 server, you must apply the following patch to src/tools/libdl/dlReloc.c in order to make the dynamic loader work. if you have some doubt as to your current processor type, you can do something like % /etc/uerf -R -r 300 | grep 'CPU TYPE' | head -1 to find out. (or bug your sysadmin. do whatever comes naturally.) the patch doesn't seem to be necessary for R2000/R3000 boxes. *** 1.3 1994/03/01 05:42:11 --- dlReloc.c 1994/09/14 20:44:11 *************** *** 19,24 **** --- 19,25 ---- */ #include #include + #include #include "dl.h" #include "dlPriv.h" *************** *** 314,325 **** --- 315,335 ---- PROT_EXEC) == -1) { fprintf(stderr, "dl: fail to protect text of %s\n", dlfile->filename); } + /* flush the caches */ + if (cacheflush((char *)dlfile->textAddress, dlfile->textSize, + BCACHE) != 0) { + fprintf(stderr, "dl: fail to flush text of %s\n", dlfile->filename); + } /* protect jump tables, if any */ while(jmptable) { if (mprotect((char *)jmptable->block, pagesize, PROT_EXEC) == -1) { fprintf(stderr, "dl: fail to protect a jump table of %s\n", dlfile->filename); + } + /* flush the caches */ + if (cacheflush((char *)jmptable->block, pagesize, BCACHE) != 0) { + fprintf(stderr, "dl: fail to flush a jump table of %s\n", dlfile->filename); } jmptable= jmptable->next; } -- Paul M. Aoki | University of California at Berkeley aoki@CS.Berkeley.EDU | Dept. of EECS, Computer Science Division (#1776) | Berkeley, CA 94720-1776 ============================================================================== To add/remove yourself to/from the POSTGRES mailing list: send mail with the subject line ADD or DEL to "postgres-request@postgres.Berkeley.EDU" If this fails, send mail to "post_questions@postgres.Berkeley.EDU" and a human will deal with it. DO NOT post to the "postgres" mailing list. ==============================================================================