Eskimo North


          [Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

          Re: WWW Linux Sparc-32 SMP


          • To: Anton Blanchard <anton@linuxcare.com>
          • Subject: Re: WWW Linux Sparc-32 SMP
          • From: Robert Dinse <nanook@eskimo.com>
          • Date: Wed, 21 Jun 2000 18:49:46 -0700 (PDT)
          • cc: outages-list@eskimo.com, linux-kernel@vger.rutgers.edu, ericj@eskimo.com, snocat@eskimo.com
          • In-Reply-To: <20000622104905.A702@linuxcare.com>
          • Resent-Date: Wed, 21 Jun 2000 18:49:59 -0700
          • Resent-From: outages-list@eskimo.com
          • Resent-Message-ID: <"QWp3w1.0.K13.53NKv"@mx1>
          • Resent-Sender: outages-list-request@eskimo.com

          
               I am very sad to report, it did not change the behavior at all.  After
          booting and mounting the swap, the system skipped all of the single user init
          stuff and went immediately into run level 3, which failed miserably without
          file systems being mounted, network interfaces being turned up, and all the
          other things that normally happen.  Then the system went into spin_lock
          deadlock just like before.  In short, no change in behavior whatsoever. 
          
          On Thu, 22 Jun 2000, Anton Blanchard wrote:
          >  
          > >      To put it mildly, it did not work on my SS-10 with Hypersparc.  It is
          > > VERY freaky.  The first time I tried to boot it would hang when it tried to 
          > > add swap.  I hadn't stripped vmlinux yet, so I went and tried that, then it 
          > > got past adding swap but freaked when it should have run the init scripts.
          > 
          > Yes this was my fault. Hypersparc doesn't have context tags on its icache
          > so we must flush it each time we change contexts.
          > 
          > Cheers,
          > Anton
          > 
          > --- linux/arch/sparc/mm/srmmu.c	Thu Jun 22 08:45:28 2000
          > +++ linux_sparc32/arch/sparc/mm/srmmu.c	Thu Jun 22 10:43:17 2000
          > @@ -88,6 +88,8 @@
          >  int viking_mxcc_present = 0;
          >  spinlock_t srmmu_context_spinlock = SPIN_LOCK_UNLOCKED;
          >  
          > +int is_hypersparc;
          > +
          >  /*
          >   * In general all page table modifications should use the V8 atomic
          >   * swap instruction.  This insures the mmu and the cpu are in sync
          > @@ -542,7 +544,10 @@
          >  		spin_unlock(&srmmu_context_spinlock);
          >  		srmmu_ctxd_set(&srmmu_context_table[mm->context], mm->pgd);
          >  	}
          > -	/* XXX should we hyper_flush_whole_icache() here - Anton */
          > +
          > +	if (is_hypersparc)
          > +		hyper_flush_whole_icache();
          > +
          >  	srmmu_set_context(mm->context);
          >  }
          >  
          > @@ -1448,6 +1453,8 @@
          >  	srmmu_name = "ROSS HyperSparc";
          >  
          >  	init_vac_layout();
          > +
          > +	is_hypersparc = 1;
          >  
          >  	BTFIXUPSET_CALL(pte_clear, srmmu_pte_clear, BTFIXUPCALL_NORM);
          >  	BTFIXUPSET_CALL(pmd_clear, srmmu_pmd_clear, BTFIXUPCALL_NORM);
          > 
          
          

          • Prev by Date: WWW
          • Next by Date: ISDN authentication, back up and running
          • Prev by thread: Re: WWW Linux Sparc-32 SMP
          • Next by thread: Re: WWW Linux Sparc-32 SMP
          • Index(es):
            • Date
            • Thread