Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1752391AbcDGASV (ORCPT ); Wed, 6 Apr 2016 20:18:21 -0400 Received: from mail.linuxfoundation.org ([140.211.169.12]:52073 "EHLO mail.linuxfoundation.org" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1750750AbcDGASU (ORCPT ); Wed, 6 Apr 2016 20:18:20 -0400 Date: Wed, 6 Apr 2016 17:18:19 -0700 From: Greg Kroah-Hartman To: Al Stone Cc: linux-kernel@vger.kernel.org, Arnd Bergmann Subject: Re: [PATCH] arm64: CONFIG_DEVPORT should not be used when PCI is being used Message-ID: <20160407001819.GB9228@kroah.com> References: <1459978040-2226-1-git-send-email-ahs3@redhat.com> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <1459978040-2226-1-git-send-email-ahs3@redhat.com> User-Agent: Mutt/1.6.0 (2016-04-01) Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Content-Length: 1467 Lines: 44 On Wed, Apr 06, 2016 at 03:27:20PM -0600, Al Stone wrote: > On arm64 systems, using /dev/port does not really make sense; this is > historically used for other architectures to access ISA IO ports, which > with any luck do not exist on arm64 platforms. With the following snippet > of perl code (from Jeff Bastian ), we can reliably > panic an arm64 system with PCI enabled: > > #!/usr/bin/perl -w > # extracted from sensors-detect from lm_sensors > # to reproduce kernel crash when probing the > # Super-I/O ports > use Fcntl qw(:DEFAULT :seek); > sysopen(IOPORTS, "/dev/port", O_RDWR); > binmode(IOPORTS); > sysseek(IOPORTS, 0x2e, 0); > syswrite(IOPORTS, pack("C", 0x0d), 1); > > So, make sure CONFIG_DEVPORT cannot be set on arm64; it cannot really be > used and it allows us to crash a kernel from user space. > > Signed-off-by: Al Stone > Cc: Arnd Bergmann > Cc: Greg Kroah-Hartman > --- > drivers/char/Kconfig | 2 +- > 1 file changed, 1 insertion(+), 1 deletion(-) > > diff --git a/drivers/char/Kconfig b/drivers/char/Kconfig > index b272397..c532f62 100644 > --- a/drivers/char/Kconfig > +++ b/drivers/char/Kconfig > @@ -587,7 +587,7 @@ config TELCLOCK > > config DEVPORT > bool > - depends on !M68K > + depends on !M68K && !ARM64 Why not fix the real bug here, it's odd that only these two arches need this disabled, don't you agree? thanks, greg k-h