Bruce Ashfield [Tue, 28 Mar 2017 12:58:03 +0000 (08:58 -0400)]
linux-yocto/4.10: update to v4.10.5
Integrating the korg -stable release with the following shortlog
summary:
034612ee057c Linux 4.10.5 7814c9bd217a crypto: s5p-sss - Fix spinlock recursion on LRW(AES) 4310604e21dd crypto: powerpc - Fix initialisation of crc32c context de3c88fa6a29 locking/rwsem: Fix down_write_killable() for CONFIG_RWSEM_GENERIC_SPINLOCK=y d80e46d90742 futex: Add missing error handling to FUTEX_REQUEUE_PI 575caefc01f3 futex: Fix potential use-after-free in FUTEX_REQUEUE_PI 57ad6c8ecb1f x86/perf: Fix CR4.PCE propagation to use active_mm instead of mm 343146100991 x86/intel_rdt: Put group node in rdtgroup_kn_unlock 7621600b480e x86/kasan: Fix boot with KASAN=y and PROFILE_ANNOTATED_BRANCHES=y bd5ee529d0be x86/tsc: Fix ART for TSC_KNOWN_FREQ a0256e0c0dc6 x86/unwind: Fix last frame check for aligned function stacks 5b115b8b53d8 drm/i915/lspcon: Fix resume time initialization due to unasserted HPD ebd9dbabb5fc drm/i915/gen9+: Enable hotplug detection early b9208ab35001 drm/i915/lspcon: Enable AUX interrupts for resume time initialization 1740a61cf09e irqchip/gicv3-its: Add workaround for QDF2400 ITS erratum 0065 ef217ea7f1fb arm64: KVM: VHE: Clear HCR_TGE when invalidating guest TLBs f70ce6c63e02 dccp: fix memory leak during tear-down of unsuccessful connection request a79fa23c82a1 tun: fix premature POLLOUT notification on tun devices b34c9f7fe45e dccp/tcp: fix routing redirect race 7ebf301d8476 net: use net->count to check whether a netns is alive or not 47808872e25b bridge: drop netfilter fake rtable unconditionally fdb09132bdea ipv6: avoid write to a possibly cloned skb b74b74e2087e ipv6: make ECMP route replacement less greedy ed44bf89ab5f mpls: Do not decrement alive counter for unregister events 61cc1778ad62 mpls: Send route delete notifications when router module is unloaded 8e9bacd9add7 act_connmark: avoid crashing on malformed nlattrs with null parms cdb9caeb7177 amd-xgbe: Enable IRQs only if napi_complete_done() is true 110e7778ea32 uapi: fix linux/packet_diag.h userspace compilation error 5344ec08726a net/tunnel: set inner protocol in network gro hooks 7360a1fda857 vrf: Fix use-after-free in vrf_xmit be18cce7e665 team: use ETH_MAX_MTU as max mtu 92ab4dea27c1 dccp: fix use-after-free in dccp_feat_activate_values a6ff06211b84 net/sched: act_skbmod: remove unneeded rcu_read_unlock in tcf_skbmod_dump 27d0c80f1089 net: fix socket refcounting in skb_complete_tx_timestamp() 80691f3808fc net: fix socket refcounting in skb_complete_wifi_ack() 81a43770b456 tcp: fix various issues for sockets morphing to listen state 178e86ff331d strparser: destroy workqueue on module exit aa677aafef5c bonding: use ETH_MAX_MTU as max mtu 0ee7666f639a amd-xgbe: Don't overwrite SFP PHY mod_absent settings 9919f222968c amd-xgbe: Be sure to set MDIO modes on device (re)start 4381ffdfb32b amd-xgbe: Stop the PHY before releasing interrupts 7558c56cfe35 dccp: Unlock sock before calling sk_free() a8ee7ed1b03d ipv6: orphan skbs in reassembly unit eb39579a675a net: net_enable_timestamp() can be called from irq contexts fa8bc7b48168 net: don't call strlen() on the user buffer in packet_bind_spkt() e89adaa7d0cf net: bridge: allow IPv6 when multicast flood is disabled da2da823497c tcp/dccp: block BH for SYN processing 8f05976cbfba mlxsw: spectrum_router: Avoid potential packets loss 40f9f783920f geneve: lock RCU on TX path d6705c8c0cb0 vxlan: lock RCU on TX path 4c94beba3aee l2tp: avoid use-after-free caused by l2tp_ip_backlog_recv 639fdd961af0 net sched actions: decrement module reference count after table flush. 467bec3656bd sctp: set sin_port for addr param when checking duplicate address 91f4f5bfaa29 ipv4: mask tos for input route 0a33d62a6f9d ipv4: add missing initialization for flowi4_uid 2b5a48d6c6eb vxlan: don't allow overwrite of config src addr fef3f97a58b2 vti6: return GRE_KEY for vti6 36ec2150ae0a vxlan: correctly validate VXLAN ID against VXLAN_N_VID f44877534257 sctp: deny peeloff operation on asocs with threads sleeping on it 55bb0dd0256c net/mlx5e: Fix wrong CQE decompression c0dc4855e92b net/mlx5e: Update MPWQE stride size when modifying CQE compress state c34c17861ab1 net/mlx5e: Fix broken CQE compression initialization 850a1bfbf35d net/mlx5e: Do not reduce LRO WQE size when not using build_skb 96b457b80526 net/mlx5e: Register/unregister vport representors on interface attach/detach 8ea22fb3114d Linux 4.10.4 42b16fffb79b IB/mlx5: Verify that Q counters are supported dc37bb8db47b ext4: don't BUG when truncating encrypted inodes on the orphan list 1cda29082a30 rc: raw decoder for keymap protocol is not loaded on register 22fc2f9efa27 dm: flush queued bios when process blocks to avoid deadlock 2030aedc5404 serial_ir: ensure we're ready to receive interrupts 81383a00ce83 drm/i915/gvt: Fix superfluous newline in GVT_DISPLAY_READY env var 523379cd6b65 KVM: arm/arm64: Let vcpu thread modify its own active state 1f9175b9ee7c KVM: s390: Fix guest migration for huge guests resulting in panic 45dc259a4734 serial: samsung: Continue to work if DMA request fails 7daf817d076d USB: serial: io_ti: fix information leak in completion handler 9bb084c79f20 USB: serial: io_ti: fix NULL-deref in interrupt callback 14bca59b1660 USB: iowarrior: fix NULL-deref in write 5ec59765f503 USB: iowarrior: fix NULL-deref at probe cc6ba470ebf8 USB: serial: omninet: fix reference leaks at open dc944b117e6c USB: serial: safe_serial: fix information leak in completion handler a062cb395946 usb: host: xhci-plat: Fix timeout on removal of hot pluggable xhci controllers 7202353681d5 usb: host: xhci-dbg: HCIVERSION should be a binary number 222095ea6487 Revert "usb: gadget: uvc: Add missing call for additional setup data" d60b1053a5bb usb: gadget: function: f_fs: pass companion descriptor along a0f69738c10e usb: ohci-at91: Do not drop unhandled USB suspend control requests 25b1a4fdd8ae usb: dwc3-omap: Fix missing break in dwc3_omap_set_mailbox() 894a0dfaaef7 usb: dwc3: gadget: make Set Endpoint Configuration macros safe c73210fdd40d usb: gadget: dummy_hcd: clear usb_gadget region before registration b5ea65b25a33 PCI: Prevent VPD access for QLogic ISP2722 27469baaef1a powerpc/xics: Work around limitations of OPAL XICS priority handling 74e236a5bd99 powerpc/booke: Fix boot crash due to null hugepd 1006828d1104 powerpc: Emulation support for load/store instructions on LE 80eae855b694 i2c: add missing of_node_put in i2c_mux_del_adapters be20197df07d dw2102: don't do DMA on stack 7399dec22e72 efi/arm: Fix boot crash with CONFIG_CPUMASK_OFFSTACK=y da603aadd53a ucount: Remove the atomicity from ucount->count b7e9ef5cf4d9 tracing: Add #undef to fix compile error 3eded4f5bab1 i2c: bcm2835: Avoid possible NULL ptr dereference 393be4bcb329 MIPS: ralink: Remove unused rt*_wdt_reset functions 4ddb085a9b0a MIPS: ralink: Remove unused timer functions e1d9f7592b80 MIPS: ralink: Cosmetic change to prom_init(). 02b210c18667 mtd: pmcmsp: use kstrndup instead of kmalloc+strncpy ee9cc4c573d5 MIPS: Update lemote2f_defconfig for CPU_FREQ_STAT change 9ad686e6937a MIPS: ip22: Fix ip28 build for modern gcc 715bb84b6ff6 MIPS: Update ip27_defconfig for SCSI_DH change b57e5d5daf99 MIPS: ip27: Disable qlge driver in defconfig 2260890bb6c7 MIPS: VDSO: avoid duplicate CAC_BASE definition d2b0d01a11b3 MIPS: Update defconfigs for NF_CT_PROTO_DCCP/UDPLITE change aab419fc3980 crypto: improve gcc optimization flags for serpent and wp512 5af39bb8492f USB: serial: digi_acceleport: fix OOB-event processing 2d32308355a8 USB: serial: digi_acceleport: fix OOB data sanity check a3137ad2e14f ARM: qcom_defconfig: Enable RPM/RPM-SMD clocks fa190b2a7f87 iio: 104-quad-8: Fix off-by-one error when addressing flag register adfb98cd3e93 Linux 4.10.3 070dfed4d04e drivers: hv: Turn off write permission on the hypercall page 9cafe6bb9aa2 fat: fix using uninitialized fields of fat_inode/fsinfo_inode 0d9cc8aa34ad kasan: resched in quarantine_remove_cache() 44c95966fb81 mm: do not call mem_cgroup_free() from within mem_cgroup_alloc() 933f0f3ad49a thp: fix another corner case of munlock() vs. THPs 459bc5065631 x86/tlb: Fix tlb flushing when lguest clears PGE ac312c7e0a90 x86, mm: fix gup_pte_range() vs DAX mappings 0af36e434a3c libceph: use BUG() instead of BUG_ON(1) cde805106887 drm/i915: Fix not finding the VBT when it overlaps with OPREGION_ASLE_EXT 5eeb3c0eb7ec drm/i915: Pass timeout==0 on to i915_gem_object_wait_fence() d11d14c5fc0b drm/i915: Check for timeout completion when waiting for the rq to submitted e2a946bb97bb drm/i915: Avoid spurious WARNs about the wrong pipe in the PPS code c50f65f12705 drm/i915: Recreate internal objects with single page segments if dmar fails 4a8a58eed276 drm: Cancel drm_fb_helper_resume_work on unload 616c9bd8b288 drm: Cancel drm_fb_helper_dirty_work on unload cdb4f19aae0f drm/i915/gvt: Disable access to stolen memory as a guest f7189c6bb9f2 drm/atomic: fix an error code in mode_fixup() 99eb5a10a7f7 drm/imx: imx-tve: Do not set the regulator voltage 5e0b0839f3ce drm/vmwgfx: Work around drm removal of control nodes e6d03fc74541 drm/ttm: Make sure BOs being swapped out are cacheable 0586602fc10f drm/edid: Add EDID_QUIRK_FORCE_8BPC quirk for Rotel RSX-1058 68279b15119b drm/radeon: handle vfct with multiple vbios images e51353092182 drm/ast: Fix AST2400 POST failure without BMC FW or VBIOS cd8183923984 drm/ast: Call open_key before enable_mmio in POST code f38a3c87d6ee drm/ast: Fix test for VGA enabled af7fe73a14fc drm/ast: Handle configuration without P2A bridge 0f9e6fc5b76d Revert "drm/amdgpu: update tile table for oland/hainan" 2deaea3e0d07 drm/amdgpu/pm: check for headless before calling compute_clocks 33d129a09aae drm/amdgpu: add more cases to DCE11 possible crtc mask setup fc758b77745e mac80211: use driver-indicated transmitter STA only for data frames 4a6d105fb277 mac80211: don't handle filtered frames within a BA session df7db05561f6 mac80211: don't reorder frames with SN smaller than SSN f5bf0a15c63e mac80211: flush delayed work when entering suspend ea708e9581d8 nfit, libnvdimm: fix interleave set cookie calculation 3f56c495a42e xtensa: move parse_tag_fdt out of #ifdef CONFIG_BLK_DEV_INITRD 5a4312c2a651 pwm: pca9685: Fix period change with same duty cycle c634f19b9501 nlm: Ensure callback code also checks that the files match 1a02f33a6302 drivers/pci/hotplug: Fix initial state for empty slot 487163f3f316 drivers/pci/hotplug: Handle presence detection change properly f9b90f204749 target: Fix NULL dereference during LUN lookup + active I/O shutdown 81bd29553ee3 pci/hotplug/pnv-php: Disable surprise hotplug capability on conflicts 7e8b77528445 pci/hotplug/pnv-php: Remove WARN_ON() in pnv_php_put_slot() ab3398e159fd ceph: remove req from unsafe list when unregistering it 0569b5ed3e73 ktest: Fix child exit code processing 9dbea7f7bcec tracing: Fix return value check in trace_benchmark_reg() 8a915b3ccbb2 memory/atmel-ebi: Fix ns <-> cycles conversions a4755943204e orangefs: Use RCU for destroy_inode 2708a2d33e04 Btrfs: fix data loss after truncate when using the no-holes feature ade784b0f3a7 fs: Better permission checking for submounts 35065a1f6ec2 IB/srp: Fix race conditions related to task management a9397e4365d6 IB/srp: Avoid that duplicate responses trigger a kernel bug a51892e0c136 IB/SRP: Avoid using IB_MR_TYPE_SG_GAPS e0d15d562ee7 IB/mlx5: Fix out-of-bound access b92c4a09f589 IB/IPoIB: Add destination address when re-queue packet 91948b0944af IB/ipoib: Fix deadlock between rmmod and set_mode 6de9d08a9718 mnt: Tuck mounts under others instead of creating shadow/side mounts. f03d5078063c brcmfmac: fix incorrect event channel deduction 8cdfa0d8b0f5 cxl: fix nested locking hang during EEH hotplug e5603a5c6deb cxl: Prevent read/write to AFU config space while AFU not configured 4144a307cb46 net: mvpp2: fix DMA address calculation in mvpp2_txq_inc_put() c9ac3e943deb s390: use correct input data address for setup_randomness 0075504d83ce s390: make setup_randomness work ca54585dd5dd s390/topology: correct allocation of topology information c61a874ea0ec s390: TASK_SIZE for kernel threads 162668c000ab s390/chsc: Add exception handler for CHSC instruction 836f9814f092 s390/kdump: Use "LINUX" ELF note name instead of "CORE" 1f2659aa7dfe s390/dcssblk: fix device size calculation in dcssblk_direct_access() 3c3c4d25c589 s390/qdio: clear DSCI prior to scanning multiple input queues ac7c6461addb phy: qcom-ufs: Fix misplaced jump label 04b5101049ac phy: qcom-ufs: Don't kfree devres resource a6ed492d6cca Bluetooth: Add another AR3012 04ca:3018 device 3904b32cfe50 KVM: VMX: use correct vmcs_read/write for guest segment selector/base f89d6db0c50c KVM: s390: Disable dirty log retrieval for UCONTROL guests c9dc3873046e serial: 8250_pci: Add MKS Tenta SCOM-0800 and SCOM-0801 cards 72e544022383 tty: n_hdlc: get rid of racy n_hdlc.tbuf
Signed-off-by: Bruce Ashfield <bruce.ashfield@windriver.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Ross Burton [Tue, 28 Mar 2017 09:31:50 +0000 (10:31 +0100)]
dnf: remove systemd units in nativesdk builds
If the DISTRO_FEATURES contain systemd then the systemd class won't delete the
units for us. Until the class is fixed to do this automatically, delete them
explicitly.
Signed-off-by: Ross Burton <ross.burton@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Patrick Ohly [Tue, 28 Mar 2017 08:02:19 +0000 (10:02 +0200)]
oeqa: allow persistent image writes in runqemu()
By default, QemuRunner avoids modifying the image files that it boots
into by enabling the qemu snapshot mode. However, some tests may want
to test changes that must persists across reboots, so this mode
should be optional.
This can be combined by copying the image file to a temporary location
first and then booting with that copy. It's also useful when testing
with additional drives attached to a virtual machine.
QemuTinyRunner doesn't use the snapshot parameter and therefore ignores
the new parameter.
Long term, a better way of passing these various configuration
parameters should be used, and perhaps QemuRunner and QemuTinyRunner
can be merged into one again to avoid code duplication. But for now
the patch follows the exiting style.
Also beware that QemuTarget.start() now acts in two different modes
(with or without explicit launch command), and depending on that mode
parameters like discard_writes must be ignored, i.e. not get passed to
launch().
Signed-off-by: Patrick Ohly <patrick.ohly@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Patrick Ohly [Tue, 28 Mar 2017 08:02:18 +0000 (10:02 +0200)]
oeqa: allow customizing image used by runqemu()
runqemu() takes all parameters for the virtual machine from the
variables of the given recipe. By allowing the caller to provide a
hash with variables that get applied locally, the caller gets more
control.
Here's the intended usage:
<prepare internal-image in self.resultdir>
overrides = {
'DEPLOY_DIR_IMAGE': self.resultdir,
'IMAGE_LINK_NAME': 'internal-image-%s' % self.image_arch,
}
with runqemu('refkit-installer-image', ssh=False,
overrides=overrides) as qemu:
....
This can be used to replace the image completely with something else
or to copy it before allowing runqemu() to write into it.
Signed-off-by: Patrick Ohly <patrick.ohly@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Patrick Ohly [Tue, 28 Mar 2017 08:02:17 +0000 (10:02 +0200)]
oeqa: allow extending qemuparams="..."
Sometimes it is useful to reconfigure the qemu virtual machine
directly. runqemu has the "qemuparams" parameter for that, and the
underlying start() methods also supported modifying that via their
"params" parameter. Only the runqemu() wrapper function lacked
a way to specify additional parameters.
One potential usage is to attach additional disks.
Signed-off-by: Patrick Ohly <patrick.ohly@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Patrick Ohly [Mon, 27 Mar 2017 13:03:23 +0000 (15:03 +0200)]
oeqa: QEMU_USE_KVM can list machines
Previously, QEMU_USE_KVM=True enabled the use of kvm only when "x86"
was in the MACHINE name. That is too limiting, because for example
intel-corei7-64 can also use kvm but it wasn't possible to enable that
without changing OE-core.
That traditional usage is still supported. In addition, QEMU_USE_KVM
can be set to a list of space-separated MACHINE names for which kvm is
to be enabled.
Signed-off-by: Patrick Ohly <patrick.ohly@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Patrick Ohly [Mon, 27 Mar 2017 13:03:22 +0000 (15:03 +0200)]
oeqa: tolerate interrupted select() while waiting for qemu
Sometimes, the OEQA utility code aborts with:
...
File ".../meta/lib/oeqa/utils/qemurunner.py", line 131, in start
return self.launch(launch_cmd, qemuparams=qemuparams, get_ip=get_ip, extra_bootparams=extra_bootparams)
File ".../meta/lib/oeqa/utils/qemurunner.py", line 259, in launch
sread, swrite, serror = select.select(socklist, [], [], 5)
InterruptedError: [Errno 4] Interrupted system call
strace shows that this is because of a SIGWINCH:
Connection from 127.0.0.1:52668
select(21, [20], [], [], {5, 0}) = ? ERESTARTNOHAND (To be restarted if no handler)
--- SIGWINCH {si_signo=SIGWINCH, si_code=SI_KERNEL} ---
This is related to some special conditions:
* whether qemu opens a graphical console window (enabled in Poky by default)
* where that window gets opened
* whether the window manager changes the size of the shell window (mine
is a tiling window manager and reorders and resizes windows automatically)
Ignoring the interrupted system calls avoids the problem. Code elsewhere (for example,
run() in ssh.py) already does the same thing.
Signed-off-by: Patrick Ohly <patrick.ohly@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Stephano Cetola [Mon, 27 Mar 2017 17:11:21 +0000 (10:11 -0700)]
insane.bbclass: error if file-rdeps not met
Missing runtime dependencies should result in an error rather than a
warning. Indeed, if RPM is listed in PACKAGE_CLASSES, it will throw
an error rather than install packages with missing dependencies. This
functionality should be consistent across package types. This patch
ensures that an error will be thrown.
[YOCTO #10949]
Signed-off-by: Stephano Cetola <stephano.cetola@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Stephano Cetola [Mon, 27 Mar 2017 17:01:36 +0000 (10:01 -0700)]
devtool: open kconfig fragment in binary mode
When devtool writes to the kconfig fragment, it writes the output of
the diff command returned from pipe.communicate(). This function
returns binary objects. We should open the kconfig fragment file in
binary mode if we expect to write binary objects to it.
[YOCTO #11171]
Signed-off-by: Stephano Cetola <stephano.cetola@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Lauren Post [Mon, 27 Mar 2017 20:09:29 +0000 (17:09 -0300)]
eudev: restore userspace firmware loading support
This sycncs eudev with systemd. This is required for old kernels to
work and does same backport as did in:
,----
| commit 31163abc7bedd477c1aad10e6d1f47dbee194513
| Author: Jonathan Liu <net147@gmail.com>
| Date: Thu Mar 19 15:38:32 2015 +1100
|
| systemd: restore userspace firmware loading support
|
| This changes the minimum required Linux version from 3.7 back to 3.0.
|
| [YOCTO #7409]
|
| Signed-off-by: Jonathan Liu <net147@gmail.com>
| Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
`----
Signed-off-by: Lauren Post <lauren.post@nxp.com> Signed-off-by: Otavio Salvador <otavio@ossystems.com.br> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Mariano Lopez [Mon, 27 Mar 2017 20:05:24 +0000 (13:05 -0700)]
oeqa/core/loader.py: Do not import underscore modules by default
Underscore modules are meant to be run only when manually added to the test
suite, so far another mechanisms are in place to make this happen with
runtime, sdk, and esdk (mostly in test* bbclasses).
This will add such functionality in the core framework so other specific
frameworks can take use this without adding something else.
[YOCTO #10980]
Signed-off-by: Mariano Lopez <mariano.lopez@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Joshua Lock [Mon, 27 Mar 2017 10:21:32 +0000 (11:21 +0100)]
oeqa/selftest: don't use cleanall in selftests
* devtool: oeqa.selftest.devtool.DevtoolTests is taking 4 or more hours on the
autobuilder because the cleanall call deletes the tarball of the kernel
source, forcing a large clone which is especially long on an NFS mount.
The cleanall invocation isn't really required here and switching to clean
instead should avoid hours of re-cloning the same repository each time we
run oe-selftest on the autobuilder.
* buildoptions: We only need to ensure the first image isn't an incremental
image, clean will suffice here.
* runtime-test: no need to clean up the artefacts generated during the test,
let's leave that to a higher level process rather than using the cleanall
hammer.
Signed-off-by: Joshua Lock <joshua.g.lock@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
David Vincent [Mon, 27 Mar 2017 07:37:47 +0000 (09:37 +0200)]
ifupdown: Fix initscript
ifupdown does not provide an initscript so this recipe should not
inherit update-rc.d class. Instead, we rely on init-ifupdown recipe to
startup networking.
Signed-off-by: David Vincent <freesilicon@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Otavio Salvador [Sun, 26 Mar 2017 19:58:59 +0000 (16:58 -0300)]
mesa: Update to 17.0.2
This is a bugfix only release.
,----
| Bug fixes
|
| Bug 68504 - 9.2-rc1 workaround for clover build failure on ppc/altivec: cannot convert 'bool' to '__vector(4) __bool int' in return
| Bug 97988 - [radeonsi] playing back videos with VDPAU exhibits deinterlacing/anti-aliasing issues not visible with VA-API
| Bug 99484 - Crusader Kings 2 - Loading bars, siege bars, morale bars, etc. do not render correctly
| Bug 99715 - Don't print: "Note: Buggy applications may crash, if they do please report to vendor"
| Bug 100049 - "ralloc: Make sure ralloc() allocations match malloc()'s alignment." causes seg fault in 32bit build
`----
Signed-off-by: Otavio Salvador <otavio@ossystems.com.br> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Ed Bartosh [Sun, 26 Mar 2017 15:28:04 +0000 (18:28 +0300)]
wic: fix generation of partition UUID
Partition UUID for msdos partitioning is based on a 4 bytes long
system identifier. Wic uses random number to generate system
identifier. For the numbers starting with 0 partition uuid is
shorter, which makes wic images non-bootable as kernel expects
8 charactest in PARTUUID parameter.
Padded system identifier with '0' when generating partition UUID
to make it always 8 characters long. This should fix the boot
issue.
Signed-off-by: Ed Bartosh <ed.bartosh@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Enrico Jorns [Fri, 24 Mar 2017 11:15:02 +0000 (12:15 +0100)]
image_types: perform fsck on created ext image
When performing a file system check, the image created with mkfs will
trigger Pass 3A ('Optimizing directories') which turns the file system
into state "changed" (EXT2_FLAG_CHANGED).
This will let fsck request a reboot by setting the return code flag "2".
The result of this is that each ext-image built with oe-core will
trigger a reboot during the first time an fsck is triggered.
A common case where this might occur is when fsck detects having
a future superblock write time. This always happens when booting a
newly created ext4 rootfs with a target that does not have a recent time
set.
This patch moves the initial fsck run that performs the optimization
from the target to the host system and thus prevents the target from
performing an avoidable reboot.
Make it possible to limit the length of output lines shown in runCmd
exceptions. E.g when running bitbake we easily get thousands of lines of
log output, where only the last few (tens) are interesting or relevant
when an error occurs.
Signed-off-by: Markus Lehtonen <markus.lehtonen@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Markus Lehtonen [Fri, 24 Mar 2017 14:17:30 +0000 (16:17 +0200)]
build-perf-test-wrapper.sh: store buildstats under git-notes
In order to dramatically reduce the data footprint of the result
branches. This makes cloning/pulling result repositories a lot faster.
Buildstats can still be accessed, when needed by doing
git fetch refs/notes/buildstats/*:refs/notes/buildstats/*
[YOCTO #10582]
Signed-off-by: Markus Lehtonen <markus.lehtonen@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Markus Lehtonen [Fri, 24 Mar 2017 14:17:26 +0000 (16:17 +0200)]
oe-build-perf-test: sum rusage in buildstats
Instead of separate rusage and child rusage values, only store their sum
value in buildstats. This is a big reduction in data footprint without
really losing any interesting data.
Also, utilize OrderedDict to order data more logically.
[YOCTO #10582]
Signed-off-by: Markus Lehtonen <markus.lehtonen@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Markus Lehtonen [Fri, 24 Mar 2017 14:17:25 +0000 (16:17 +0200)]
oe-build-perf-test: pack all buildstat in one file
Write out all buildstats into one big json file, instead of using
multiple per-measurement files. Individual buildstats will be indexed
using "<test_name>.<measurement_name>" as the key. Also, changes the
per-testcase working directories into temporary directories that will be
removed after test execution as there are no more per-testcase data files
to store permanently.
[YOCTO #10582]
Signed-off-by: Markus Lehtonen <markus.lehtonen@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Ross Burton [Fri, 24 Mar 2017 16:09:19 +0000 (16:09 +0000)]
boost: port boost-python to Python 3
As Python 3 is the default Python version, change Boost to build against Python
3 instead of Python 2 if enabled. It's not simple to support both, so this
means that support for building boost-python against Python 2 has been removed.
This involves backporting a number of patches upstream to fix Python 3 support,
and telling Boost precisely where to find the Python headers and libraries so
that it doesn't try to invoke the host Python to determine these values.
[ YOCTO #11104 ]
Signed-off-by: Ross Burton <ross.burton@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Robert Yang [Fri, 24 Mar 2017 08:45:02 +0000 (01:45 -0700)]
targetcontrol.py: use logger.info to replace of bb.note
The bb.note prints multiple same lines when invoke this class again, but
if we set mainlogger.propagate = False, nothing would be printed,
according to logging's document:
https://docs.python.org/3/library/logging.html
Note
If you attach a handler to a logger and one or more of its ancestors, it
may emit the same record multiple times. In general, you should not need
to attach a handler to more than one logger - if you just attach it to
the appropriate logger which is highest in the logger hierarchy, then it
will see all events logged by all descendant loggers, provided that
their propagate setting is left set to True. A common scenario is to
attach handlers only to the root logger, and to let propagation take
care of the rest.
We may need avoid using bb.note or bb.warn in oeqa since it attaches
multiple log handlers which may cause confusions
This patch only sets "mainlogger.propagate = False" in
selftest/runqemu.py and use logger.info to replace bb.note in
targetcontrol.py to minimize the impact.
[YOCTO #10249]
Signed-off-by: Robert Yang <liezhi.yang@windriver.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Need more later:
- Test initramfs
- Test nfs
- Test when set DEPLOY_DIR_IMAGE and OECORE_NATIVE_SYSROOT
- And others which similate runqemu runs on SDK and eSDK.
[YOCTO #10249]
Signed-off-by: Robert Yang <liezhi.yang@windriver.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Chen Qi [Fri, 24 Mar 2017 08:45:00 +0000 (01:45 -0700)]
qemurunner.py: fix handling of runqemuparams
The launch() doesn't need runqemuparams, we need handle it in start().
Signed-off-by: Chen Qi <Qi.Chen@windriver.com> Signed-off-by: Robert Yang <liezhi.yang@windriver.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Robert Yang [Fri, 24 Mar 2017 08:44:59 +0000 (01:44 -0700)]
oeqa/targetcontrol.py: modify it to test runqemu
Modify the following files to test runqemu:
targetcontrol.py
utils/commands.py
utils/qemurunner.py
We need simulate how "runqemu" works in command line, so when test
"runqemu", the targetcontrol.py, utils/commands.py and
utils/qemurunner.py don't have to find the rootfs or set env vars.
[YOCTO #10249]
Signed-off-by: Robert Yang <liezhi.yang@windriver.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Patrick Ohly [Fri, 24 Mar 2017 21:46:16 +0000 (22:46 +0100)]
qemurunner: configurable timeout for run_serial()
Some commands might need to run longer than the default timeout of
five seconds. If that occurred, run_serial() returned with a status
code of zero (sic!) and no other indication of what went wrong.
Now the timeout is configurable (with five still the default) and
an explicit warning ("<<< run_serial(): command timed out after 5 seconds without output >>>")
gets appended at the end of the data returned to the caller.
While at it, the logic for checking for the timeout was updated a bit
because both implementations could overshoot the timeout when entering
select() right before the final deadline.
Signed-off-by: Patrick Ohly <patrick.ohly@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Ed Bartosh [Fri, 24 Mar 2017 12:29:52 +0000 (14:29 +0200)]
wic: use kernel_dir to find systemd-efi bootloader
Fixed test failure caused by using bootimg_dir path
instead of kernel_dir to find systemd-efi bootloader:
FAIL: test_systemd_bootdisk (oeqa.selftest.wic.Wic)
...
FileNotFoundError: [Errno 2] No such file or directory:
'tmp/work/qemux86_64-poky-linux/core-image-minimal/1.0-r0/recipe-sysroot/usr/share'
Signed-off-by: Ed Bartosh <ed.bartosh@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Richard Purdie [Thu, 23 Mar 2017 16:35:30 +0000 (16:35 +0000)]
staging: Remove uninstalled dependencies from sysroots
Currently, if something is added to a sysroot, its hash remains unchanged,
and it continues to be buildable, it doesn't get removed from the sysroot.
This patch handles the case where something is removed from DEPENDS or
[depends].
It does introduce its own issue where something could get removed even
though some other task in parallel may have the same requirement. This
case should be extrememly rare and fixing the more common DEPENDS removal
is likely the bigger win though.
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Richard Purdie [Thu, 23 Mar 2017 11:56:44 +0000 (11:56 +0000)]
staging: Drop BB_SETSCENE_VERIFY_FUNCTION2
The original description for this was:
"""
Since we clean out do_populate_sysroot if do_configure runs, don't
allow do_populate_sysroot_setscene functions if we're going to
run do_configure.
"""
With RSS, we don't need to clean do_populate_sysroot any more. Since
we no longer do that, this function also has no purpose any longer
and can also be removed.
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Richard Purdie [Thu, 23 Mar 2017 11:53:02 +0000 (11:53 +0000)]
staging: Drop BB_SETSCENE_VERIFY_FUNCTION since it was replaced
BB_SETSCENE_VERIFY_FUNCTION2 replaced BB_SETSCENE_VERIFY_FUNCTION
and due to our minimum bitbake requirements there is no point in
retaining the older version any more.
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Andre McCurdy [Wed, 22 Mar 2017 22:47:55 +0000 (15:47 -0700)]
native.bbclass: clear MACHINE_FEATURES
Try to avoid native recipes accidentally being dependent on
MACHINE_FEATURES. This simple change doesn't prevent MACHINE_FEATURES
set via MACHINE_FEATURES_BACKFILL sneaking through, but it's better
than nothing.
Signed-off-by: Andre McCurdy <armccurdy@gmail.com> Signed-off-by: Ross Burton <ross.burton@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Martin Jansa [Thu, 23 Mar 2017 10:34:23 +0000 (11:34 +0100)]
package_manager.py: respect OPKGLIBDIR
* respect it for incremental rootfs generation
* add lists_dir option to opkg.conf
* also fix setting info_dir and status_file when they use default value, the
problem is that self.opkg_dir is already prefixed with rootfs directory,
comparing it with /var/lib/opkg always returned false and the options were
appended to config file unnecessary
* with opkg 0.3.4 we can use VARDIR prefix added in:
commit d2a8e23dc669adc398f4bb8bcfcabfcf925708f7
Author: Florin Gherendi <floring2502@gmail.com>
Date: Mon Dec 19 12:25:38 2016 +0200
libopkg: make the /var and /etc directories configurable at compile time.
Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Martin Jansa [Thu, 23 Mar 2017 12:21:22 +0000 (13:21 +0100)]
rootfs.py: Respect OPKGLIBDIR variable
* when OPKGLIBDIR doesn't have the default /var/lib value it will
silently fail to copy package database from normal rootfs to debugfs
rootfs and then when trying to install *-dbg complimentary packages
it won't install anything, because installed_pkgs.txt file generated
from debugfs is empty
Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Nathan Rossi [Thu, 23 Mar 2017 16:14:16 +0000 (02:14 +1000)]
uninative-tarball: glibc-gconv-{utf-16, cp1252} for binutils windres
The windres binutils binary which is used for Windows resource files
requires utf-16 and cp1252 encoding support in order to correctly
generate resource files with strings. As such when using uninative to
build mingw resources for a nativesdk target the windres binary is
executed on the native host, thus using the uninative libc and gconv
modules.
Signed-off-by: Nathan Rossi <nathan@nathanrossi.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
This is entirely unnecessary (we can ask the signer backend to export the
key to a file when needed), and was causing confusing selftest failures
due to the variable being set from two different places.
[YOCTO #11191]
Signed-off-by: Alexander Kanavin <alexander.kanavin@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
oeqa: use WORKDIR/oe-testimage-repo to look for RPM packages
Using RPM deploy dir was causing errors when pre-built images were
used with these steps:
https://wiki.yoctoproject.org/wiki/Quality_Assurance_yocto_project
[YOCTO #11173]
Signed-off-by: Alexander Kanavin <alexander.kanavin@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Ed Bartosh [Wed, 22 Mar 2017 13:42:29 +0000 (15:42 +0200)]
wic: use STAGING_DATADIR as a default for bootimg_dir
Default value for bootimg_dir was not set in main wic script
unlike the rest of artifacts: kernel_dir, roofts_dir and
native_sysroot. Set it to the value of STAGING_DATADIR for
consistency and to avoid confusion of wic plugin developers.
Signed-off-by: Ed Bartosh <ed.bartosh@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Ed Bartosh [Wed, 22 Mar 2017 13:42:27 +0000 (15:42 +0200)]
wic: use kernel_dir instead of bootimg_dir
bootimg_dir is usually set to the value of STAGING_DATADIR and
kernel_dir - to the value of DEPLOY_DIR_IMAGE, so usage of
kernel_dir is more logical in bootimg-efi, bootimg-partition and
rawcopy plugins.
Replaced usage of bootimg_dir to kernel_dir in 3 above mentioned
plugins that use DEPLOY_DIR_IMAGE as a default artifact location.
Signed-off-by: Ed Bartosh <ed.bartosh@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Richard Purdie [Wed, 22 Mar 2017 10:02:51 +0000 (10:02 +0000)]
sstate: Ensure installation directory is empty before execution
When you enable the systemd DISTRO_FEATURE, opkg-native contains systemd units
which have a relocation fixme list. When systemd isn't in DISTRO_FEATURES, there
are no fixmes required. Unfortunately as sstate isn't cleaning up its installation
directory before use, if you install the systemd version, then install the
non-systemd version from sstate, it would leave behind the fixme file from the
systemd version and breakage results as it would try and fixup files which don't
exist.
The solution is to ensure the unpack/install directory is clean before use. It
does raise other questions about opkg-native, systemd and DISTRO_FEATURES but there
is an underlying sstate issue here too which would cause missing file failures.
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Richard Purdie [Tue, 21 Mar 2017 19:28:42 +0000 (19:28 +0000)]
externalsrc: Use git add -A for compatibility with all git versions
I've been debugging a selftest failure on Centos7. The problem turns out
to be the elderly git version (1.8.3.1) on those systems. It means that
the system doesn't correctly checksum changed files in the source tree,
which in turn means do_compile fails to run and this leads to the following
selftest failure:
======================================================================
FAIL [141.373s]: test_devtool_buildclean (oeqa.selftest.devtool.DevtoolTests)
----------------------------------------------------------------------
Traceback (most recent call last):
File "/home/pokybuild/yocto-autobuilder/yocto-worker/nightly-oe-selftest/build/meta/lib/oeqa/selftest/devtool.py", line 530, in test_devtool_buildclean
assertFile(tempdir_mdadm, 'mdadm')
File "/home/pokybuild/yocto-autobuilder/yocto-worker/nightly-oe-selftest/build/meta/lib/oeqa/selftest/devtool.py", line 497, in assertFile
self.assertTrue(os.path.exists(f), "%r does not exist" % f)
AssertionError: False is not true : '/tmp/devtoolqag88s39z8/mdadm' does not exist
The solution is to use -A on the git add commandline which matches the behaviour
in git 2.0+ versions and resolves the problem.
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Maciej Borzecki [Tue, 21 Mar 2017 11:35:05 +0000 (12:35 +0100)]
wic: selftest: add tests for --fixed-size partition flags
wic has a new flag for setting a fixed parition size --fixed-size. Add
tests that verify if partition is indeed sized properly and that errors
are signaled when there is not enough space to fit partition data.
Signed-off-by: Maciej Borzecki <maciej.borzecki@rndity.com> Signed-off-by: Ross Burton <ross.burton@intel.com>
Aníbal Limón [Mon, 20 Mar 2017 23:33:25 +0000 (17:33 -0600)]
scripts/yocto-compat-layer.py: Add option to disable layer autodiscovery
Sometimes there is a need to only analyze the layer specified by the
command line, the new option -n will disable autodiscovery of layers
and only will try to test specified layers.
Signed-off-by: Aníbal Limón <anibal.limon@linux.intel.com> Signed-off-by: Ross Burton <ross.burton@intel.com>
Mikko Rapeli [Tue, 21 Mar 2017 10:53:13 +0000 (12:53 +0200)]
buildhistory.bbclass: add layer name to source recipe data
It is useful to know which layer provided a given recipe and its
binary packages.
Many projects combine a number of layers and some of them
also provide same recipe names in which case bitbake
can prioritize between them. buildhistory can record
the decision by saving the layer from where the recipe
was taken from.
Also, if a project is split to sub projects which maintain
recipes in different meta layers, then meta layer specific
summaries of e.g. disk usage can be calculated if
source recipes meta layer name is recorded for example in
buildhistory.
If source layer is not in build history, then layer providing
the recipe can be exported from build environment using
'bitbake-layers show-recipes', but it takes a long time to execute
since all recipes are parsed again and requires full source tree
with correct build configuration.
This patch exports the name of layer as configured in BBFILE_COLLECTIONS
append of its layer.conf. 'bitbake-layers show-recipes' exports the
meta layers directory path name. For several open source layers
these are different, e.g. meta-openembedded/meta-perl/conf/layer.conf
is perl-layer, poky/meta/conf/layer.conf is core,
poky/meta-skeleton/conf/layer.conf is skeleton etc.
Signed-off-by: Mikko Rapeli <mikko.rapeli@bmw.de> Signed-off-by: Ross Burton <ross.burton@intel.com>
Patrick Ohly [Tue, 21 Mar 2017 08:56:50 +0000 (09:56 +0100)]
ovmf: fix toolchain selection
For the native tools, a static patch inserted gcc/g++/ld/ar while later
adding BUILD_LDFLAGS and BUILD_CFLAGS with sed. Now it's all done with sed,
which has the advantage that it uses the actual compile variables. However,
in practice those are the same.
More importantly, picking the build tools for the target was
broken. ovmf-native tried to insert TARGET_PREFIX into the tools
definition file, but that variable is empty in a native recipe. As a
result, "gcc" was used instead of "${HOST_PREFIX}gcc", leading to an
undesirable dependency on the host compiler and potentially
(probably?!) causing some of the build issues that were seen for ovmf.
The new approach is to override the tool selection in ovmf-native so
that the HOST_PREFIX env variable is used, which then gets exported
during do_compile for the target.
While at it, Python code that gets appened to do_patch only to call
shell functions gets replaced with the do_patch[postfuncs] mechanism.
Incremental builds now always use the tools definition from the
current ovmf-native; previously, only the initial build copied the
template file.
Probably the entire split into ovmf-native and ovmf could be
removed. This merely hasn't been attempted yet.
Signed-off-by: Patrick Ohly <patrick.ohly@intel.com> Signed-off-by: Ross Burton <ross.burton@intel.com>
Aníbal Limón [Mon, 20 Mar 2017 20:51:03 +0000 (14:51 -0600)]
scripts/yocto-compat-layer.py: Make output log argument optional
Only create a log file when --output-log option is specified, since
logger is dumping to stdout by default is better to let the user
decide if a log needs to be created.
[YOCTO #11160]
Signed-off-by: Aníbal Limón <anibal.limon@linux.intel.com> Signed-off-by: Ross Burton <ross.burton@intel.com>
Khem Raj [Mon, 20 Mar 2017 16:47:35 +0000 (09:47 -0700)]
go-native: Install bootstrap binaries with 1.4 suffix
Currently, bin/go and bin/gofmt collide between go-native
and go-bootstrap-native packages, these are scripts anyway
which call the go compiler proper from right install, in
this case create go1.4 and gofmt1.4 names for these scripts
to avoid namespace collision
Signed-off-by: Khem Raj <raj.khem@gmail.com> Signed-off-by: Ross Burton <ross.burton@intel.com>
This test was attempting to exercise a broken test, for some reason this broke
with patches under review but investigation revealed that the test itself is
broken. The test has been removed, so there's no need to test it.
Signed-off-by: Ross Burton <ross.burton@intel.com>