lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Date:	Fri, 16 May 2014 14:14:33 -0700
From:	Randy Dunlap <rdunlap@...radead.org>
To:	Rob Landley <rob@...dley.net>, linux-sh@...r.kernel.org,
	linux-kernel@...r.kernel.org
Subject: Re: Building sh4 without CONFIG_EXPERT.

On 05/11/2014 04:53 PM, Rob Landley wrote:
> I got sh4 to work under QEMU years ago as part of my aboriginal linux
> project, which builds the smallest Linux system capable of rebuilding
> itself natively from source code. (You can download and run the system
> images from http://landley.net/aboriginal/bin if you're curious.)
> 
> One of the goals of Aboriginal is to make different architectures behave
> the same way, and one of the ways I do that is by having a basic kernel
> miniconfig file defining the config symbols common across platforms:
> 
>   http://landley.net/hg/aboriginal/file/1651/sources/baseconfig-linux
> 
> And then append target-specific chunks, ala the LINUX_CONFIG sections
> from each of:
> 
>   http://landley.net/hg/aboriginal/file/1651/sources/targets
> 
> The problem is, the sh4 target's target-specific chunk is an INSANE 45
> config symbols (armv5l needs 15 symbols, powerpc needs 16, i686 needs 7,
> mips needs 6...) and the reason for the verbosity is that sh4 forces on
> CONFIG_EXPERT.
> 
> As far as I can tell, the only reason sh4 is forcing on CONFIG_EXPERT is
> to get CONFIG_PATA_PLATFORM. The patch to make sh4 _not_ force on
> CONFIG_EXPERT is just:
> 
> diff --git a/arch/sh/Kconfig b/arch/sh/Kconfig
> index 834b67c..7d0d44d 100644
> --- a/arch/sh/Kconfig
> +++ b/arch/sh/Kconfig
> @@ -1,7 +1,7 @@
>  config SUPERH
>  	def_bool y
>  	select ARCH_MIGHT_HAVE_PC_PARPORT
> -	select EXPERT
> +	select HAVE_PATA_PLATFORM
>  	select CLKDEV_LOOKUP
>  	select HAVE_IDE if HAS_IOPORT_MAP
>  	select HAVE_MEMBLOCK

Since PATA_PLATFORM is:

config PATA_PLATFORM
	tristate "Generic platform device PATA support"
	depends on EXPERT || PPC || HAVE_PATA_PLATFORM

then any of EXPERT, PPC, or HAVE_PATA_PLATFORM should be sufficient.
and using HAVE_PATA_PLATFORM is more direct and obvious.

Acked-by: Randy Dunlap <rdunlap@...radead.org>


> Which swaps EXPERT for HAVE_PATA_PLATFORM, so I can still provide a hard
> drive qemu can see as /dev/sda. The result builds, boots, and works for
> me in very basic smoke testing, and lets me get my sh4-specific config
> symbol set down to 27 symbols.
> 
> (P.S. I have no idea why hitting ctrl-C kills the _emulator_ rather than
> passing it along to the emulated system. The other qemu targets don't do
> that...)
> 
> Rob
> 
> P.S. I'm using linux 3.14, qemu 2.0, and the sh4 cross compiler
> toolchain from the URL at the top of the post. I can be more explicit if
> you care...


-- 
~Randy
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ