Re: [PATCH v8 18/18] RISC-V: Build Infrastructure

From: Palmer Dabbelt
Date: Wed Sep 13 2017 - 16:18:30 EST


On Wed, 13 Sep 2017 09:06:03 PDT (-0700), Arnd Bergmann wrote:
> On Tue, Sep 12, 2017 at 11:57 PM, Palmer Dabbelt <palmer@xxxxxxxxxxx> wrote:
>> This patch contains all the build infrastructure that actually enables
>> the RISC-V port. This includes Makefiles, linker scripts, and Kconfig
>> files. It also contains the only top-level change, which adds RISC-V to
>> the list of architectures that need a sed run to produce the ARCH
>> variable when building locally.
>
>> diff --git a/arch/riscv/configs/freedom-u500_defconfig b/arch/riscv/configs/freedom-u500_defconfig
>> new file mode 100644
>> index 000000000000..b580dc5c8feb
>> --- /dev/null
>> +++ b/arch/riscv/configs/freedom-u500_defconfig
>> @@ -0,0 +1,52 @@
>> +CONFIG_DEFAULT_HOSTNAME="ucbvax"
>
> That probably shouldn't be in here or the other defconfig files.

I agree.

>> +# CONFIG_CROSS_MEMORY_ATTACH is not set
>> +# CONFIG_FHANDLE is not set
>> +CONFIG_NAMESPACES=y
>> +# CONFIG_SGETMASK_SYSCALL is not set
>> +CONFIG_EMBEDDED=y
>
> You have CONFIG_EMBEDDED set in all defconfig files,
> which is a bit odd, as the only effect of that is to let you
> turn off some options that you normally want for a usable
> system, (e.g. sysfs, blk_dev or file_locking).
>
> Is this intentional?

No.

> In my experience, having one defconfig per machine
> can quickly get out of hand as more hardware gets added.
> You could start out with just one defconfig that sets all
> the common options, and then use config-fragments to
> decide between 32-bit and 64-bit.

Makes sense. I guess I hadn't really paid much attention to the defconfig
files, I kind of just inherited them. I'll go through them and come up with
something sane for the v9.