* Building the Raspberry Pi kernel with RT PREEMPT @ 2018-02-06 23:02 t-v.k 2018-02-07 7:55 ` Alexander Dahl 0 siblings, 1 reply; 5+ messages in thread From: t-v.k @ 2018-02-06 23:02 UTC (permalink / raw) To: linux-rt-users Hello, this is my first time on a mailing list. I'm not sure how this works. The FAQ linked on this page: https://wiki.linuxfoundation.org/realtime/communication/mailinglists just says "Page not found". I hope I can just ask a question this way. I'm currently trying to automate the build of a Linux kernel with the RT PREEMPT patch. The kernel that I'm trying to build is in this git repository: https://github.com/raspberrypi/linux (branch rpi-4.14.y) It's the official kernel for the Raspberry Pi. But at the moment I am stuck. There are two problems. When I apply the patch "patch-4.14.15-rt13.patch.gz", I get errors like: Hunk #9 FAILED at 795. ... 1 out of 20 hunks FAILED -- saving rejects to file kernel/softirq.c.rej ... and as a result of this it exits with code 1. Here is the full build process output: https://gitlab.com/T-vK/rpi-rt-kernel/-/jobs/51343435 When I just ignore it and continue I get to the point where I can run "make zImage", which then fails with this: kernel/softirq.c: In function 'invoke_softirq': kernel/softirq.c:801:3: error: implicit declaration of function 'do_softirq_own_stack' [-Werror=implicit-function-declaration] do_softirq_own_stack(); ^ kernel/softirq.c:806:2: error: #else without #if #else /* PREEMPT_RT_FULL */ ^ kernel/softirq.c:807:2: warning: ISO C90 forbids mixed declarations and code [-Wdeclaration-after-statement] unsigned long flags; ^ kernel/softirq.c:817:2: error: #endif without #if #endif ^ cc1: some warnings being treated as errors scripts/Makefile.build:320: recipe for target 'kernel/softirq.o' failed make[1]: *** [kernel/softirq.o] Error 1 Makefile:1028: recipe for target 'kernel' failed make: *** [kernel] Error 2 The full log is in the build output linked above. I've been trying to follow this guide: http://www.frank-durr.de/?p=203 This is my "build script" if you will: https://gitlab.com/T-vK/rpi-rt-kernel/blob/master/.gitlab-ci.yml The docker image it runs on has been build from this file: https://gitlab.com/T-vK/rpi-rt-kernel/blob/master/Dockerfile I should mention, the patch that I apply right before "make zImage" (patch < rt-config.patch) simply applies this menuconfig setting: Kernel Features → Preemption Model (Fully Preemptible Kernel (RT)) → Fully Preemptible Kernel (RT) (I just created the default config for rpi-4.14.y using "make bcm2709_defconfig" and then copied it and modified the above mentioned option using "make menuconfig" and then I just ran a "diff -u ..." on it to create the patch) Can anyone help me with these issues? Best regards T-vK ^ permalink raw reply [flat|nested] 5+ messages in thread
* Re: Building the Raspberry Pi kernel with RT PREEMPT 2018-02-06 23:02 Building the Raspberry Pi kernel with RT PREEMPT t-v.k @ 2018-02-07 7:55 ` Alexander Dahl 2018-02-08 16:19 ` t-v.k 0 siblings, 1 reply; 5+ messages in thread From: Alexander Dahl @ 2018-02-07 7:55 UTC (permalink / raw) To: linux-rt-users; +Cc: t-v.k@gmx.net Hello, Am Mittwoch, 7. Februar 2018, 00:02:52 CET schrieb t-v.k@gmx.net: > this is my first time on a mailing list. I'm not sure how this works. You write to the list address, everyone also subscribed gets your mail, including you. Some people will set you in Cc additionally. > I'm currently trying to automate the build of a Linux kernel with the RT > PREEMPT patch. The kernel that I'm trying to build is in this git > repository: https://github.com/raspberrypi/linux (branch rpi-4.14.y) > > It's the official kernel for the Raspberry Pi. Yes, and it has some patches on top of the upstream vanilla kernel, IIRC around 200 the last time a looked at it. > But at the moment I am stuck. There are two problems. When I apply the > patch "patch-4.14.15-rt13.patch.gz", I get errors like: > > Hunk #9 FAILED at 795. > ... > 1 out of 20 hunks FAILED -- saving rejects to file kernel/softirq.c.rej > ... > > and as a result of this it exits with code 1. > > Here is the full build process output: > https://gitlab.com/T-vK/rpi-rt-kernel/-/jobs/51343435 > > When I just ignore it and continue I get to the point where I can run > "make zImage", which then fails with this: This makes no sense, the patch must apply. You don't want to build anything with a half applied patch. > Can anyone help me with these issues? If you're on v4.14 anyway, I would recommend to run a vanilla kernel and put the RT patch(es) on top. At least for a system without graphics, this should work. (I had a RPi 1B running with vanilla v4.12 built with ptxdist and the DistroKit BSP some time ago, v4.14 and v4.15 also run fine headless. Should also work for RPi 2.) HTH & Greets Alex ^ permalink raw reply [flat|nested] 5+ messages in thread
* Re: Building the Raspberry Pi kernel with RT PREEMPT 2018-02-07 7:55 ` Alexander Dahl @ 2018-02-08 16:19 ` t-v.k 2018-02-09 10:35 ` Roland Hieber 0 siblings, 1 reply; 5+ messages in thread From: t-v.k @ 2018-02-08 16:19 UTC (permalink / raw) To: linux-rt-users; +Cc: Alexander Dahl, Mirza Krak Thanks for the answers! I'll need a DE in the end so I'll probably have to stick with the Raspberry Pi kernel. Also, I would like to have a very recent kernel. I'm using a Raspberry Pi 3 Model B btw. I think the issue with my patching was that I applied the patches for '4.14.15-rt13' while the 'rpi-4.14.y' branch from the Raspberry Pi kernel was a bit ahead (~4.14.17). I went back in the commit history and found a commit that literally said 'Linux 4.14.15', then I changed my script to check that out instead of 'rpi-4.14.y'. Now the patches apply successfully: https://gitlab.com/T-vK/rpi-rt-kernel/-/jobs/51703707 But as you can see there is another issue now. 'make bcm2709_defconfig' doesn't work: > Can't find default configuration "arch/arm/configs/bcm2709_defconfig"! T-vK On 07 February 2018 at 08:55, "Alexander Dahl" <ada@thorsis.com> wrote: Am Mittwoch, 7. Februar 2018, 00:02:52 CET schrieb t-v.k@gmx.net: > this is my first time on a mailing list. I'm not sure how this works. You write to the list address, everyone also subscribed gets your mail, including you. Some people will set you in Cc additionally. > I'm currently trying to automate the build of a Linux kernel with the RT > PREEMPT patch. The kernel that I'm trying to build is in this git > repository: https://github.com/raspberrypi/linux (branch rpi-4.14.y) > > It's the official kernel for the Raspberry Pi. Yes, and it has some patches on top of the upstream vanilla kernel, IIRC around 200 the last time a looked at it. > But at the moment I am stuck. There are two problems. When I apply the > patch "patch-4.14.15-rt13.patch.gz", I get errors like: > > Hunk #9 FAILED at 795. > ... > 1 out of 20 hunks FAILED -- saving rejects to file kernel/softirq.c.rej > ... > > and as a result of this it exits with code 1. > > Here is the full build process output: > https://gitlab.com/T-vK/rpi-rt-kernel/-/jobs/51343435[https://gitlab.com/T-vK/rpi-rt-kernel/-/jobs/51343435] > > When I just ignore it and continue I get to the point where I can run > "make zImage", which then fails with this: This makes no sense, the patch must apply. You don't want to build anything with a half applied patch. > Can anyone help me with these issues? If you're on v4.14 anyway, I would recommend to run a vanilla kernel and put the RT patch(es) on top. At least for a system without graphics, this should work. (I had a RPi 1B running with vanilla v4.12 built with ptxdist and the DistroKit BSP some time ago, v4.14 and v4.15 also run fine headless. Should also work for RPi 2.) HTH & Greets Alex ^ permalink raw reply [flat|nested] 5+ messages in thread
* Re: Building the Raspberry Pi kernel with RT PREEMPT 2018-02-08 16:19 ` t-v.k @ 2018-02-09 10:35 ` Roland Hieber 2018-02-09 11:16 ` t-v.k 0 siblings, 1 reply; 5+ messages in thread From: Roland Hieber @ 2018-02-09 10:35 UTC (permalink / raw) To: t-v.k; +Cc: linux-rt-users, Alexander Dahl, Mirza Krak Hi, the bcm2709_defconfig is an addition of the Raspberry Pi version of the kernel, and is therefore not available in the upstream 4.4.15 commit you checked out. - Roland On 08.02.2018 17:19, t-v.k@gmx.net wrote: > Thanks for the answers! > > I'll need a DE in the end so I'll probably have to stick with the Raspberry Pi kernel. > Also, I would like to have a very recent kernel. I'm using a Raspberry Pi 3 Model B btw. > I think the issue with my patching was that I applied the patches for '4.14.15-rt13' while the 'rpi-4.14.y' branch from the Raspberry Pi kernel was a bit ahead (~4.14.17). > I went back in the commit history and found a commit that literally said 'Linux 4.14.15', then I changed my script to check that out instead of 'rpi-4.14.y'. > Now the patches apply successfully: https://gitlab.com/T-vK/rpi-rt-kernel/-/jobs/51703707 > But as you can see there is another issue now. 'make bcm2709_defconfig' doesn't work: >> Can't find default configuration "arch/arm/configs/bcm2709_defconfig"! > > T-vK > > > On 07 February 2018 at 08:55, "Alexander Dahl" <ada@thorsis.com> wrote: > > Am Mittwoch, 7. Februar 2018, 00:02:52 CET schrieb t-v.k@gmx.net: >> this is my first time on a mailing list. I'm not sure how this works. > > You write to the list address, everyone also subscribed gets your mail, > including you. Some people will set you in Cc additionally. > >> I'm currently trying to automate the build of a Linux kernel with the RT >> PREEMPT patch. The kernel that I'm trying to build is in this git >> repository: https://github.com/raspberrypi/linux (branch rpi-4.14.y) >> >> It's the official kernel for the Raspberry Pi. > > Yes, and it has some patches on top of the upstream vanilla kernel, IIRC > around 200 the last time a looked at it. > >> But at the moment I am stuck. There are two problems. When I apply the >> patch "patch-4.14.15-rt13.patch.gz", I get errors like: >> >> Hunk #9 FAILED at 795. >> ... >> 1 out of 20 hunks FAILED -- saving rejects to file kernel/softirq.c.rej >> ... >> >> and as a result of this it exits with code 1. >> >> Here is the full build process output: >> https://gitlab.com/T-vK/rpi-rt-kernel/-/jobs/51343435[https://gitlab.com/T-vK/rpi-rt-kernel/-/jobs/51343435] >> >> When I just ignore it and continue I get to the point where I can run >> "make zImage", which then fails with this: > > This makes no sense, the patch must apply. You don't want to build anything > with a half applied patch. > >> Can anyone help me with these issues? > > If you're on v4.14 anyway, I would recommend to run a vanilla kernel and put > the RT patch(es) on top. At least for a system without graphics, this should > work. (I had a RPi 1B running with vanilla v4.12 built with ptxdist and the > DistroKit BSP some time ago, v4.14 and v4.15 also run fine headless. Should > also work for RPi 2.) > > HTH & Greets > Alex > > -- > To unsubscribe from this list: send the line "unsubscribe linux-rt-users" in > the body of a message to majordomo@vger.kernel.org > More majordomo info at http://vger.kernel.org/majordomo-info.html > -- Pengutronix e.K. | Roland Hieber | Industrial Linux Solutions | http://www.pengutronix.de/ | Peiner Str. 6-8, 31137 Hildesheim | Phone: +49-5121-206917-5086 | Amtsgericht Hildesheim, HRA 2686 | Fax: +49-5121-206917-5555 | ^ permalink raw reply [flat|nested] 5+ messages in thread
* Re: Building the Raspberry Pi kernel with RT PREEMPT 2018-02-09 10:35 ` Roland Hieber @ 2018-02-09 11:16 ` t-v.k 0 siblings, 0 replies; 5+ messages in thread From: t-v.k @ 2018-02-09 11:16 UTC (permalink / raw) To: linux-rt-users; +Cc: Alexander Dahl, Mirza Krak, Roland Hieber Hey, the commit that I checked out was from the raspberrypi kernel repository, but it does indeed not have the 'bcm2709_defconfig': https://github.com/raspberrypi/linux/tree/a16134b082346b7e7c34f594a0763eafacdcea92/arch/arm/configs The problem is that when that file was added, the branch was at 4.14.17 already. But as I said, I need 4.14.15. :/ Maybe I could just use the old 4.14.15 commit and add that one file from the 4.14.17 state? - T-vK On 02/09/2018 11:35 AM, Roland Hieber wrote: > Hi, > > the bcm2709_defconfig is an addition of the Raspberry Pi version of the > kernel, and is therefore not available in the upstream 4.4.15 commit you > checked out. > > - Roland > > On 08.02.2018 17:19, t-v.k@gmx.net wrote: >> Thanks for the answers! >> >> I'll need a DE in the end so I'll probably have to stick with the >> Raspberry Pi kernel. >> Also, I would like to have a very recent kernel. I'm using a Raspberry >> Pi 3 Model B btw. >> I think the issue with my patching was that I applied the patches for >> '4.14.15-rt13' while the 'rpi-4.14.y' branch from the Raspberry Pi >> kernel was a bit ahead (~4.14.17). >> I went back in the commit history and found a commit that literally >> said 'Linux 4.14.15', then I changed my script to check that out >> instead of 'rpi-4.14.y'. >> Now the patches apply successfully: >> https://gitlab.com/T-vK/rpi-rt-kernel/-/jobs/51703707 >> But as you can see there is another issue now. 'make >> bcm2709_defconfig' doesn't work: >>> Can't find default configuration "arch/arm/configs/bcm2709_defconfig"! >> >> T-vK >> On 07 February 2018 at 08:55, "Alexander Dahl" <ada@thorsis.com> >> wrote: >> >> Am Mittwoch, 7. Februar 2018, 00:02:52 CET schrieb t-v.k@gmx.net: >>> this is my first time on a mailing list. I'm not sure how this works. >> >> You write to the list address, everyone also subscribed gets your mail, >> including you. Some people will set you in Cc additionally. >> >>> I'm currently trying to automate the build of a Linux kernel with the RT >>> PREEMPT patch. The kernel that I'm trying to build is in this git >>> repository: https://github.com/raspberrypi/linux (branch rpi-4.14.y) >>> >>> It's the official kernel for the Raspberry Pi. >> >> Yes, and it has some patches on top of the upstream vanilla kernel, IIRC >> around 200 the last time a looked at it. >> >>> But at the moment I am stuck. There are two problems. When I apply the >>> patch "patch-4.14.15-rt13.patch.gz", I get errors like: >>> >>> Hunk #9 FAILED at 795. >>> ... >>> 1 out of 20 hunks FAILED -- saving rejects to file kernel/softirq.c.rej >>> ... >>> >>> and as a result of this it exits with code 1. >>> >>> Here is the full build process output: >>> https://gitlab.com/T-vK/rpi-rt-kernel/-/jobs/51343435[https://gitlab.com/T-vK/rpi-rt-kernel/-/jobs/51343435] >>> >>> >>> When I just ignore it and continue I get to the point where I can run >>> "make zImage", which then fails with this: >> >> This makes no sense, the patch must apply. You don't want to build >> anything >> with a half applied patch. >> >>> Can anyone help me with these issues? >> >> If you're on v4.14 anyway, I would recommend to run a vanilla kernel >> and put >> the RT patch(es) on top. At least for a system without graphics, this >> should >> work. (I had a RPi 1B running with vanilla v4.12 built with ptxdist >> and the >> DistroKit BSP some time ago, v4.14 and v4.15 also run fine headless. >> Should >> also work for RPi 2.) >> >> HTH & Greets >> Alex >> -- >> To unsubscribe from this list: send the line "unsubscribe >> linux-rt-users" in >> the body of a message to majordomo@vger.kernel.org >> More majordomo info at http://vger.kernel.org/majordomo-info.html >> > ^ permalink raw reply [flat|nested] 5+ messages in thread
end of thread, other threads:[~2018-02-09 11:16 UTC | newest] Thread overview: 5+ messages (download: mbox.gz follow: Atom feed -- links below jump to the message on this page -- 2018-02-06 23:02 Building the Raspberry Pi kernel with RT PREEMPT t-v.k 2018-02-07 7:55 ` Alexander Dahl 2018-02-08 16:19 ` t-v.k 2018-02-09 10:35 ` Roland Hieber 2018-02-09 11:16 ` t-v.k
This is a public inbox, see mirroring instructions for how to clone and mirror all data and code used for this inbox