Re: [PATCH v2] powerpc/config: powernv_defconfig updates
On Wed, 11 Apr 2018 22:24:06 +1000 Balbir Singhwrote: > On Wed, Apr 11, 2018 at 8:42 PM, Nicholas Piggin wrote: > > On Wed, 11 Apr 2018 20:04:45 +1000 > > Balbir Singh wrote: > > > >> On Wed, Apr 11, 2018 at 7:12 PM, Nicholas Piggin > >> wrote: > >> > For consideration: > >> > > >> > * Add IPv6 support built in + additional modules - Because it's 2018 > >> > maan. > >> > * Add DEFERRED_STRUCT_PAGE_INIT - Let's see what breaks. > >> > >> We did not find any benefits with this on a P8 in terms of boot time > >> with large memory. May be worth reinvestigating > > > > Worth putting in the defconfig just for testing until then? > > Absolutely! > > > > >> > >> > * Add PPC_MEMTRACE - Small powernv debugfs driver for getting hardware > >> > traces. > >> > * Add MEMORY_FAILURE - Machine check exceptions can now drive memory > >> > failure. > > > > > > Okay for this one? > > Yep definitely! > > > > >> > * Turn on FANOTIFY - This is the current filesystem notification feature. > >> > * Turn on SCOM_DEBUGFS - Handy for hardware/firmware debugging, security > >> > risk? > >> > >> Yep, should not be in defconfig, IMHO > > > > Why not? Honest question, I hear some things about secure > > boot when I ask about this option but I'm not quite sure why, or > > what we are securing here. > > > > If the firmware does not want us to mess with scoms, it should > > restrict the call, no? > > > > Yes, firmware definitely should. Do we need inband debugging? I think it's a matter of convenience when testing and debugging things. OTOH I haven't used it a great deal myself. Others do want it if we can just ensure firmware will do the right thing if we're in some secure configuration. Thanks, Nick
Re: [PATCH v2] powerpc/config: powernv_defconfig updates
On Wed, Apr 11, 2018 at 8:42 PM, Nicholas Pigginwrote: > On Wed, 11 Apr 2018 20:04:45 +1000 > Balbir Singh wrote: > >> On Wed, Apr 11, 2018 at 7:12 PM, Nicholas Piggin wrote: >> > For consideration: >> > >> > * Add IPv6 support built in + additional modules - Because it's 2018 maan. >> > * Add DEFERRED_STRUCT_PAGE_INIT - Let's see what breaks. >> >> We did not find any benefits with this on a P8 in terms of boot time >> with large memory. May be worth reinvestigating > > Worth putting in the defconfig just for testing until then? Absolutely! > >> >> > * Add PPC_MEMTRACE - Small powernv debugfs driver for getting hardware >> > traces. >> > * Add MEMORY_FAILURE - Machine check exceptions can now drive memory >> > failure. > > > Okay for this one? Yep definitely! > >> > * Turn on FANOTIFY - This is the current filesystem notification feature. >> > * Turn on SCOM_DEBUGFS - Handy for hardware/firmware debugging, security >> > risk? >> >> Yep, should not be in defconfig, IMHO > > Why not? Honest question, I hear some things about secure > boot when I ask about this option but I'm not quite sure why, or > what we are securing here. > > If the firmware does not want us to mess with scoms, it should > restrict the call, no? > Yes, firmware definitely should. Do we need inband debugging? > >> > * Turn on async SCSI scanning - Let's see what breaks. >> > >> > * Make a bunch of USB hid drivers modules. >> > * Make SCSI SG, SR, and FC modules - FC is huge. >> > * Make video drivers (except AST GPU) modules - Also huge. >> > * Add MLX5 driver as a module - Popular demand. >> > * Make PCI serial driver a module - Uncommon? >> > >> > * Get rid of /dev/port - Not used. >> > * Remove legacy BSD ttys - Long dead. >> > * Remove IDE - Deprecated and replaced with ATA. >> > * Remove WIRELESS - Until we get POWER9 laptops. >> > * Remove RAW - Long deprecated in favour of direct IO. >> > * Remove floppy, parport, and PS2 input devices - not supported. >> > * Remove virtio drivers, ballooning - We're host only. >> >> I still think its good to have them, may be as modules? Should I >> switch to powerpc64le_defconfig for a single config with everything -- >> same kernel as guest and bare metal? > > Well powernv_defconfig never supports PAPR guest. I think the ppc64 > defconfig does both (and pseries has no bare metal). > > Is there a reason to use them in host? And if yes, which ones? We > could easily make them as modules. I guess I should use powerpc64le_defconfig then Balbir
Re: [PATCH v2] powerpc/config: powernv_defconfig updates
On Wed, 11 Apr 2018 20:04:45 +1000 Balbir Singhwrote: > On Wed, Apr 11, 2018 at 7:12 PM, Nicholas Piggin wrote: > > For consideration: > > > > * Add IPv6 support built in + additional modules - Because it's 2018 maan. > > * Add DEFERRED_STRUCT_PAGE_INIT - Let's see what breaks. > > We did not find any benefits with this on a P8 in terms of boot time > with large memory. May be worth reinvestigating Worth putting in the defconfig just for testing until then? > > > * Add PPC_MEMTRACE - Small powernv debugfs driver for getting hardware > > traces. > > * Add MEMORY_FAILURE - Machine check exceptions can now drive memory > > failure. Okay for this one? > > * Turn on FANOTIFY - This is the current filesystem notification feature. > > * Turn on SCOM_DEBUGFS - Handy for hardware/firmware debugging, security > > risk? > > Yep, should not be in defconfig, IMHO Why not? Honest question, I hear some things about secure boot when I ask about this option but I'm not quite sure why, or what we are securing here. If the firmware does not want us to mess with scoms, it should restrict the call, no? > > * Turn on async SCSI scanning - Let's see what breaks. > > > > * Make a bunch of USB hid drivers modules. > > * Make SCSI SG, SR, and FC modules - FC is huge. > > * Make video drivers (except AST GPU) modules - Also huge. > > * Add MLX5 driver as a module - Popular demand. > > * Make PCI serial driver a module - Uncommon? > > > > * Get rid of /dev/port - Not used. > > * Remove legacy BSD ttys - Long dead. > > * Remove IDE - Deprecated and replaced with ATA. > > * Remove WIRELESS - Until we get POWER9 laptops. > > * Remove RAW - Long deprecated in favour of direct IO. > > * Remove floppy, parport, and PS2 input devices - not supported. > > * Remove virtio drivers, ballooning - We're host only. > > I still think its good to have them, may be as modules? Should I > switch to powerpc64le_defconfig for a single config with everything -- > same kernel as guest and bare metal? Well powernv_defconfig never supports PAPR guest. I think the ppc64 defconfig does both (and pseries has no bare metal). Is there a reason to use them in host? And if yes, which ones? We could easily make them as modules. Thanks, Nick
Re: [PATCH v2] powerpc/config: powernv_defconfig updates
On Wed, Apr 11, 2018 at 7:12 PM, Nicholas Pigginwrote: > For consideration: > > * Add IPv6 support built in + additional modules - Because it's 2018 maan. > * Add DEFERRED_STRUCT_PAGE_INIT - Let's see what breaks. We did not find any benefits with this on a P8 in terms of boot time with large memory. May be worth reinvestigating > * Add PPC_MEMTRACE - Small powernv debugfs driver for getting hardware traces. > * Add MEMORY_FAILURE - Machine check exceptions can now drive memory failure. > * Turn on FANOTIFY - This is the current filesystem notification feature. > * Turn on SCOM_DEBUGFS - Handy for hardware/firmware debugging, security risk? Yep, should not be in defconfig, IMHO > * Turn on async SCSI scanning - Let's see what breaks. > > * Make a bunch of USB hid drivers modules. > * Make SCSI SG, SR, and FC modules - FC is huge. > * Make video drivers (except AST GPU) modules - Also huge. > * Add MLX5 driver as a module - Popular demand. > * Make PCI serial driver a module - Uncommon? > > * Get rid of /dev/port - Not used. > * Remove legacy BSD ttys - Long dead. > * Remove IDE - Deprecated and replaced with ATA. > * Remove WIRELESS - Until we get POWER9 laptops. > * Remove RAW - Long deprecated in favour of direct IO. > * Remove floppy, parport, and PS2 input devices - not supported. > * Remove virtio drivers, ballooning - We're host only. I still think its good to have them, may be as modules? Should I switch to powerpc64le_defconfig for a single config with everything -- same kernel as guest and bare metal? > * Remove PPP - Sorry Paulus. > * Make more things modules, NFS FS, RAM disk, netconsole, MS-DOS fs. > > This does not disable FTRACE options, that's just an optimisation the > defconfig target made. make powernv_defconfig adds those to .config. > > This results in a significantly smaller vmlinux: > >textdata bss dec hex filename > 131217795284224 1383776 1978977912df7d3 vmlinux > 121262734771930 1341464 1823966711650b3 vmlinux > > Signed-off-by: Nicholas Piggin > --- Balbir Singh.
[PATCH v2] powerpc/config: powernv_defconfig updates
For consideration: * Add IPv6 support built in + additional modules - Because it's 2018 maan. * Add DEFERRED_STRUCT_PAGE_INIT - Let's see what breaks. * Add PPC_MEMTRACE - Small powernv debugfs driver for getting hardware traces. * Add MEMORY_FAILURE - Machine check exceptions can now drive memory failure. * Turn on FANOTIFY - This is the current filesystem notification feature. * Turn on SCOM_DEBUGFS - Handy for hardware/firmware debugging, security risk? * Turn on async SCSI scanning - Let's see what breaks. * Make a bunch of USB hid drivers modules. * Make SCSI SG, SR, and FC modules - FC is huge. * Make video drivers (except AST GPU) modules - Also huge. * Add MLX5 driver as a module - Popular demand. * Make PCI serial driver a module - Uncommon? * Get rid of /dev/port - Not used. * Remove legacy BSD ttys - Long dead. * Remove IDE - Deprecated and replaced with ATA. * Remove WIRELESS - Until we get POWER9 laptops. * Remove RAW - Long deprecated in favour of direct IO. * Remove floppy, parport, and PS2 input devices - not supported. * Remove virtio drivers, ballooning - We're host only. * Remove PPP - Sorry Paulus. * Make more things modules, NFS FS, RAM disk, netconsole, MS-DOS fs. This does not disable FTRACE options, that's just an optimisation the defconfig target made. make powernv_defconfig adds those to .config. This results in a significantly smaller vmlinux: textdata bss dec hex filename 131217795284224 1383776 1978977912df7d3 vmlinux 121262734771930 1341464 1823966711650b3 vmlinux Signed-off-by: Nicholas Piggin--- Changes since v1: - Imagine the "I have no idea what I'm doing" scientist dog meme. arch/powerpc/configs/powernv_defconfig | 105 +++-- 1 file changed, 62 insertions(+), 43 deletions(-) diff --git a/arch/powerpc/configs/powernv_defconfig b/arch/powerpc/configs/powernv_defconfig index 9e92aa6a52ba..371169362683 100644 --- a/arch/powerpc/configs/powernv_defconfig +++ b/arch/powerpc/configs/powernv_defconfig @@ -38,7 +38,9 @@ CONFIG_MODULE_UNLOAD=y CONFIG_MODVERSIONS=y CONFIG_MODULE_SRCVERSION_ALL=y CONFIG_PARTITION_ADVANCED=y +CONFIG_SCOM_DEBUGFS=y CONFIG_OPAL_PRD=y +CONFIG_PPC_MEMTRACE=y # CONFIG_PPC_PSERIES is not set # CONFIG_PPC_OF_BOOT_TRAMPOLINE is not set CONFIG_CPU_FREQ_DEFAULT_GOV_ONDEMAND=y @@ -54,7 +56,10 @@ CONFIG_NUMA=y CONFIG_MEMORY_HOTPLUG=y CONFIG_MEMORY_HOTREMOVE=y CONFIG_KSM=y +CONFIG_MEMORY_FAILURE=y +CONFIG_HWPOISON_INJECT=m CONFIG_TRANSPARENT_HUGEPAGE=y +CONFIG_DEFERRED_STRUCT_PAGE_INIT=y CONFIG_PPC_64K_PAGES=y CONFIG_PPC_SUBPAGE_PROT=y CONFIG_SCHED_SMT=y @@ -72,7 +77,13 @@ CONFIG_SYN_COOKIES=y CONFIG_INET_AH=m CONFIG_INET_ESP=m CONFIG_INET_IPCOMP=m -# CONFIG_IPV6 is not set +CONFIG_INET6_AH=m +CONFIG_INET6_ESP=m +CONFIG_INET6_IPCOMP=m +CONFIG_INET6_XFRM_MODE_TRANSPORT=m +CONFIG_INET6_XFRM_MODE_TUNNEL=m +CONFIG_INET6_XFRM_MODE_BEET=m +CONFIG_IPV6_SIT=m CONFIG_NETFILTER=y # CONFIG_NETFILTER_ADVANCED is not set CONFIG_BRIDGE=m @@ -81,33 +92,28 @@ CONFIG_NET_SCHED=y CONFIG_NET_CLS_BPF=m CONFIG_NET_CLS_ACT=y CONFIG_NET_ACT_BPF=m +CONFIG_DNS_RESOLVER=y CONFIG_BPF_JIT=y +# CONFIG_WIRELESS is not set CONFIG_UEVENT_HELPER_PATH="/sbin/hotplug" CONFIG_DEVTMPFS=y CONFIG_DEVTMPFS_MOUNT=y CONFIG_MTD=y CONFIG_MTD_BLOCK=y CONFIG_MTD_POWERNV_FLASH=y -CONFIG_PARPORT=m -CONFIG_PARPORT_PC=m -CONFIG_BLK_DEV_FD=m CONFIG_BLK_DEV_LOOP=y CONFIG_BLK_DEV_NBD=m -CONFIG_BLK_DEV_RAM=y +CONFIG_BLK_DEV_RAM=m CONFIG_BLK_DEV_RAM_SIZE=65536 -CONFIG_VIRTIO_BLK=m CONFIG_BLK_DEV_NVME=y -CONFIG_IDE=y -CONFIG_BLK_DEV_IDECD=y -CONFIG_BLK_DEV_GENERIC=y -CONFIG_BLK_DEV_AMD74XX=y CONFIG_BLK_DEV_SD=y CONFIG_CHR_DEV_ST=m -CONFIG_BLK_DEV_SR=y +CONFIG_BLK_DEV_SR=m CONFIG_BLK_DEV_SR_VENDOR=y -CONFIG_CHR_DEV_SG=y +CONFIG_CHR_DEV_SG=m CONFIG_SCSI_CONSTANTS=y -CONFIG_SCSI_FC_ATTRS=y +CONFIG_SCSI_SCAN_ASYNC=y +CONFIG_SCSI_FC_ATTRS=m CONFIG_SCSI_SRP_ATTRS=y CONFIG_SCSI_CXGB3_ISCSI=m CONFIG_SCSI_CXGB4_ISCSI=m @@ -121,7 +127,6 @@ CONFIG_SCSI_IPR=y CONFIG_SCSI_QLA_FC=m CONFIG_SCSI_QLA_ISCSI=m CONFIG_SCSI_LPFC=m -CONFIG_SCSI_VIRTIO=m CONFIG_SCSI_DH=y CONFIG_SCSI_DH_RDAC=m CONFIG_SCSI_DH_ALUA=m @@ -152,16 +157,16 @@ CONFIG_DUMMY=m CONFIG_MACVLAN=m CONFIG_MACVTAP=m CONFIG_VXLAN=m -CONFIG_NETCONSOLE=y +CONFIG_NETCONSOLE=m CONFIG_TUN=m CONFIG_VETH=m -CONFIG_VIRTIO_NET=m CONFIG_VORTEX=m CONFIG_ACENIC=m CONFIG_ACENIC_OMIT_TIGON_I=y CONFIG_PCNET32=m CONFIG_TIGON3=y CONFIG_BNX2X=m +# CONFIG_CAVIUM_PTP is not set CONFIG_CHELSIO_T1=m CONFIG_BE2NET=m CONFIG_S2IO=m @@ -172,46 +177,62 @@ CONFIG_IXGB=m CONFIG_IXGBE=m CONFIG_I40E=m CONFIG_MLX4_EN=m +CONFIG_MLX5_CORE=m +CONFIG_MLX5_FPGA=y +CONFIG_MLX5_CORE_EN=y +CONFIG_MLX5_CORE_IPOIB=y CONFIG_MYRI10GE=m CONFIG_QLGE=m CONFIG_NETXEN_NIC=m -CONFIG_PPP=m -CONFIG_PPP_BSDCOMP=m -CONFIG_PPP_DEFLATE=m -CONFIG_PPPOE=m -CONFIG_PPP_ASYNC=m -CONFIG_PPP_SYNC_TTY=m +CONFIG_USB_NET_DRIVERS=m +# CONFIG_WLAN is not set