On Wed, Feb 24, 2021 at 12:05 am, Greg Gallagher <g...@embeddedgreg.com> wrote:


On Mon, Feb 22, 2021 at 6:30 PM Gabriel Dinse <gabriel_di...@hotmail.com <mailto:gabriel_di...@hotmail.com>> wrote:


On Mon, Feb 22, 2021 at 6:08 pm, Greg Gallagher <g...@embeddedgreg.com <mailto:g...@embeddedgreg.com>> wrote:


On Mon, Feb 22, 2021 at 5:44 PM Gabriel Dinse <gabriel_di...@hotmail.com <mailto:gabriel_di...@hotmail.com>> wrote:


On Mon, Feb 22, 2021 at 5:26 pm, Greg Gallagher <g...@embeddedgreg.com <mailto:g...@embeddedgreg.com>> wrote:


On Mon, Feb 22, 2021 at 3:19 PM Gabriel Dinse <gabriel_di...@hotmail.com <mailto:gabriel_di...@hotmail.com>> wrote:


On Mon, Feb 22, 2021 at 9:12 am, Greg Gallagher <g...@embeddedgreg.com <mailto:g...@embeddedgreg.com>> wrote:


On Mon, Feb 22, 2021 at 5:15 AM Gabriel Dinse via Xenomai <xenomai@xenomai.org <mailto:xenomai@xenomai.org>> wrote:
 > This is a 32-bit build running on the rpi3?
 Yes, it is

> I have some ipipe fixes coming, but I don't think these are ipipe
 related.
> Can you show how you patched and built your kernel? I'll try to
 reproduce
  > on my end.  What compiler are you using?

 For patching the kernel, I did:
 xenomai-3.1 on  main ➜ ./scripts/prepare-kernel.sh
 --linux=~/Projects/linux-kernels/linux-5.4.93-ipipe --arch=arm
 --ipipe=~/Projects/linux-kernels/ipipe-core-5.4.93-arm-0.patch

The config I'm using is multi_v7_defconfig modified a little bit. The same configuration was fine for Vanilla kernel using the same version
 (5.4.93), as I was pretending to compare both.

Toolchain I'm using, selected directly on buildroot-2020.02.11 long
 term is: Linaro ARM 2018.05

Okay, I used that defconfig during the port so there shouldn’t be a problem. Let me try with my repos and I’ll let you know shortly.


Ok, sure
Let me know if I need to change configuration on my side from compiling it again.

-Greg


I built directly from the ipipe-arm tree, using Xenomai 3.1 ang gcc 10. Other than a few warnings that I'll silence later everything built okay. Let me take a look at the patch and see if something went wrong there. In the meantime if you want to sync the ipipe-arm tree and use the ipipe/5.4.y patch you should be able to build no problem. In the meantime I'll look at the patch, but I think our CI system uses the patch and hasn't seen any build issues. If you could run your patch command again with --verbose and send the output maybe that may tell us something.

Thanks

Greg

Could the problem be related to the toolchain used (Linaro ARM 2018.05)?

Another thing: when doing the Kernel configuration, I get the warning:
*** WARNING! Page migration (CONFIG_MIGRATION) may increase ***
*** latency. ***
But I'm not able to disable "Page migration", nor "Contiguous Memory Allocator", in "Memory Management options" menu.

About running with --verbose, I got:

xenomai-3.1 $ ./scripts/prepare-kernel.sh --linux=~/Projects/linux-kernels/linux-5.4.93-ipipe --arch=arm --ipipe=~/Projects/linux-kernels/ipipe-core-5.4.93-arm-0.patch --verbose Preparing kernel 5.4.94 in /home/gabriel/Projects/linux-kernels/linux-5.4.93-ipipe
prepare-kernel.sh: no I-pipe support found.
checking file Documentation/ipipe-arm.rst
checking file Documentation/ipiperst
checking file arch/arm/Kconfig
checking file arch/arm/common/it8152.c
checking file arch/arm/include/asm/arch_timerh
checking file arch/arm/include/asm/assembler.h
checking file arch/arm/include/asm/atomic.h
checking file arch/arm/include/asm/bitops.h
checking file arch/arm/include/asm/cmpxchg.h
checking file arch/arm/include/asm/efi.h
checking file arch/arm/include/asm/entry-macro-multi.S
checking file arch/arm/include/asm/hw_irq.h
checking file arch/arm/include/asm/ipipe.h
checking file arch/arm/include/asm/ipipe_base.h
checking file arch/arm/include/asm/ipipe_hwirq.h
checking file arch/arm/include/asm/irq.h
checking file arch/arm/include/asm/irqflags.h
checking file arch/arm/include/asm/mmu_context.h
checking file arch/arm/include/asm/percpu.h
checking file arch/arm/include/asm/setup.h
checking file arch/arm/include/asm/switch_to.h
checking file arch/arm/include/asm/thread_info.h
checking file arch/arm/include/asm/uaccess.h
checking file arch/arm/include/uapi/asm/unistd.h
checking file arch/arm/kernel/Makefile
checking file arch/arm/kernel/asm-offsets.c
checking file arch/arm/kernel/devtree.c
checking file arch/arm/kernel/entry-armv.S
checking file arch/arm/kernel/entry-common.S
checking file arch/arm/kernel/entry-header.S
checking file arch/arm/kernel/ipipe.c
checking file arch/arm/kernel/ipipe_tsc.c
checking file arch/arm/kernel/ipipe_tsc_asm.S
checking file arch/arm/kernel/perf_callchain.c
checking file arch/arm/kernel/process.c
checking file arch/arm/kernel/ptrace.c
checking file arch/arm/kernel/raw_printk.c
checking file arch/arm/kernel/setup.c
checking file arch/arm/kernel/signal.c
checking file arch/arm/kernel/smp.c
checking file arch/arm/kernel/smp_twd.c
checking file arch/arm/kernel/traps.c
checking file arch/arm/kernel/vdso.c
checking file arch/arm/mach-at91/Kconfig
checking file arch/arm/mach-davinci/Kconfig
checking file arch/arm/mach-davinci/time.c
checking file arch/arm/mach-imx/Kconfig
checking file arch/arm/mach-imx/avic.c
checking file arch/arm/mach-imx/gpc.c
checking file arch/arm/mach-imx/mach-imx51.c
checking file arch/arm/mach-imx/mach-imx53.c
checking file arch/arm/mach-imx/tzic.c
checking file arch/arm/mach-omap2/Kconfig
checking file arch/arm/mach-omap2/omap-wakeupgen.c
checking file arch/arm/mach-omap2/prm_common.c
checking file arch/arm/mach-omap2/timer.c
checking file arch/arm/mach-socfpga/Kconfig
checking file arch/arm/mach-sti/Kconfig
checking file arch/arm/mach-sunxi/Kconfig
checking file arch/arm/mach-zynq/Kconfig
checking file arch/arm/mm/Kconfig
checking file arch/arm/mm/alignment.c
checking file arch/arm/mm/cache-l2x0.c
checking file arch/arm/mm/context.c
checking file arch/arm/mm/fault.c
checking file arch/arm/plat-omap/Kconfig
checking file arch/arm/vfp/entry.S
checking file arch/arm/vfp/vfphwS
checking file arch/arm/vfp/vfpmodule.c
checking file drivers/base/core.c
checking file drivers/base/regmap/regmap-irqc
checking file drivers/clocksource/Kconfig
checking file drivers/clocksource/arm_arch_timer.c
checking file drivers/clocksource/arm_global_timer.c
checking file drivers/clocksource/bcm2835_timer.c
checking file drivers/clocksource/dw_apb_timer.c
checking file drivers/clocksource/dw_apb_timer_of.c
checking file drivers/clocksource/timer-atmel-tcb.c
checking file drivers/clocksource/timer-imx-gpt.c
checking file drivers/clocksource/timer-sp804.c
checking file drivers/clocksource/timer-ti-dm.c
checking file drivers/cpuidle/Kconfig
checking file drivers/cpuidle/cpuidle.c
checking file drivers/gpio/gpio-davinci.c
checking file drivers/gpio/gpio-mvebu.c
Hunk #8 succeeded at 1238 (offset -5 lines).
Hunk #9 succeeded at 1248 (offset -5 lines).
checking file drivers/gpio/gpio-mxc.c
checking file drivers/gpio/gpio-omap.c
checking file drivers/gpio/gpio-pl061.c
checking file drivers/gpio/gpio-zynq.c
checking file drivers/gpu/ipu-v3/ipu-common.c
checking file drivers/gpu/ipu-v3/ipu-prv.h
checking file drivers/irqchip/irq-atmel-aic.c
checking file drivers/irqchip/irq-atmel-aic5.c
checking file drivers/irqchip/irq-bcm2835.c
checking file drivers/irqchip/irq-bcm2836.c
checking file drivers/irqchip/irq-bcm7120-l2.c
checking file drivers/irqchip/irq-brcmstb-l2.c
checking file drivers/irqchip/irq-crossbar.c
checking file drivers/irqchip/irq-dw-apb-ictl.c
checking file drivers/irqchip/irq-gic-v2m.c
checking file drivers/irqchip/irq-gic-v3.c
checking file drivers/irqchip/irq-gic.c
checking file drivers/irqchip/irq-imx-gpcv2.c
checking file drivers/irqchip/irq-omap-intc.c
checking file drivers/irqchip/irq-stm32-exti.c
checking file drivers/irqchip/irq-sunxi-nmi.c
checking file drivers/irqchip/irq-versatile-fpga.c
checking file drivers/irqchip/irq-vic.c
checking file drivers/memory/omap-gpmc.c
checking file drivers/mfd/tps65217.c
checking file drivers/misc/Kconfig
checking file drivers/pci/controller/dwc/pcie-designware-host.c
checking file drivers/pci/controller/pcie-altera.c
checking file drivers/pinctrl/bcm/pinctrl-bcm2835.c
checking file drivers/pinctrl/pinctrl-at91.c
checking file drivers/pinctrl/pinctrl-rockchip.c
checking file drivers/pinctrl/pinctrl-single.c
checking file drivers/pinctrl/sunxi/pinctrl-sunxi.c
checking file drivers/pinctrl/sunxi/pinctrl-sunxi.h
checking file drivers/soc/dove/pmu.c
checking file drivers/tty/serial/8250/8250_core.c
checking file drivers/tty/serial/amba-pl011.c
checking file drivers/tty/serial/xilinx_uartps.c
checking file fs/exec.c
checking file include/asm-generic/atomic.h
checking file include/asm-generic/cmpxchg-localh
checking file include/asm-generic/ipipe.h
checking file include/asm-generic/percpu.h
checking file include/asm-generic/switch_to.h
checking file include/clocksource/timer-sp804.h
checking file include/clocksource/timer-ti-dm.h
checking file include/ipipe/setup.h
checking file include/ipipe/thread_infoh
checking file include/linux/clockchips.h
checking file include/linux/console.h
checking file include/linux/dw_apb_timer.h
checking file include/linux/ftrace.h
checking file include/linux/gpio/driver.h
checking file include/linux/hardirqh
checking file include/linux/interrupt.h
checking file include/linux/ipipe.h
checking file include/linux/ipipe_debug.h
checking file include/linux/ipipe_domain.h
checking file include/linux/ipipe_lock.h
checking file include/linux/ipipe_tickdev.h
checking file include/linux/ipipe_trace.h
checking file include/linux/irq.h
checking file include/linux/irqchip/arm-gic-common.h
checking file include/linux/irqdesc.h
checking file include/linux/irqflags.h
checking file include/linux/irqnr.h
checking file include/linux/kernel.h
checking file include/linux/kvm_host.h
checking file include/linux/preempth
checking file include/linux/printk.h
checking file include/linux/rwlock.h
checking file include/linux/rwlock_api_smp.h
checking file include/linux/sched.h
checking file include/linux/sched/coredump.h
checking file include/linux/spinlock.h
checking file include/linux/spinlock_api_smp.h
checking file include/linux/spinlock_up.h
checking file include/linux/stop_machine.h
checking file init/Kconfig
checking file init/main.c
checking file kernel/Makefile
checking file kernel/context_tracking.c
checking file kernel/debug/debug_core.c
checking file kernel/exit.c
checking file kernel/forkc
checking file kernel/ipipe/Kconfig
checking file kernel/ipipe/Kconfig.debug
checking file kernel/ipipe/Makefile
checking file kernel/ipipe/core.c
checking file kernel/ipipe/timer.c
checking file kernel/ipipe/tracer.c
checking file kernel/irq/chip.c
checking file kernel/irq/dummychip.c
checking file kernel/irq/generic-chip.c
checking file kernel/irq/internals.h
checking file kernel/irq/irqdesc.c
checking file kernel/irq/manage.c
checking file kernel/irq/msi.c
checking file kernel/locking/lockdep.c
checking file kernel/locking/lockdep_internals.h
checking file kernel/locking/spinlock.c
checking file kernel/module.c
checking file kernel/notifier.c
checking file kernel/panic.c
checking file kernel/power/hibernate.c
checking file kernel/printk/printk.c
checking file kernel/ptrace.c
checking file kernel/rcu/Kconfig.debug
checking file kernel/sched/core.c
checking file kernel/sched/idle.c
checking file kernel/sched/sched.h
checking file kernel/sched/wait.c
checking file kernel/signal.c
checking file kernel/stop_machine.c
checking file kernel/time/clockevents.c
checking file kernel/time/timer.c
checking file kernel/trace/Kconfig
checking file kernel/trace/ftrace.c
checking file kernel/trace/ring_buffer.c
checking file kernel/trace/trace.c
checking file kernel/trace/trace_clock.c
checking file kernel/trace/trace_functions.c
checking file kernel/trace/trace_functions_graph.c
checking file kernel/trace/trace_preemptirq.c
checking file lib/Kconfig.debug
checking file lib/atomic64.c
checking file lib/bust_spinlocksc
checking file lib/dump_stack.c
checking file lib/ioremap.c
checking file lib/smp_processor_id.c
checking file mm/memory.c
checking file mm/mlock.c
checking file mm/mmu_context.c
checking file mm/mprotect.c
checking file mm/vmalloc.c
I-pipe core/arm #0 installed.
Links installed.
Build system ready

Are you using a 32-bit arm compiler or the aarch64 compiler?

-Greg

I'm using a 32-bit compiler

Can you send me your build commands?

thanks

Greg

I'm using buildroot for building the image using the patched kernel. I use the default configuration "make raspberrypi3_defconfig" and setup the kernel using custom git repository (patched kernel). I tried all latest toolchains available in Buildroot, but I get the same errors when building.

Thank you,
Gabriel Dinse

Reply via email to