[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <2801d9c2-f922-5cc7-4e43-c9a8db3004ba@gmail.com>
Date: Thu, 25 Nov 2021 17:19:23 -0500
From: Jesse Taube <mr.bossman075@...il.com>
To: Arnd Bergmann <arnd@...db.de>
Cc: NXP Linux Team <linux-imx@....com>,
Michael Turquette <mturquette@...libre.com>,
Stephen Boyd <sboyd@...nel.org>,
Rob Herring <robh+dt@...nel.org>,
Shawn Guo <shawnguo@...nel.org>,
Sascha Hauer <s.hauer@...gutronix.de>,
Sascha Hauer <kernel@...gutronix.de>,
Fabio Estevam <festevam@...il.com>,
Ulf Hansson <ulf.hansson@...aro.org>,
Dong Aisheng <aisheng.dong@....com>,
Stefan Agner <stefan@...er.ch>,
Linus Walleij <linus.walleij@...aro.org>,
gregkh <gregkh@...uxfoundation.org>,
Olof Johansson <olof@...om.net>, SoC Team <soc@...nel.org>,
Russell King - ARM Linux <linux@...linux.org.uk>,
Abel Vesa <abel.vesa@....com>,
Adrian Hunter <adrian.hunter@...el.com>,
Jiri Slaby <jirislaby@...nel.org>,
giulio.benetti@...ettiengineering.com,
Nobuhiro Iwamatsu <nobuhiro1.iwamatsu@...hiba.co.jp>,
linux-clk <linux-clk@...r.kernel.org>,
DTML <devicetree@...r.kernel.org>,
Linux ARM <linux-arm-kernel@...ts.infradead.org>,
Linux Kernel Mailing List <linux-kernel@...r.kernel.org>,
linux-mmc <linux-mmc@...r.kernel.org>,
"open list:GPIO SUBSYSTEM" <linux-gpio@...r.kernel.org>,
"open list:SERIAL DRIVERS" <linux-serial@...r.kernel.org>
Subject: Re: [PATCH v3 13/13] ARM: imxrt_defconfig: add i.MXRT family
defconfig
On 11/25/21 16:42, Arnd Bergmann wrote:
> On Thu, Nov 25, 2021 at 10:14 PM Jesse Taube <mr.bossman075@...il.com> wrote:
>>
>> From: Giulio Benetti <giulio.benetti@...ettiengineering.com>
>>
>> Add generic i.MXRT family defconfig.
>>
>> Signed-off-by: Giulio Benetti <giulio.benetti@...ettiengineering.com>
>> Signed-off-by: Jesse Taube <Mr.Bossman075@...il.com>
>
> I see a lot of things in here that probably should not be part of the kernel,
> either because they are rather obscure, or they take valuable memory:
>
>> ---
>> arch/arm/configs/imxrt_defconfig | 157 +++++++++++++++++++++++++++++++
>> 1 file changed, 157 insertions(+)
>> create mode 100644 arch/arm/configs/imxrt_defconfig
>>
>> diff --git a/arch/arm/configs/imxrt_defconfig b/arch/arm/configs/imxrt_defconfig
>> new file mode 100644
>> index 000000000000..d673745a5462
>> --- /dev/null
>> +++ b/arch/arm/configs/imxrt_defconfig
>> @@ -0,0 +1,157 @@
>> +# CONFIG_LOCALVERSION_AUTO is not set
>> +CONFIG_SYSVIPC=y
>> +CONFIG_USELIB=y
>
> You almost certainly won't want USELIB, and SYSVIPC support
> would only be useful for certain applications that you probably
> won't run.
>
>> +CONFIG_BSD_PROCESS_ACCT=y
>> +CONFIG_BSD_PROCESS_ACCT_V3=y
>> +CONFIG_PSI=y
>> +CONFIG_IKCONFIG=y
>> +CONFIG_IKCONFIG_PROC=y
>
> Probably nonen of these are helpful here.
>
>> +CONFIG_MEMCG=y
>> +CONFIG_BLK_CGROUP=y
>> +CONFIG_CFS_BANDWIDTH=y
>> +CONFIG_CGROUP_PIDS=y
>> +CONFIG_CGROUP_RDMA=y
>> +CONFIG_CGROUP_FREEZER=y
>> +CONFIG_CGROUP_DEVICE=y
>> +CONFIG_CGROUP_CPUACCT=y
>> +CONFIG_CGROUP_PERF=y
>> +CONFIG_CGROUP_BPF=y
>> +CONFIG_NAMESPACES=y
>> +CONFIG_USER_NS=y
>> +CONFIG_CHECKPOINT_RESTORE=y
>
> Same for control groups overall as well as checkpoint_restore
>
>> +CONFIG_RELAY=y
>
> There are a few drivers using CONFIG_RELAY, but I don't see you enable
> any of them,
> so this is not actually used.
>
this makes scene will change
>> +CONFIG_EXPERT=y
>
> Are you losing anything without EXPERT? If not, remove that
>
>> +CONFIG_SGETMASK_SYSCALL=y
>> +# CONFIG_FUTEX is not set
>
> Futex is probably one of the things you /do/ want.
>
There is a weird bug in futexs that reads from null_ptr, otherwise if
you hard code that access isn't allowed it works. This seems to be a
problem on other no-MMU platforms. I changed it to not have futexs like
the stm32s, CONFIG_EXPERT is required for this option. If you want I can
explain more about this but, i was going to do that as a separate patch.
>> +CONFIG_KALLSYMS_ALL=y
>> +CONFIG_PC104=y
>
> Turning off KALLSYMS_ALL may save a noticeable amount of RAM.
Intresting
>
> PC104 isn't actually that big, but it seems unlikely that you have
> that hardware.
>
>> +CONFIG_PARAVIRT=y
>
> You don't seem to enable XEN, so I don't think PARAVIRT is useful by itself.
>
>> +# CONFIG_ATAGS is not set
>> +CONFIG_CMDLINE="console=ttyS0 root=/dev/mmcblk0p2 rw earlycon rootwait"
>
> The command line should come from the boot loader, users probably have
> a different root device.
Presumably this will never be used but I have it there as an example for
others, I can remove it if necessary.
>
>> +CONFIG_BLK_DEV_BSGLIB=y
>> +CONFIG_BLK_DEV_INTEGRITY=y
>> +CONFIG_BLK_DEV_ZONED=y
>> +CONFIG_BLK_DEV_THROTTLING=y
>> +CONFIG_BLK_WBT=y
>> +CONFIG_BLK_SED_OPAL=y
>> +CONFIG_PARTITION_ADVANCED=y
>> +CONFIG_BSD_DISKLABEL=y
>> +CONFIG_MINIX_SUBPARTITION=y
>> +CONFIG_SOLARIS_X86_PARTITION=y
>> +CONFIG_UNIXWARE_DISKLABEL=y
>> +CONFIG_LDM_PARTITION=y
>
> I don't see you using OPAL or any of the 1990's partition formats.
> ot set
>
>> +CONFIG_BINFMT_FLAT=y
>
> For the defconfig, you should probably have ELF_FDPIC enabled,
> not just FLAT.
>
>> +CONFIG_CLEANCACHE=y
>> +CONFIG_ZPOOL=y
>> +CONFIG_ZBUD=y
>> +CONFIG_Z3FOLD=y
>
> Do these work as expected on NOMMU?
>
>> +CONFIG_BLK_DEV_LOOP=y
>> +CONFIG_BLK_DEV_RAM=y
>> +CONFIG_BLK_DEV_RAM_COUNT=1
>> +CONFIG_BLK_DEV_RAM_SIZE=65536
>
> I don't think you can have a ramdisk larger than RAM ;-)
>
Oh that's funny I left that from testing something I will remove it.
>> +CONFIG_MEMORY=y
>
> No need to enable the subsystem when you don't enable any
> of its drivers.
>
>> +CONFIG_EXT2_FS=y
>> +CONFIG_EXT2_FS_XATTR=y
>> +CONFIG_EXT2_FS_POSIX_ACL=y
>> +CONFIG_EXT2_FS_SECURITY=y
>> +CONFIG_EXT3_FS=y
>> +CONFIG_EXT3_FS_POSIX_ACL=y
>> +CONFIG_EXT3_FS_SECURITY=y
>
> Never use EXT3 on eMMC, just use EXT4 instead to make
> the device actually live longer. You probably don't need to enable
> EXT2 support separately.
>
>> +# CONFIG_FILE_LOCKING is not set
>> +# CONFIG_DNOTIFY is not set
>> +CONFIG_QUOTA=y
>
> dnotify and locking seem more useful than quota here
>
>> +# CONFIG_PRINT_QUOTA_WARNING is not set
>> +CONFIG_AUTOFS4_FS=y
>
>> +CONFIG_CONFIGFS_FS=y
>
> I don't see anything using configfs
>
>> +CONFIG_LSM="yama,loadpin,integrity,apparmor"
>
> None of these are actually enabled as far as I can tell.
>
>> +CONFIG_DEBUG_INFO=y
>> +CONFIG_DEBUG_INFO_DWARF4=y
>
> If you use DWARF4, you probably want DEBUG_INFO_SPLIT as well,
> to reduce the vmlinux size.
>
> Arnd
>
Thx for telling me about this i will try to use only the necessary ones.
Powered by blists - more mailing lists