Debugging using valgrind shows stack corruption due to a buffer overflow.
The author of the generator assumes the filename ends with "root",
while it should be "rootfs".
Fix this by accounting for the 2 missing characters which solves the build issues.
More work is required to cleanup this source, which will be done later on.
Reported-by: Hannu Nyman <hannu.nyman@iki.fi> Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
As indicated on mailinglist discussion, the cause seems to be
the usage of very old SDMA firmware which is present in the soc:
[ 0.624302] imx-sdma 20ec000.sdma: Direct firmware load for imx/sdma/sdma-imx6q.bin failed with error -2
[ 0.624318] imx-sdma 20ec000.sdma: Falling back to user helper
[ 64.531607] imx-sdma 20ec000.sdma: external firmware not found, using ROM firmware
This patch adds the new firmware binary. (2196 bytes)
It is required to embed the binary into the kernel image, as it
gets loaded very early in the boot process where the rootfs is not
available yet:
Koen Vandeputte [Mon, 5 Nov 2018 10:31:12 +0000 (11:31 +0100)]
ath9k: fix dynack in IBSS mode
Currently, dynack was only tested upstream using AP/STA mode.
Testing it on IBSS, showed that late-ack detection was broken.
This is caused due to dynack using Association Request/Response
frames for late-ack detection, which IBSS does not use.
Also allowing Authentication frames here solves this.
A second issue also got fixed, which was also seen AP/STA mode:
When a station was added, the estimated value would be exponentially averaged
using 0 as a starting point.
This means that on larger distances, the ack timeout was still not high
enough before synchronizing would run out of late-ack's for estimation.
Fix this by using the initial estimated value as a baseline
and only start averaging in the following estimation rounds.
Test setup:
- 2x identical devices: RB912UAG-5HPnD + 19dB sector
- IBSS
- 2x2 802.11an (ar9340), HT20, long GI
- RSSI's -70 / -71
- Real distance: 23910 meter
Results (60s iperf runs):
Fixed coverage class 54 (up to 24300m):
* 21.5 Mbits/sec
Koen Vandeputte [Mon, 5 Nov 2018 11:53:55 +0000 (12:53 +0100)]
ar71xx: disable some tiny targets with kernel 4.14
The bump to kernel 4.14 caused a massive increase in kernel size.
For most targets, switching them to dynamic partitioning allowed
to cope with this.
On some targets, the kernel partition is located behind the rootfs,
which disallows switching to dynamic partitioning as the boot location
would be altered, requiring a u-boot change.
Also within the tiny section, which disables kernel symbols etc
to decrease the image size, the partition size is still too small.
Disable these targets for now, fixing image generation:
David Bauer [Sun, 4 Nov 2018 15:01:39 +0000 (16:01 +0100)]
ipq40xx: fix NBG6617 LED mapping
The NBG6617's LEDs are wrongly identified in the 01_leds boardinit
script (board instead of boardname), resulting in referencing
non-existent LEDs in UCI.
This patch replaces the custom autoload quirk of the
RT-AC58U with a bootargs-append overwrite.
The vendor's u-boot doesn't leave the bootargs / cmdline alone,
so the it can't be overwritten in any other way right now...
And of course, this will be a lot of fun to deal with once
the device switches to the new spi-nand subsystem.
Signed-off-by: Christian Lamparter <chunkeey@gmail.com>
Hauke Mehrtens [Thu, 1 Nov 2018 13:05:59 +0000 (14:05 +0100)]
scripts: update config.guess and config.sub
This updates these two files to commit 2fa97a8a0ed3 ("config.guess
(amd64:CYGWIN*:*:*, x86_64:CYGWIN*:*:*): Set master") which is the
current master of
https://git.savannah.gnu.org/gitweb/?p=config.git;a=summary
This contains updates for multiple architectures and will unbreak the
build on the x32 ABI.
openssl: enable OPENSSL_WITH_DEPRECATED when OpenSSL is built as a build dep
Some package (e.g. libunbound) depend on OPENSSL_WITH_DEPRECATED. In some
situations it may happen that libunbound and openssl are only pulled in as
build dependencies, but are not enabled in .config.
In such cases, the defaults of symbols like OPENSSL_WITH_DEPRECATED are
ignored (as the whole symbol depends on PACKAGE_libopenssl), and config
symbol dependencies of libunbound aren't effective either (as libunbound
is not actually enabled).
This commit works around the issue by introducing a hidden negated symbol
OPENSSL_NO_DEPRECATED, which is always disabled when PACKAGE_libopenssl is
disabled, and ensures that OpenSSL is built with deprecated APIs in this
case. A user can still manage to break the build by explicitly enabling
libopenssl and disabling OPENSSL_WITH_DEPRECATED; the interaction between
build dependencies and config symbols will require further discussion.
Radek Dostál [Mon, 22 Oct 2018 20:34:17 +0000 (22:34 +0200)]
ar71xx: switch TP-Link RE450 v1 to dynamic partitioning
As mentioned in commit 5f24933 recent changes on ar71xx (switch to 4.14,
memory compaction, ...) cause an increase in kernel size, making it too
big for RE450.
RE450 images were not build due to the following error message:
os-image partition too big (more than 1572864 bytes): Success
Tested on RE450, device boots and was used to send this patch.
Reported-by: Enrico Mioso <mrkiko.rs@gmail.com> Suggested-by: David Bauer <mail@david-bauer.net> Signed-off-by: Radek Dostál <rd@radekdostal.com>
[rewrote commit msg keeping it tight + fixed SoB lines] Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
YuheiOKAWA [Thu, 4 Oct 2018 16:08:51 +0000 (01:08 +0900)]
ath79: add support for PQI Air Pen
SoC: AR9330 (or AR9331 revision?)
Ethernet x1, Wireless 2.4G, uSD card slot x1.
USB Power, include Li-Po Battery.
Flash 8MiB. (factory is dual image)
1. write image is use half 4MiB size from factory.
write initramfs image to mtd6 and mtd7.
2. change next boot setting. next is mtd6 boot.
echo -ne "\x01" | dd of=/dev/mtdblock8 conv=notrunc bs=1 count=1 seek=0
3. rewrite sysupgrade image.
change next boot setting. next is mtd4.
echo -ne "\x00" | dd of=/dev/mtdblock8 conv=notrunc bs=1 count=1 seek=0
ath79: Add support for Ubiquiti LiteAP ac (LAP-120)
This commit adds support for the Ubiquiti LiteAP ac (LAP-120), an outdoor
5 GHz AC access point with an integrated 120° 16 dBi antenna. The device
was previously known as LiteBeam AP ac but was later rebranded.
The integrated QCA899X is a Ubiquiti branded part with modified vendor
and product id (0777:11ac9). It is very similar to the NanoStation loco
AC, except for the 2.4 GHz management radio (missing here).
Installation procedure is the same as the NanoStation [loco] AC:
1. Connect to serial header on device
2. Power on device and enter uboot console
3. Set up tftp server serving an openwrt initramfs build
4. Load initramfs build using the command tftpboot in the uboot cli
5. Boot the loaded image using the command bootm
6. Copy squashfs openwrt sysupgrade build to the booted device
7. Use mtd to write sysupgrade to partition "firmware"
8. Reboot and enjoy
Signed-off-by: Roger Pueyo Centelles <roger.pueyo@guifi.net>
Daniel Engberg [Wed, 10 Oct 2018 11:04:31 +0000 (13:04 +0200)]
mt76: Fix dependencies for PCI support
USB support doesn't necessarily mean that there's
PCI support available so move that to the drivers
which requires PCI support. This applies to the
sunxi platform for instance.
Signed-off-by: Daniel Engberg <daniel.engberg.lists@pyret.net> Signed-off-by: Felix Fietkau <nbd@nbd.name> [fix mt76x0e]
Felix Fietkau [Thu, 25 Oct 2018 20:48:49 +0000 (22:48 +0200)]
mt76: update to the latest version
0b8b15f mt7603: use common mmio mcu struct d612e2e mt76: mt76x02: skip station tx status for non-sta wcid entries d89d84b mt76: mt76x02: only override control->sta on sw-encrypted tx 9d59d2a mt76: add support for reporting tx status with skb ed17ba2 mt7603: use common tx status handling code 14b6c59 mt76x0: use band parameter for LC calibration
Upgrade 88W8997 firmware to 8.4.0.52.
Removed unnecessary firmware settings.
Added vendor events.
Fixed crash problem when module is removed.
Modified the code to protect tx queues.
Signed-off-by: Jonathan Lancett <j.lancett@ntlworld.com>
[tidy commit message] Signed-off-by: Kevin Darbyshire-Bryant <ldir@darbyshire-bryant.me.uk>
Hans Dedecker [Tue, 23 Oct 2018 13:55:09 +0000 (15:55 +0200)]
glibc: update to latest 2.27 commit (BZ #23562, BZ #23275)
77b4b8231e signal: Use correct type for si_band in siginfo_t [BZ #23562] 5bdb6897fc Fix race in pthread_mutex_lock while promoting to PTHREAD_MUTEX_ELISION_NP [BZ #23275]
Robert Marko [Fri, 19 Oct 2018 07:54:32 +0000 (09:54 +0200)]
linux-firmware: Update linux-firmware to 2018-10-18
Kalles ath10k PR was finally merged so update linux-firmware to
include those changes.
This is needed since disabling ath10k-firmware a lot of custom BDF-s
in board-2.bin-s are not available in previously outdated linux-firmware
board-2.bin-s.
This also includes support for boards currently using ipq-wifi and other
WIP ones.
- comment on BSP u-boot behaviour in regards to
what it edits and look for
- annotate irq lines with the help of interrupt-names
- remove deprecated "device_type" properties
The pci and network device_type had to stay since
they are required by the drivers and u-boot.
the cpu and memory device_types will remain as well
as they are still part of the DT Spec.
Signed-off-by: Christian Lamparter <chunkeey@gmail.com>
With the upcoming 4.19 release, the serial console on the
Netgear WNDR4700 would no longer work as it is never really
set and always relied on the kernel's serial code not to
change the baud rate.
On the stock firmware, Netgear forced the console setting
through a custom CONFIG_CMDLINE in their kernel to 115200.
Normally, they should have done it in a different way and
just passed the baudrate through a "console=..." kernel
parameter via the bootargs in the "/chosen" dt node.
But in their default u-boot bootcmd setting, they somehow
forgot to add the "run addtty", so there's no easy way to
pass the baudrate from u-boot to the kernel. So it has
to be forced as otherwise it ends up as 9600 baud.
Signed-off-by: Christian Lamparter <chunkeey@gmail.com>
The -rcX "testing" kernels are no longer hosted on
cdn.kernel.org file servers directly in a "testing"
directory. Therefore the logic that tested for "-rc"
can be removed.
Signed-off-by: Christian Lamparter <chunkeey@gmail.com>
Linus Walleij [Wed, 17 Oct 2018 18:46:19 +0000 (20:46 +0200)]
gemini: Fix up image generation
I noticed that the image generator for the Gemini generates
some 10+ MB files for the second (application) partition.
This is just wrong. The first 6144K partition named initramfs
easily fits OpenWRTs squashfs,jffs2 overlayed partitions
with nice headroom for storing configuration files.
Generate a blank partition for the hddapp.tgz file and delete
it after generating the firmware image - when performing
updates manually you just want the "rd.z" file around
anyways.
Linus Walleij [Thu, 18 Oct 2018 09:30:27 +0000 (11:30 +0200)]
gemini: Break out USB to packages
This creates a new kernel package for the fotg210 host
controller and uses that with the gemini to shrink the
kernel. The SQ201 needs the USB2 PCI package as well.
The build system required me to make kernel_oldconfig
beofore it would build without errors so some minor
unrelated Kconfig entries are changed.
Daniel Engberg [Thu, 22 Feb 2018 22:39:40 +0000 (23:39 +0100)]
toolchain/musl: Don't override optimization set by upstream
Don't override optimization set by upstream.
Provides a speed increase for internal (library), malloc and string
operations in musl.
Signed-off-by: Daniel Engberg <daniel.engberg.lists@pyret.net>
[add : to PKG_RELEASE release variable for consistency] Signed-off-by: Kevin Darbyshire-Bryant <ldir@darbyshire-bryant.me.uk>
ba2ab5d version: bump snapshot 5f59c76 tools: wg-quick: wait for interface to disappear on freebsd ac7e7a3 tools: don't fail if a netlink interface dump is inconsistent 8432585 main: get rid of unloaded debug message 139e57c tools: compile on gnu99 d65817c tools: use libc's endianness macro if no compiler macro f985de2 global: give if statements brackets and other cleanups b3a5d8a main: change module description 296d505 device: use textual error labels always 8bde328 allowedips: swap endianness early on a650d49 timers: avoid using control statements in macro db4dd93 allowedips: remove control statement from macro by rewriting 780a597 global: more nits 06b1236 global: rename struct wireguard_ to struct wg_ 205dd46 netlink: do not stuff index into nla type 2c6b57b qemu: kill after 20 minutes 6f2953d compat: look in Kbuild and Makefile since they differ based on arch a93d7e4 create-patch: blacklist instead of whitelist 8d53657 global: prefix functions used in callbacks with wg_ 123f85c compat: don't output for grep errors
Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
Fabio Bettoni [Wed, 17 Oct 2018 12:21:41 +0000 (14:21 +0200)]
ar71xx/ath79: fix mtd corruption
In commit fec8fe806963 ("kernel: bump 4.9 to 4.9.116") [1], the following patch for removed:
- 403-mtd_fix_cfi_cmdset_0002_status_check.patch
This patch contained fixes for both write and erase functions.
While the chip-detects for erase got fixed upstream [2],
some modifications are still required, even with the fixes applied.
While at it, also apply the same fix for target ath79,
which suffers the same issue.
Not doing so results in following errors seen:
Collected errors:
* pkg_write_filelist: Failed to open //usr/lib/opkg/info/luci-lib-ip.list: I/O error.
* opkg_install_pkg: Failed to extract data files for luci-lib-ip. Package debris may remain!
* opkg_install_cmd: Cannot install package luci-ssl.
* opkg_conf_write_status_files: Can't open status file //usr/lib/opkg/status: I/O error.
[ 0.780920] jffs2: version 2.2 (NAND) (SUMMARY) (LZMA) (RTIME) (CMODE_PRIORITY) (c) 2001-2006 Red Hat, Inc.
[ 8.406396] jffs2: notice: (415) jffs2_build_xattr_subsystem: complete building xattr subsystem, 0 of xdatum (0 unchecked, 0 orphan) and 0 of xref (0 dead, 0 orphan) found.
[ 8.423476] mount_root: switching to jffs2 overlay
[ 270.902671] jffs2: Write of 1989 bytes at 0x005ce6f8 failed. returned -5, retlen 962
[ 270.931965] jffs2: Write of 1989 bytes at 0x005ceec0 failed. returned -5, retlen 0
[ 270.939631] jffs2: Not marking the space at 0x005ceec0 as dirty because the flash driver returned retlen zero
[ 270.950397] jffs2: Write of 68 bytes at 0x005ceec0 failed. returned -5, retlen 0
[ 270.957838] jffs2: Not marking the space at 0x005ceec0 as dirty because the flash driver returned retlen zero
[ 270.968584] jffs2: Write of 68 bytes at 0x005ceec0 failed. returned -5, retlen 0
[ 270.976027] jffs2: Not marking the space at 0x005ceec0 as dirty because the flash driver returned retlen zero
[ 270.986735] jffs2: Write of 68 bytes at 0x005ceec0 failed. returned -5, retlen 0
[ 270.994225] jffs2: Not marking the space at 0x005ceec0 as dirty because the flash driver returned retlen zero
Hans Dedecker [Wed, 17 Oct 2018 09:02:05 +0000 (11:02 +0200)]
gre: make encaplimit support configurable
Make inclusion of the destination option header containing the tunnel
encapsulation limit configurable for IPv6 GRE packets.
Setting the uci parameter encaplimit to ignore; allows to disable the
insertion of the destination option header in the IPv6 GRE packets.
Otherwise the tunnel encapsulation limit value can be set to a value
from 0 till 255 by setting the encaplimit uci parameter accordingly.
Felix Fietkau [Tue, 16 Oct 2018 10:58:57 +0000 (12:58 +0200)]
mt76: update to the latest version, add mt76x0 firmware, enable mt76x0e
96fa353 mt76: do not store aggregation sequence number for null-data frames c50dca8 mt76x0: print BBP version only for debug ddc9e05 mt76x0: correct RF access via RF_CSR register. 02d2385 mt76: allow to identify bus c438e67 mt76x0: correct RF reg pairs write for PCIe c83abb8 mt76x0: use bus helper to identify rf access method 9c272ff mt76x0: phy: fix bank check in mt76x0_rf_csr_{wr,rr} 1945d57 mt76: use mt76x02_dev instead of mt76_dev in mt76x02_mcu.c 214eab7 mt76: use mt76x02_dev instead of mt76_dev in mt76x02_phy.c 29bc2ae mt76: use mt76x02_dev instead of mt76_dev in mt76x02_util.c 08ecb5f mt76: use mt76x02_dev instead of mt76_dev in mt76x02_usb_mcu.c fd9b2b0 mt76: use mt76x02_dev instead of mt76_dev in mt76x02_mac.c f37bd25 mt76: use mt76x02_dev instead of mt76_dev in mt76x02_txrx.c 48950cb mt76: use mt76x02_dev instead of mt76_dev in mt76x02_eeprom.c 06276cc mt76x0: pci: report firmware version using ethtool 72546ed mt76x0: pci: add missing mac80211 callbacks 4de98cd mt76: disable ldpc coding for mt76x0 devices f0951c2 mt76x0: pci: add mt76x0_register_device in mt76x0e_register_device 4f3685e mt76: reserve enough room for USB tx skbs 5e6907f mt76x0: remove dma.h acfc5a9 mt76x0: pci: fix set external PA I/O current 2b79bb7 mt76: mt76x0e: another fix for the external PA current setting 8a0acfd mt76x0: phy: fix restore phase in mt76x0_phy_recalibrate_after_assoc e9e949b mt76x0: phy: remove channel parameter from mt76x0_phy_set_chan_bbp_params 1775717 mt76: move mt76x02_phy_set_bw in mt76x02-lib module f82134f mt76: move mt76x02_phy_set_band in mt76x02-lib module 3eaa34f mt76x0: pci: rename mt76x0_phy_calibrate 7269fb4 mt76x0: pci: introduce mt76x0_phy_calirate routine a514b75 mt76x0: phy: update set_channel for mt76x0e devices 62a1bc5 mt76x0: eeprom: introduce mt76x0_tssi_enabled routine a48481d mt76x0: phy: add phy/vco temperature compensation cc34ce9 mt76: move rssi_gain_thresh routines in mt76x02-lib module eaf9751 mt76: move mt76x02_phy_adjust_vga_gain in mt76/mt76x02_phy.c 2715e7c mt76: introduce mt76x02_init_agc_gain routine 87fcb31 mt76x0: phy: align channel gain logic to mt76x2 one 98f8ef7 mt76x0: phy: do not run calibration during channel switch cf859ad mt76x2: align mt76x2 and mt76x2u firmware 1f3f767 mt76x2u: align channel gain logic to mt76x2 one d1c1454 treewide: Replace more open-coded allocation size multiplications bcbecd2 mt76x0: phy: use proper name convention b6694e6 mt76x0: phy: simplify rf configuration routines da129c9 mt76x0: phy: improve code readability in initvals_phy.h eab7ab1 mt76x0: pci: add get_survey support 9e493f7 mt76: move mt76x02_mac_work routine in mt76x02-lib module ecec6ba mt76: move mt76x02_debugfs in mt76x02-lib module 4f3b608 mt76x0: use shared debugfs implementation 6aae25b mt76x0: use mt76x02_mac_work as stats handler b228a45 mt76x2u: introduce mac workqueue support 4671af4 mt76x0: phy: unify calibration between mt76x0u and mt76x0e 5ed28f3 mt76x0: do not perform MCU calibration for MT7630 9b844da add mt7610e firmware
dnsmasq: fix dnsmasq failure to start when ujail'd
This patch fixes jailed dnsmasq running into the following issue:
|dnsmasq[1]: cannot read /usr/share/dnsmasq/dhcpbogushostname.conf: No such file or directory
|dnsmasq[1]: FAILED to start up
|procd: Instance dnsmasq::cfg01411c s in a crash loop 6 crashes, 0 seconds since last crash
Fixes: a45f4f50e16 ("dnsmasq: add dhcp-ignore-names support - CERT VU#598349") Signed-off-by: Christian Lamparter <chunkeey@gmail.com>
[bump package release] Signed-off-by: Kevin Darbyshire-Bryant <ldir@darbyshire-bryant.me.uk>
Hauke Mehrtens [Sun, 14 Oct 2018 14:42:45 +0000 (16:42 +0200)]
tools: patch: Fix build by not modifing Makefile.am
A new test case was adding in one of the patches fixing a problem, this
also included a change in the test/Makefile.am to add this test case.
The build system detected a change in the Makefile.am and wants to
regenerate the Makefile.in, but this fails because automake-1.15 is not
installed yet. As automake depends on patch being build first, make sure
we do not modify the Makefile.am.