Re: [PATCH] parisc: Regenerate parisc defconfigs
From: Helge Deller
Date: Thu Mar 26 2020 - 19:01:54 EST
On 26.03.20 23:47, James Bottomley wrote:
> On Thu, 2020-03-26 at 23:19 +0100, Helge Deller wrote:
>> * Guenter Roeck <linux@xxxxxxxxxxxx>:
>>> On Mon, Feb 03, 2020 at 10:31:22PM +0100, Helge Deller wrote:
>>>> Regenerate the 32- and 64-bit defconfigs and drop the outdated
>>>> specific
>>>> machine defconfigs for the 712, A500, B160, C3000 and C8000
>>>> workstations.
>>>> ---
>>>> arch/parisc/configs/712_defconfig | 181 --------------
>>>> -
>>>> arch/parisc/configs/a500_defconfig | 177 --------------
>>>> -
>>>> arch/parisc/configs/defconfig | 206 --------------
>>>> ---
>>>
>>> Since the removal of arch/parisc/configs/defconfig, "make
>>> ARCH=parisc
>>> defconfig" results in an endless recursive make loop.
>>
>> Can you please test the patch below?
>> Helge
>>
>> ----
>> [PATCH] parisc: Fix defconfig selection
>>
>> Fix the recursive loop when running "make ARCH=parisc defconfig".
>>
>> Fixes: 84669923e1ed ("parisc: Regenerate parisc defconfigs")
>> Noticed-by: Guenter Roeck <linux@xxxxxxxxxxxx>
>> Signed-off-by: Helge Deller <deller@xxxxxx>
>>
>> diff --git a/arch/parisc/Kconfig b/arch/parisc/Kconfig
>> index 71034b54d74e..3801a2ef9bca 100644
>> --- a/arch/parisc/Kconfig
>> +++ b/arch/parisc/Kconfig
>> @@ -79,6 +79,11 @@ config MMU
>> config STACK_GROWSUP
>> def_bool y
>>
>> +config ARCH_DEFCONFIG
>> + string
>> + default "arch/parisc/configs/generic-32bit_defconfig" if
>> !64BIT
>> + default "arch/parisc/configs/generic-64bit_defconfig" if
>> 64BIT
>> +
>> config GENERIC_LOCKBREAK
>> bool
>> default y
>> diff --git a/arch/parisc/Makefile b/arch/parisc/Makefile
>> index dca8f2de8cf5..628cd8bb7ad8 100644
>> --- a/arch/parisc/Makefile
>> +++ b/arch/parisc/Makefile
>> @@ -34,6 +34,13 @@ CC_ARCHES = hppa hppa2.0 hppa1.1
>> LD_BFD := elf32-hppa-linux
>> endif
>>
>> +# select defconfig based on actual architecture
>> +ifeq ($(shell uname -m),parisc64)
>
> This won't work for cross builds. You should be able to use
> $(CONFIG_64BIT) here, though.
I don't think so... CONFIG_64BIT is set in the config itself.
I'm using crossbuilds, and "make ARCH=parisc defconfig" does work
in the sense that it auto-selects 32bit then:
[deller@ls3530 linux-2.6]$ uname -m
x86_64
[deller@ls3530 test]$ make ARCH=parisc defconfig
make: Entering directory '/home/cvs/LINUX/git-kernel/linux-2.6'
make[1]: Entering directory '/home/cvs/LINUX/git-kernel/test'
GEN Makefile
....
HOSTLD scripts/kconfig/conf
*** Default configuration is based on 'generic-32bit_defconfig'
#
# configuration written to .config
#
If you want the 64bit defconfig you can run
make ARCH=parisc generic-64bit_defconfig
Helge