aspgasd@cid.aes.doe.ca (Alain St-Denis) (09/21/90)
Ok. Here's the scenario: I want to have one swap partition on a different drive than my drive 0. So I change SWAPDEV in /usr/sysgen/system, I adjust /dev/swap AND /dev/rswap accordingly and I rebuild the kernel. Then I reboot my machine and the swap is still on xyl0d0s1. I want it on xyl0d1d1. What am I doing wrong? We're running a few 4D/240S. By the way, just for the hell of it, I tried the same procedure on a 4D/20 and it worked (for a different partition on the same disk). Also, I thought that it would have been nice to have a miniroot that would start from a partition of our choice. So I poked around in /usr/sysgen and found these lines in the kernel config file: /* Setup the miniroot variable for kernel miniroot configuration */ #ifdef MINIROOT u_char miniroot = 1; #else u_char miniroot = 0; #endif So I naively defined MINIROOT (in CCOPTS) in the system config file and tried the kernel I built from it (with ROOTDEV & all changed). But, guess what, it didn't work. The thing starts but complains about not finding devnm (yes, I know what devnm does) or something. I even poked the unix.IP6 file in mr to replace rootdev & all with the values I wanted and I got the same complaints. So, obviously, there's more to it that just changing the major/minor device numbers and rebuilding the kernel. Could someone explain to me what I'm missing here? It would be very much appreciated. I may be stubborn and childish about the whole thing but I REALLY want the swap where I want it! :-) -- Alain St-Denis Centre informatique de Dorval Environnement Canada astdenis@cid.aes.doe.CA (514) 421-4697
aspgasd@cid.aes.doe.CA (Alain St-Denis) (09/25/90)
Ok, here's the scenario: I want to have my default swap partition on another drive than the one occupied by root. So, I change SWAPDEV in /usr/sysgen/system accordingly and I remake /dev/swap and /dev/rswap. I then rebuild the kernel. Everything seems fine, the values have been changed in the kernel. So I reboot and guess what, it still uses the old default swap partition (I want xyl0d1s1 and get xyl0d0s1). Anybody have an idea what is wrong here? By the way, this was done on a 4D/240S. I tested the same procedure with a 4D/20 (a different partition on the same disk) and it worked... Also, since we want to move our swap space and use the whole disk, we figured that it would be a good idea to have a miniroot that starts from a partition of our choice. So I naively defined the constant MINIROOT in /usr/sysgen/system (CCOPTS). Obviously, that's not all there is to it because when I tried this kernel, the machine complained about not finding devnm (yes, I know what devnm is). I even tried to poke the values I wanted in the miniroot unix.IP6 file and got the same error. I'm aware of the fact that we can add swap space. But that's not what we want. We want to move it. Any idea, anyone (SGI maybe)? (Note: I mailed something about this directly to info-iris but for some reason it was not re-submitted to usenet. So here it is.) -- Alain St-Denis Centre informatique de Dorval Environnement Canada astdenis@cid.aes.doe.CA
wiltse@sgi.com (Wiltse Carpenter) (09/26/90)
In article <1990Sep25.132534.16796@cid.aes.doe.CA> aspgasd@cid.aes.doe.CA (Alain St-Denis) writes: >Ok, here's the scenario: > >I want to have my default swap partition on another drive than the one >occupied by root. So, I change SWAPDEV in /usr/sysgen/system >accordingly and I remake /dev/swap and /dev/rswap. I then rebuild the >kernel. Everything seems fine, the values have been changed in the >kernel. So I reboot and guess what, it still uses the old default swap >partition (I want xyl0d1s1 and get xyl0d0s1). Anybody have an idea >what is wrong here? By the way, this was done on a 4D/240S. I tested >the same procedure with a 4D/20 (a different partition on the same >disk) and it worked... You need to unset the non-volatile ram variable "root" in the prom. You can do this by getting into prom manual mode and typing: unsetenv root If root is set, swap automatically gets placed at partition root+1. On the 4D/20 and 4D/25, root is not saved in the n.v. ram. It still works if you set before you boot though. > >Also, since we want to move our swap space and use the whole disk, we >figured that it would be a good idea to have a miniroot that starts >from a partition of our choice. So I naively defined the constant >MINIROOT in /usr/sysgen/system (CCOPTS). You probably don't want to build a mini-root kernel at all. In fact, I'm sure you don't. The mini-root is used for system software installation and crash recovery. In both of these cases a complete filesystem is copied from a tape or remote machine onto the swap partition and booted. To boot the mini-root on an alternate disk you would have to manually copy it there and specify an alternate root on the boot command like this: sash>> boot -f dksc(0,5,0)unix.IP6 root=dks0d5s0 >Any idea, anyone (SGI maybe)? You are treading on what might best be termed ``Advanced Configurations'' here. Good luck. -Wiltse
mitch@sgi.com (Thomas Mitchell) (10/23/90)
In article <1990Sep25.234622.21252@odin.corp.sgi.com> wiltse@sgi.com (Wiltse Carpenter) writes: * In article <1990Sep25.132534.16796@cid.aes.doe.CA> aspgasd@cid.aes.doe.CA (Alain St-Denis) writes: * > * >I want to .... swap partition .... * You need to unset the non-volatile ram variable "root" in the prom. You * can do this by getting into prom manual mode and typing: * * unsetenv root Hmmmmmmm...... Re: Advanced Configurations Please. 1) keep a notebook. Log all changes. Use a was/is/why triplet to ensure the ability to return to a sane set of values. Review and summarize the notes often. 2) save factory values in the notebook prior to changing anything. If the files are on line print them to paper. Remember, if you have a problem you will not be able to read them :-) 3) Back up and verify your backups prior to any upgrade. There is always a chance that some general clean up by SGI, may step on your local changes. Back up in ways you understand and can verify. Always back up your own work. 4) Have a back up system administrator. Work with this person at all times. Share information and discuss changes prior to doing. 5) Plan to have extra time when installing any option or upgrade. Verify devices and mounts prior to installing software. 6) Avoid going up the down stair case. The more users and more critical the machine the more important it is to avoid special case handling. Do read the book (Up the Down Staircase) it is funny and has nothing to do with computers. 7) Go for it. -- -- Thomas P. Mitchell -- mitch@sgi.com or mitch%relay.csd@sgi.com "All things in moderation; including moderation."
sabbagh@acf5.NYU.EDU (sabbagh) (10/23/90)
In article <9010201727.AA15683@UZI.MIT.EDU>: >I'm trying to build GNU EMACS on a PI. I have successfully built it before >on a 4D80, but here I've not been able to successfully do the final temacs >statement -- which the PROBLEMS file tells me is because I have insufficient >swap space. This seems very possible to me, but I don't know how to increase >the amount of swap space I have to complete the compilation. >Any descriptions of how swap space works would be appreciated. >Thanks, >Eugene Gholz >(eugholz@athena.mit.edu) I had this very problem this morning! I have concluded that it is yet another "feature" of IRIX 3.3.1. In the past, I was able to build emacs 18.52 on a Personal Iris under 3.2. Unfortunately, due to an extremely bad installation procedure (another story) and minimal back up (my fault) I had to rebuild emacs under 3.3.1; there was not enough swap space. The most reasonable explanation for this is that 3.3.1 takes up more memory that 3.2, hence you run out of swap space. Keep in mind that the Iris gives any process as much memory as it needs; there are no limits placed on processes. Unfortunately, I have no idea of how to fix this problem, short of buying another disk and assigning more swap space on it. I doubt that you can nfs-mount a swap partition. Any ideas, guys? Hadil G. Sabbagh E-mail: sabbagh@cs.nyu.edu Voice: (212) 998-3125 Snail: Courant Institute of Math. Sci. 251 Mercer St. New York,NY 10012 "No talking to invisible people." - Sign in Top Dog, Durant Ave., Berkeley Disclaimer: This is not a disclaimer.
scotth@harlie.corp.sgi.com (Scott Henry) (10/24/90)
In article <1308@acf5.NYU.EDU>, sabbagh@acf5.NYU.EDU (sabbagh) writes: |> |> In article <9010201727.AA15683@UZI.MIT.EDU>: |> >I'm trying to build GNU EMACS on a PI. I have successfully built it before |> >on a 4D80, but here I've not been able to successfully do the final temacs |> >statement -- which the PROBLEMS file tells me is because I have insufficient |> >swap space. This seems very possible to me, but I don't know how to increase |> >the amount of swap space I have to complete the compilation. |> >Any descriptions of how swap space works would be appreciated. |> >Thanks, |> >Eugene Gholz |> >(eugholz@athena.mit.edu) |> |> I had this very problem this morning! I have concluded that it is yet |> another "feature" of IRIX 3.3.1. In the past, I was able to build |> emacs 18.52 on a Personal Iris under 3.2. Unfortunately, due to an |> extremely bad installation procedure (another story) and minimal back up |> (my fault) I had to rebuild emacs under 3.3.1; there was not enough |> swap space. I think that I should have posted, instead of just e-mailing so as to stop the propogation of rumours. Here's the scoop on GNU Emacs and Irix 3.3+ (a subset of something I posted a month or so ago): Between 3.2.* and 3.3, the loader no longer ignored errors in the a.out header that GNU Emacs took advantage of. I am told that that was un-done in 3.3.1. It mostly meant that a _stripped_ 3.2 binary would fail to load under 3.3, an unstripped one would appear to work fine. In addition, a change was made in libc.a for POSIX compliance: getwd() was defined, but in terms of getcwd() (or something like that). Emacs assumes by default that a system doesn't have getcwd(), and defines one interms of getwd(). Hence, an inifinite recursion loop is generated, and Emacs (temacs) core-dumps when it hits process limits while building the final executable (xemacs & emacs-18.55.??). 2 solutions: 1) Get 18.56 (should be available any day now, I understand) -- I tested it to ensure that it compiles out-of-the-box under 3.3.1. 2) Add the following lines to either .../src/config.h or .../src/m-iris-4d.h: /* * Irix 3.3 defines this, and causes an infinite loop when trying to dump. */ #define HAVE_GETWD and (if you are running 3.3 instead of 3.3.1), apply the following patch to .../src/unexmips.c (a 1-line change): *** unexmips.c.orig Thu Jan 12 16:14:05 1989 --- unexmips.c Mon Jul 30 22:10:10 1990 *************** *** 255,261 **** rdata_section->s_size = data_start - DATA_START; data_section->s_vaddr = data_start; data_section->s_paddr = data_start; ! data_section->s_size = brk - DATA_START; data_section->s_scnptr = rdata_section->s_scnptr + rdata_section->s_size; vaddr = data_section->s_vaddr + data_section->s_size; scnptr = data_section->s_scnptr + data_section->s_size; --- 255,261 ---- rdata_section->s_size = data_start - DATA_START; data_section->s_vaddr = data_start; data_section->s_paddr = data_start; ! data_section->s_size = brk - data_start; data_section->s_scnptr = rdata_section->s_scnptr + rdata_section->s_size; vaddr = data_section->s_vaddr + data_section->s_size; scnptr = data_section->s_scnptr + data_section->s_size; *** s-irix3_3.h.orig Mon Jul 30 22:10:10 1990 --- s-irix3_3.h Mon Jul 30 23:04:30 1990 *************** -- Scott Henry <scotth@sgi.com> / Traveller on Dragon Wings Information Services, / Help! My disclaimer is missing! Silicon Graphics, Inc / 'Under-achiever and proud of it!' -- Bart Simpson