* [PARISC] fix pacache .size with new binutils
@ 2011-03-21 20:18 Meelis Roos
2011-03-21 20:31 ` James Bottomley
0 siblings, 1 reply; 6+ messages in thread
From: Meelis Roos @ 2011-03-21 20:18 UTC (permalink / raw)
To: linux-parisc
Currently, 2.6.38 compile fails on parisc64 because binutils complains
that .size expression does not evaluate to a constant. The problem is
confusion between flush_alias_page and flush_user_dcache_range_asm.
This patch fixes pacache.s compilation by adding ENDPROC to flush_alias
page and ENTRY and correct ENDPROC to flush_user_dcache_range_asm.
Signed-off-by: Meelis Roos <mroos@linux.ee>
diff --git a/arch/parisc/kernel/pacache.S b/arch/parisc/kernel/pacache.S
index 09b77b2..f3d7da6 100644
--- a/arch/parisc/kernel/pacache.S
+++ b/arch/parisc/kernel/pacache.S
@@ -842,11 +842,10 @@ ENTRY(flush_alias_page)
.exit
.procend
+ENDPROC(flush_alias_page)
#endif
- .export flush_user_dcache_range_asm
^ permalink raw reply related [flat|nested] 6+ messages in thread
* Re: [PARISC] fix pacache .size with new binutils
2011-03-21 20:18 [PARISC] fix pacache .size with new binutils Meelis Roos
@ 2011-03-21 20:31 ` James Bottomley
2011-03-21 20:47 ` Meelis Roos
` (2 more replies)
0 siblings, 3 replies; 6+ messages in thread
From: James Bottomley @ 2011-03-21 20:31 UTC (permalink / raw)
To: Meelis Roos; +Cc: linux-parisc
On Mon, 2011-03-21 at 22:18 +0200, Meelis Roos wrote:
> Currently, 2.6.38 compile fails on parisc64 because binutils complains
> that .size expression does not evaluate to a constant. The problem is
> confusion between flush_alias_page and flush_user_dcache_range_asm.
>
> This patch fixes pacache.s compilation by adding ENDPROC to flush_alias
> page and ENTRY and correct ENDPROC to flush_user_dcache_range_asm.
>
> Signed-off-by: Meelis Roos <mroos@linux.ee>
>
> diff --git a/arch/parisc/kernel/pacache.S b/arch/parisc/kernel/pacache.S
> index 09b77b2..f3d7da6 100644
> --- a/arch/parisc/kernel/pacache.S
> +++ b/arch/parisc/kernel/pacache.S
> @@ -842,11 +842,10 @@ ENTRY(flush_alias_page)
> .exit
>
> .procend
> +ENDPROC(flush_alias_page)
> #endif
>
> - .export flush_user_dcache_range_asm
> -
> -flush_user_dcache_range_asm:
> +ENTRY(flush_user_dcache_range_asm)
> .proc
> .callinfo NO_CALLS
> .entry
> @@ -865,7 +864,7 @@ flush_user_dcache_range_asm:
> .exit
>
> .procend
> -ENDPROC(flush_alias_page)
> +ENDPROC(flush_user_dcache_range_asm)
>
> ENTRY(flush_kernel_dcache_range_asm)
> .proc
This won't apply because of upstream changes to the file
(flush_alias_page got removed) ... does the problem even still exist
upstream?
James
^ permalink raw reply [flat|nested] 6+ messages in thread
* Re: [PARISC] fix pacache .size with new binutils
2011-03-21 20:31 ` James Bottomley
@ 2011-03-21 20:47 ` Meelis Roos
2011-03-21 20:49 ` Meelis Roos
2011-03-22 1:21 ` John David Anglin
2 siblings, 0 replies; 6+ messages in thread
From: Meelis Roos @ 2011-03-21 20:47 UTC (permalink / raw)
To: James Bottomley; +Cc: linux-parisc
> This won't apply because of upstream changes to the file
> (flush_alias_page got removed) ... does the problem even still exist
> upstream?
Oops, did not try in last 2 days. Upstream has changed and removed this
function and the problem is gone and the patch collapses to just a
cleanup - do you want this:
Fix style of flush_user_dcache_range_asm procedure declaration in
arch/parisc/kernel/pacache.s to be consistent with other assembly
procedures.
Signed-off-by: Meelis Roos <mroos@linux.ee>
diff --git a/arch/parisc/kernel/pacache.S b/arch/parisc/kernel/pacache.S
index a858236..93ff3d9 100644
--- a/arch/parisc/kernel/pacache.S
+++ b/arch/parisc/kernel/pacache.S
@@ -817,10 +817,7 @@ ENTRY(purge_kernel_dcache_page)
.procend
ENDPROC(purge_kernel_dcache_page)
-
- .export flush_user_dcache_range_asm
^ permalink raw reply related [flat|nested] 6+ messages in thread
* Re: [PARISC] fix pacache .size with new binutils
2011-03-21 20:31 ` James Bottomley
2011-03-21 20:47 ` Meelis Roos
@ 2011-03-21 20:49 ` Meelis Roos
2011-03-21 20:51 ` James Bottomley
2011-03-22 1:21 ` John David Anglin
2 siblings, 1 reply; 6+ messages in thread
From: Meelis Roos @ 2011-03-21 20:49 UTC (permalink / raw)
To: James Bottomley; +Cc: linux-parisc
> This won't apply because of upstream changes to the file
> (flush_alias_page got removed) ... does the problem even still exist
> upstream?
By the way, the new code compiles with warnings:
CC arch/parisc/kernel/cache.o
arch/parisc/kernel/cache.c: In function 'flush_dcache_page':
arch/parisc/kernel/cache.c:310: warning: pointer type mismatch in conditional expression
arch/parisc/kernel/cache.c:310: warning: format '%s' expects type 'char *', but argument 4 has type 'void * const'
Is it just a lacking cast in printk argument?
--
Meelis Roos (mroos@linux.ee)
^ permalink raw reply [flat|nested] 6+ messages in thread
* Re: [PARISC] fix pacache .size with new binutils
2011-03-21 20:49 ` Meelis Roos
@ 2011-03-21 20:51 ` James Bottomley
0 siblings, 0 replies; 6+ messages in thread
From: James Bottomley @ 2011-03-21 20:51 UTC (permalink / raw)
To: Meelis Roos; +Cc: linux-parisc
On Mon, 2011-03-21 at 22:49 +0200, Meelis Roos wrote:
> > This won't apply because of upstream changes to the file
> > (flush_alias_page got removed) ... does the problem even still exist
> > upstream?
>
> By the way, the new code compiles with warnings:
>
> CC arch/parisc/kernel/cache.o
> arch/parisc/kernel/cache.c: In function 'flush_dcache_page':
> arch/parisc/kernel/cache.c:310: warning: pointer type mismatch in conditional expression
> arch/parisc/kernel/cache.c:310: warning: format '%s' expects type 'char *', but argument 4 has type 'void * const'
>
> Is it just a lacking cast in printk argument?
It's a reminder to me to dump the code. However, we still don't have
agreement on the dump, and the alias warning is useful to people who are
working on the binutils update.
James
^ permalink raw reply [flat|nested] 6+ messages in thread
* Re: [PARISC] fix pacache .size with new binutils
2011-03-21 20:31 ` James Bottomley
2011-03-21 20:47 ` Meelis Roos
2011-03-21 20:49 ` Meelis Roos
@ 2011-03-22 1:21 ` John David Anglin
2 siblings, 0 replies; 6+ messages in thread
From: John David Anglin @ 2011-03-22 1:21 UTC (permalink / raw)
To: James Bottomley; +Cc: mroos, linux-parisc
> This won't apply because of upstream changes to the file
> (flush_alias_page got removed) ... does the problem even still exist
> upstream?
The problem still exists on various longterm branches and I guess
the 2.6.38 stable branch. Is it worth fixing these?
I have to say that 2.6.38 without the tmpalias patch is seriously
broken on PA8800. I tried two GCC builds and they both died with
segvs very early in the build.
Dave
--
J. David Anglin dave.anglin@nrc-cnrc.gc.ca
National Research Council of Canada (613) 990-0752 (FAX: 952-6602)
^ permalink raw reply [flat|nested] 6+ messages in thread
end of thread, other threads:[~2011-03-22 1:21 UTC | newest]
Thread overview: 6+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2011-03-21 20:18 [PARISC] fix pacache .size with new binutils Meelis Roos
2011-03-21 20:31 ` James Bottomley
2011-03-21 20:47 ` Meelis Roos
2011-03-21 20:49 ` Meelis Roos
2011-03-21 20:51 ` James Bottomley
2011-03-22 1:21 ` John David Anglin
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox