Linux MIPS Architecture development
 help / color / mirror / Atom feed
From: Ralf Baechle <ralf@linux-mips.org>
To: Atsushi Nemoto <anemo@mba.ocn.ne.jp>
Cc: manoje@broadcom.com, linux-mips@linux-mips.org,
	mark.e.mason@broadcom.com
Subject: Re: [MIPS] SB1: Build fix: delete initialization of flush_icache_page pointer.
Date: Thu, 28 Sep 2006 11:14:48 +0100	[thread overview]
Message-ID: <20060928101448.GB747@linux-mips.org> (raw)
In-Reply-To: <20060928.132712.47915433.nemoto@toshiba-tops.co.jp>

On Thu, Sep 28, 2006 at 01:27:12PM +0900, Atsushi Nemoto wrote:
> Date:	Thu, 28 Sep 2006 13:27:12 +0900 (JST)
> To:	manoje@broadcom.com
> Cc:	linux-mips@linux-mips.org, ralf@linux-mips.org,
> 	mark.e.mason@broadcom.com
> Subject: Re: [MIPS] SB1: Build fix: delete initialization of
>  flush_icache_page pointer.
> From:	Atsushi Nemoto <anemo@mba.ocn.ne.jp>
> Content-Type: Text/Plain; charset=us-ascii
> 
> On Wed, 27 Sep 2006 19:17:16 -0700, "Manoj Ekbote" <manoje@broadcom.com> wrote:
> > I added a line that initializes the flush_icache_page pointer in
> > sb1_cache_init.
> > The below method worked. The SMP kernel boots fine now. Removing parts
> > of local_sb1_flush_icache_page doesn't help. It looks like
> > flush_icache_page in mm/memory.c:do_no_page is needed. Removing it will
> > fail the boot process.
> 
> Thank you for testing.
> 
> Now I'm wondering why do_no_page() works on SMP.
> 
> 	if (pte_none(*page_table)) {
> 		flush_icache_page(vma, new_page);
> 		entry = mk_pte(new_page, vma->vm_page_prot);
> 		if (write_access)
> 			entry = maybe_mkwrite(pte_mkdirty(entry), vma);
> 		set_pte_at(mm, address, page_table, entry);
> ...
> 	} else {
> 		/* One of our sibling threads was faster, back out. */
> 		page_cache_release(new_page);
> 		goto unlock;
> 	}
> 
> 	/* no need to invalidate: a not-present page shouldn't be cached */
> 	update_mmu_cache(vma, address, entry);
> 
> Other CPU might be able to load new pte value just after set_ste_at(),
> but dcache is not flushed until update_mmu_cache().  Maybe I missed
> something...
> 
> > I am wondering if people have booted the latest tree on non-Broadcom
> > boards...curious to know if the removal of flush_icache_page has
> > affected them.
> 
> Yes, Ralf and Thiemo said even some SB1 boards can work fine without
> flush_icache_page.

The have to by definition - flush_icache_page is going to go away.

Note the SB1 cache code is a bizarre beast.  It totally avoids Hit-type
cacheops because those used to have problems on early silicon.  So my
favorite solution would be to dump c-sb1.c and deal with any SB1 issues
that may pop up in c-r4k.c.

  Ralf

  reply	other threads:[~2006-09-28 10:13 UTC|newest]

Thread overview: 16+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
     [not found] <S20037884AbWHMBM7/20060813011259Z+2871@ftp.linux-mips.org>
2006-08-17 21:20 ` [MIPS] SB1: Build fix: delete initialization of flush_icache_page pointer Mark E Mason
2006-08-18  1:51   ` Atsushi Nemoto
2006-08-21 19:27     ` Manoj Ekbote
2006-08-23  4:16       ` Atsushi Nemoto
2006-09-26  3:05         ` Manoj Ekbote
2006-09-26  9:39           ` Atsushi Nemoto
2006-09-27  1:54             ` Manoj Ekbote
2006-09-27 14:58               ` Atsushi Nemoto
2006-09-27 15:11                 ` Maciej W. Rozycki
2006-09-28  2:17                 ` Manoj Ekbote
2006-09-28  4:27                   ` Atsushi Nemoto
2006-09-28 10:14                     ` Ralf Baechle [this message]
2006-10-02  3:17                     ` Manoj Ekbote
2006-09-28  9:44                   ` Ralf Baechle
     [not found] <S20037882AbWHMBM6/20060813011258Z+2870@ftp.linux-mips.org>
2006-08-13 13:38 ` Atsushi Nemoto
2006-08-16 13:31   ` Atsushi Nemoto

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20060928101448.GB747@linux-mips.org \
    --to=ralf@linux-mips.org \
    --cc=anemo@mba.ocn.ne.jp \
    --cc=linux-mips@linux-mips.org \
    --cc=manoje@broadcom.com \
    --cc=mark.e.mason@broadcom.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox