3b53d6fdbc241173b4264aa49142ba94d406a806
The IRQ init structs are marked as __initconst which means this memory can be free after init. On this platform, the PCI IRQ init happens very late _after_ the kernel already freed the memory allocated for these structs. During IRQ allocation, the allocation function is passed with invalid data at this point leading to following error: [ 0.000000] SoC: Qualcomm Atheros QCA9533 ver 2 rev 0 [ 2.382828] Freeing unused kernel memory: 264K [ 34.414816] pci 0000:00:00.0: no irq found for pin 1 and [ 0.000000] SoC: Qualcomm Atheros QCA956X ver 1 rev 0 [ 2.125401] Freeing unused kernel memory: 284K [ 9.526479] pci 0000:00:00.0: no irq found for pin 1 After this patch: [ 14.960814] pci 0000:00:00.0: using irq 40 for pin 1 Commit318e19ba67("ar71xx: add v4.14 support") fixed this for the default targets already present in the source by default but forgot to remove the __initconst attribute for targets QCA953x and QCA956x which are only added later through platform patches. Fixes:318e19ba67("ar71xx: add v4.14 support") Reported-by: Sven Schönhoff <sven.schoenhoff@gmail.com> Reported-by: Dirk Brenken <dev@brenken.org> Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com> Tested-by: Dirk Brenken <dev@brenken.org>
_______ ________ __
| |.-----.-----.-----.| | | |.----.| |_
| - || _ | -__| || | | || _|| _|
|_______|| __|_____|__|__||________||__| |____|
|__| W I R E L E S S F R E E D O M
-----------------------------------------------------
This is the buildsystem for the OpenWrt Linux distribution.
To build your own firmware you need a Linux, BSD or MacOSX system (case
sensitive filesystem required). Cygwin is unsupported because of the lack
of a case sensitive file system.
You need gcc, binutils, bzip2, flex, python, perl, make, find, grep, diff,
unzip, gawk, getopt, subversion, libz-dev and libc headers installed.
1. Run "./scripts/feeds update -a" to obtain all the latest package definitions
defined in feeds.conf / feeds.conf.default
2. Run "./scripts/feeds install -a" to install symlinks for all obtained
packages into package/feeds/
3. Run "make menuconfig" to select your preferred configuration for the
toolchain, target system & firmware packages.
4. Run "make" to build your firmware. This will download all sources, build
the cross-compile toolchain and then cross-compile the Linux kernel & all
chosen applications for your target system.
Sunshine!
Your OpenWrt Community
http://www.openwrt.org
Description
This repository is a mirror of https://git.openwrt.org/openwrt/openwrt.git It is for reference only and is not active for check-ins. We will continue to accept Pull Requests here. They will be merged via staging trees then into openwrt.git.
Languages
C
61.7%
Makefile
18.7%
Shell
6.8%
Roff
6.5%
Perl
2.4%
Other
3.7%