From: "Jayachandran C." <jchandra@broadcom.com>
To: "Ralf Baechle" <ralf@linux-mips.org>
Cc: linux-mips@linux-mips.org
Subject: Re: [PATCH 2/2] MIPS: mm: Use scratch for PGD when !CONFIG_MIPS_PGD_C0_CONTEXT
Date: Wed, 18 Sep 2013 13:29:41 +0530 [thread overview]
Message-ID: <20130918075940.GA10328@jayachandranc.netlogicmicro.com> (raw)
In-Reply-To: <20130917212113.GI22468@linux-mips.org>
On Tue, Sep 17, 2013 at 11:21:13PM +0200, Ralf Baechle wrote:
> On Sun, Aug 11, 2013 at 05:10:17PM +0530, Jayachandran C wrote:
>
> > Allow usage of scratch register for current pgd even when
> > MIPS_PGD_C0_CONTEXT is not configured. MIPS_PGD_C0_CONTEXT is set
> > for 64r2 platforms to indicate availability of Xcontext for saving
> > cpuid, thus freeing Context to be used for saving PGD. This option
> > was also tied to using a scratch register for storing PGD.
> >
> > This commit will allow usage of scratch register to store the current
> > pgd if one can be allocated for the platform, even when
> > MIPS_PGD_C0_CONTEXT is not set. The cpuid will be kept in the CP0
> > Context register in this case.
> >
> > The code to store the current pgd for the TLB miss handler is now
> > generated in all cases. When scratch register is available, the PGD
> > is also stored in the scratch register.
>
> This patch breaks the build for almost all platforms. Amusingly it
> doesn't break Cavium however which is why I didn't notice it right away.
>
> The build error is the same for all platforms:
>
> [...]
> LD init/built-in.o
> arch/mips/built-in.o: In function `per_cpu_trap_init':
> (.text+0x80e4): undefined reference to `tlbmiss_handler_setup_pgd'
> arch/mips/built-in.o: In function `build_setup_pgd':
> tlbex.c:(.text+0xe31c): undefined reference to `tlbmiss_handler_setup_pgd'
> tlbex.c:(.text+0xe328): undefined reference to `tlbmiss_handler_setup_pgd'
> tlbex.c:(.text+0xe324): undefined reference to `tlbmiss_handler_setup_pgd_end'
> tlbex.c:(.text+0xe32c): undefined reference to `tlbmiss_handler_setup_pgd_end'
> kernel/built-in.o: In function `__schedule':
> core.c:(.sched.text+0x1b74): undefined reference to `tlbmiss_handler_setup_pgd'
> mm/built-in.o: In function `use_mm':
> (.text+0x1a530): undefined reference to `tlbmiss_handler_setup_pgd'
> fs/built-in.o: In function `flush_old_exec':
> (.text+0x8da8): undefined reference to `tlbmiss_handler_setup_pgd'
> make[2]: *** [vmlinux] Error 1
> make[1]: *** [sub-make] Error 2
> make: *** [all] Error 2
> make: Leaving directory `/home/ralf/src/linux/obj/cobalt-build'
>
> I'm reverting the patch now.
The commit 774b6175 "MIPS: tlbex: Guard tlbmiss_handler_setup_pgd" that
went into 3.12-rc1 takes out tlbmiss_handler_setup_pgd definition when
CONFIG_MIPS_PGD_C0_CONTEXT is not defined. That clashes with this change
and caused the failure.
You can revert 774b6175 before applying this and things should work, I
had tested it with qemu on malta as well as on XLP.
JC.
next prev parent reply other threads:[~2013-09-18 7:55 UTC|newest]
Thread overview: 9+ messages / expand[flat|nested] mbox.gz Atom feed top
2013-08-11 11:40 [PATCH 0/2] Use scratch register for PGD when MIPS_PGD_C0_CONTEXT is not set Jayachandran C
2013-08-11 11:40 ` [PATCH 1/2] MIPS: Move definition of SMP processor id register to header file Jayachandran C
2013-08-11 11:40 ` [PATCH 2/2] MIPS: mm: Use scratch for PGD when !CONFIG_MIPS_PGD_C0_CONTEXT Jayachandran C
2013-09-17 21:21 ` Ralf Baechle
2013-09-18 7:59 ` Jayachandran C. [this message]
2013-09-18 11:02 ` Ralf Baechle
2013-09-24 21:49 ` Hauke Mehrtens
2013-09-25 5:26 ` Jayachandran C.
2013-09-25 8:25 ` Hauke Mehrtens
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=20130918075940.GA10328@jayachandranc.netlogicmicro.com \
--to=jchandra@broadcom.com \
--cc=linux-mips@linux-mips.org \
--cc=ralf@linux-mips.org \
/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