linux-arm-kernel.lists.infradead.org archive mirror
 help / color / mirror / Atom feed
From: mzoran@crowfest.net (Michael Zoran)
To: linux-arm-kernel@lists.infradead.org
Subject: ARM64: Disabling warnings about deprecated armv8 instructions
Date: Sun, 22 Jan 2017 04:21:02 -0800	[thread overview]
Message-ID: <1485087662.1518.1.camel@crowfest.net> (raw)
In-Reply-To: <22169925.OhJ0QcnbHM@localhost>

On Sun, 2017-01-22 at 12:46 +0100, Alexander Stein wrote:
> ?On Sunday, January 22, 2017, 9:09:37 AM CET Ard Biesheuvel wrote:
> > On 22 January 2017 at 08:58, Michael Zoran <mzoran@crowfest.net>
> > wrote:
> > > On Sun, 2017-01-22 at 09:52 +0100, Alexander Stein wrote:
> > > > Hi Michael,
> > > > 
> > > > On Sunday, January 22, 2017, 12:07:04 AM CET Michael Zoran
> > > > wrote:
> > > > > I'm not sure if this if the correct place to be asking
> > > > > this.???The
> > > > > RPI
> > > > > 3 running ARM64 is slowly reaching the point of being about
> > > > > to
> > > > > seriously run a 32 bit vender OS like Raspbian.??When running
> > > > > Raspbian,
> > > > > I'm seeing a very large number(thousands) of kernel log
> > > > > messages
> > > > > about
> > > > > deprecated instructions especially setend and barrier
> > > > > instuctions.
> > > > > This can be very annoying and is completely filling the
> > > > > kernel log.
> > > > > 
> > > > > I'm considering submitting a patch to add a Kconfig option to
> > > > > disable
> > > > > these warnings with the default being to keep the warnings
> > > > > enabled.??I
> > > > > was wondering if such a patch could be seriously considered.
> > > > 
> > > > Could you please provide an example of those warning an what is
> > > > trigging
> > > > those?
> > > > 
> > > > Thanks and best regards,
> > > > Alexander
> > > 
> > > Sure, here is a snipped from dmesg.??I think this is happening
> > > because
> > > the entire Raspbian OS is compiled with a custom gcc compiler
> > > that is
> > > targeting arm6+VFP.
> > > 
> > > I can double check, but I think the instructions are being
> > > emulated in
> > > hardware so they are just filling the log and slowing things
> > > down.
> > > 
> > > [10685.558480] cp15barrier_handler: 197896 callbacks suppressed
> > > [10685.558487] "Xorg" (656) uses deprecated CP15 Barrier
> > > instruction at
> > > 0xf707fe9c
> > > [10685.558504] "Xorg" (656) uses deprecated CP15 Barrier
> > > instruction at
> > > 0xf7015944
> > > [10685.558511] "Xorg" (656) uses deprecated CP15 Barrier
> > > instruction at
> > > 0xf7012494
> > > [10685.558518] "Xorg" (656) uses deprecated CP15 Barrier
> > > instruction at
> > > 0xf70159b4
> > > [10685.558527] "Xorg" (656) uses deprecated CP15 Barrier
> > > instruction at
> > > 0xf7011478
> > > [10685.558533] "Xorg" (656) uses deprecated CP15 Barrier
> > > instruction at
> > > 0xf70114e8
> > > [10685.558540] "Xorg" (656) uses deprecated CP15 Barrier
> > > instruction at
> > > 0xf7015944
> > > [10685.558547] "Xorg" (656) uses deprecated CP15 Barrier
> > > instruction at
> > > 0xf7012494
> > > [10685.558553] "Xorg" (656) uses deprecated CP15 Barrier
> > > instruction at
> > > 0xf70159b4
> > > [10685.558560] "Xorg" (656) uses deprecated CP15 Barrier
> > > instruction at
> > > 0xf7011478
> > > [10685.559179] compat_setend_handler: 1078 callbacks suppressed
> > > [10685.559188] "systemd-journal" (138) uses deprecated setend
> > > instruction at 0xf76a66f4
> > > [10685.559196] "systemd-journal" (138) uses deprecated setend
> > > instruction at 0xf76a6bd8
> > > [10685.559209] "systemd-journal" (138) uses deprecated setend
> > > instruction at 0xf76a66f4
> > > [10685.559216] "systemd-journal" (138) uses deprecated setend
> > > instruction at 0xf76a6bd8
> > > [10685.559231] "systemd-journal" (138) uses deprecated setend
> > > instruction at 0xf76a66f4
> > > [10685.559237] "systemd-journal" (138) uses deprecated setend
> > > instruction at 0xf76a6bd8
> > > [10685.559246] "systemd-journal" (138) uses deprecated setend
> > > instruction at 0xf76a66f4
> > > [10685.559253] "systemd-journal" (138) uses deprecated setend
> > > instruction at 0xf76a6bd8
> > > [10685.559269] "systemd-journal" (138) uses deprecated setend
> > > instruction at 0xf76a66f4
> > > [10685.559276] "systemd-journal" (138) uses deprecated setend
> > > instruction at 0xf76a6bd8
> > 
> > You can disable the emulation by doing
> > 
> > echo 2 >/proc/sys/abi/setend
> > echo 2 >/proc/sys/abi/cp15_barrier
> 
> This reminds me of /proc/cpu/alignment to detect alignment problems
> in your?
> application. Although armv6+ can handle unaligned access in most (!)
> cases you?
> might want to trap thos cases. I would consider this a similar way.
> IMHO raspbian, still supporting raspberry pi 1 (armv6), should
> silence those?
> warnings.
> 
> Best regards,
> Alexander
> 

Thanks, but I see multiple ways this could be solved which is partially
why I sent out the initial e-mail.

Here are just a few of the options.
1. Add a .config option to silence the warnings.
2. Detect the binary type to detectermine if it should be silenced.
3. #ifdef out the complaining code in downstream sources.
4. Have various distributions write to /proc/sys/abi/* at system boot.

The list is probably endless.

And I think this is closely related to the other topic of setting the
linux personality based on detection of the binary.

  reply	other threads:[~2017-01-22 12:21 UTC|newest]

Thread overview: 31+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2017-01-22  8:07 ARM64: Disabling warnings about deprecated armv8 instructions Michael Zoran
2017-01-22  8:52 ` Alexander Stein
2017-01-22  8:58   ` Michael Zoran
2017-01-22  9:05     ` Jisheng Zhang
2017-01-22  9:38       ` Michael Zoran
2017-01-22  9:43         ` Ard Biesheuvel
2017-01-22  9:52           ` Michael Zoran
2017-01-22  9:56             ` Michael Zoran
2017-01-22 10:54             ` Ard Biesheuvel
2017-01-22 11:05               ` Michael Zoran
2017-01-22 11:22                 ` Michael Zoran
2017-01-22  9:09     ` Ard Biesheuvel
2017-01-22  9:33       ` Michael Zoran
2017-01-22  9:36         ` Ard Biesheuvel
2017-01-22  9:49           ` Michael Zoran
2017-01-22 11:46       ` Alexander Stein
2017-01-22 12:21         ` Michael Zoran [this message]
2017-01-22 13:01           ` Ard Biesheuvel
2017-01-22 14:02             ` Michael Zoran
2017-01-22 15:05               ` Ard Biesheuvel
2017-01-30 14:13             ` Russell King - ARM Linux
2017-01-30 14:50               ` Ard Biesheuvel
2017-01-30 16:38                 ` Måns Rullgård
2017-01-30 16:58                 ` Russell King - ARM Linux
2017-01-30 17:09                   ` Ard Biesheuvel
2017-01-30 17:39                     ` Eric Anholt
2017-01-30 17:41                     ` Michael Zoran
2017-01-30 18:17                       ` Måns Rullgård
2017-01-30 18:34                         ` Michael Zoran
2017-01-30 18:49                           ` Will Deacon
2017-01-30 19:53                             ` Michael Zoran

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=1485087662.1518.1.camel@crowfest.net \
    --to=mzoran@crowfest.net \
    --cc=linux-arm-kernel@lists.infradead.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;
as well as URLs for NNTP newsgroup(s).