mirror of
https://github.com/a52xq-dev/kernel.git
synced 2026-10-18 21:58:11 +07:00
797,382 commits
| Message | SHA1 | |
|---|---|---|
UPSTREAM: random: move rand_initialize() earlier
Right now rand_initialize() is run as an early_initcall(), but it only depends on timekeeping_init() (for mixing ktime_get_real() into the pools). However, the call to boot_init_stack_canary() for stack canary initialization runs earlier, which triggers a warning at boot: random: get_random_bytes called from start_kernel+0x357/0x548 with crng_init=0 Instead, this moves rand_initialize() to after timekeeping_init(), and moves canary initialization here as well. Note that this warning may still remain for machines that do not have UEFI RNG support (which initializes the RNG pools during setup_arch()), or for x86 machines without RDRAND (or booting without "random.trust=on" or CONFIG_RANDOM_TRUST_CPU=y). Signed-off-by: Kees Cook <keescook@chromium.org> Signed-off-by: Theodore Ts'o <tytso@mit.edu> (cherry picked from commit d55535232c3dbde9a523a9d10d68670f5fe5dec3) Signed-off-by: Mark Salyzyn <salyzyn@google.com> Bug: 148665638 Change-Id: If2aec7b464244ae89bdcd0ce2c363c36645aaa6c |
4ca103e6fa | |
UPSTREAM: random: only read from /dev/random after its pool has received 128 bits
Immediately after boot, we allow reads from /dev/random before its entropy pool has been fully initialized. Fix this so that we don't allow this until the blocking pool has received 128 bits. We do this by repurposing the initialized flag in the entropy pool struct, and use the initialized flag in the blocking pool to indicate whether it is safe to pull from the blocking pool. To do this, we needed to rework when we decide to push entropy from the input pool to the blocking pool, since the initialized flag for the input pool was used for this purpose. To simplify things, we no longer use the initialized flag for that purpose, nor do we use the entropy_total field any more. Signed-off-by: Theodore Ts'o <tytso@mit.edu> (cherry picked from commit eb9d1bf079bb438d1a066d72337092935fc770f6) Signed-off-by: Mark Salyzyn <salyzyn@google.com> Bug: 148665638 Change-Id: Ic0f66f7f04b514446cdec4cab4a47a0d3a184886 |
94bf375691 | |
UPSTREAM: drivers/char/random.c: make primary_crng static
Since the definition of struct crng_state is private to random.c, and primary_crng is neither declared or used elsewhere, there's no reason for that symbol to have external linkage. Signed-off-by: Rasmus Villemoes <linux@rasmusvillemoes.dk> Signed-off-by: Theodore Ts'o <tytso@mit.edu> (cherry picked from commit 764ed189c82090c1d85f0e30636156736d8f09a8) Signed-off-by: Mark Salyzyn <salyzyn@google.com> Bug: 148665638 Change-Id: I717cda431b78bb99f3339461b6868308dd31cf12 |
e7e09e4f9e | |
UPSTREAM: drivers/char/random.c: remove unused stuct poolinfo::poolbits
This field is never used, might as well remove it. Signed-off-by: Rasmus Villemoes <linux@rasmusvillemoes.dk> Signed-off-by: Theodore Ts'o <tytso@mit.edu> (cherry picked from commit 3bd0b5bf7dc3ea02070fcbcd682ecf628269e8ef) Signed-off-by: Mark Salyzyn <salyzyn@google.com> Bug: 148665638 Change-Id: I29de002717f8b600adb741e469fada15a9c0d25c |
53a9c08400 | |
UPSTREAM: drivers/char/random.c: constify poolinfo_table
Never modified, might as well be put in .rodata. Signed-off-by: Rasmus Villemoes <linux@rasmusvillemoes.dk> Signed-off-by: Theodore Ts'o <tytso@mit.edu> (cherry picked from commit 26e0854ab3310bbeef1ed404a2c87132fc91f8e1) Signed-off-by: Mark Salyzyn <salyzyn@google.com> Bug: 148665638 Change-Id: I764d96db977cdf1a6a890897033999793dc53848 |
2bfadb401b | |
ANDROID: clang: update to 10.0.4
Bug: 149785865 Change-Id: I953557b4fab528ee9528312c3364e8ec36a16f85 Signed-off-by: Alistair Delva <adelva@google.com> |
6617bf0e6d | |
ANDROID: Fix ABI representation after enabling CONFIG_NET_NS
Leaf changes summary: 4 artifacts changed (1 filtered out)
Changed leaf types summary: 4 (1 filtered out) leaf types changed
Removed/Changed/Added functions summary: 0 Removed, 0 Changed, 0 Added function
Removed/Changed/Added variables summary: 0 Removed, 0 Changed, 0 Added variable
'struct net_device at netdevice.h:1747:1' changed:
type size hasn't changed
there are data member changes:
'possible_net_t net_device::nd_net' size changed from 0 to 64 (in bits) (by +64 bits)
offset changed from 9472 to 9536 (in bits) (by +64 bits)
'device net_device::dev' offset changed from 9536 to 9600 (in bits) (by +64 bits)
'const attribute_group* net_device::sysfs_groups[4]' offset changed from 15744 to 15808 (in bits) (by +64 bits)
'const attribute_group* net_device::sysfs_rx_queue_group' offset changed from 16000 to 16064 (in bits) (by +64 bits)
'const rtnl_link_ops* net_device::rtnl_link_ops' offset changed from 16064 to 16128 (in bits) (by +64 bits)
'unsigned int net_device::gso_max_size' offset changed from 16128 to 16192 (in bits) (by +64 bits)
'u16 net_device::gso_max_segs' offset changed from 16160 to 16224 (in bits) (by +64 bits)
's16 net_device::num_tc' offset changed from 16176 to 16240 (in bits) (by +64 bits)
'netdev_tc_txq net_device::tc_to_txq[16]' offset changed from 16192 to 16256 (in bits) (by +64 bits)
'u8 net_device::prio_tc_map[16]' offset changed from 16704 to 16768 (in bits) (by +64 bits)
'phy_device* net_device::phydev' offset changed from 16832 to 16896 (in bits) (by +64 bits)
'sfp_bus* net_device::sfp_bus' offset changed from 16896 to 16960 (in bits) (by +64 bits)
'lock_class_key* net_device::qdisc_tx_busylock' offset changed from 16960 to 17024 (in bits) (by +64 bits)
'lock_class_key* net_device::qdisc_running_key' offset changed from 17024 to 17088 (in bits) (by +64 bits)
'bool net_device::proto_down' offset changed from 17088 to 17152 (in bits) (by +64 bits)
95 impacted interfaces
'struct request_sock at request_sock.h:50:1' changed:
type size changed from 1728 to 1792 (in bits)
there are data member changes:
type 'struct sock_common' of 'request_sock::__req_common' changed:
, size changed from 1024 to 1088 (in bits) (by +64 bits)
'request_sock* request_sock::dl_next' offset changed from 1024 to 1088 (in bits) (by +64 bits)
'u16 request_sock::mss' offset changed from 1088 to 1152 (in bits) (by +64 bits)
'u8 request_sock::num_retrans' offset changed from 1104 to 1168 (in bits) (by +64 bits)
'u8 request_sock::num_timeout' offset changed from 1112 to 1176 (in bits) (by +64 bits)
'u32 request_sock::ts_recent' offset changed from 1120 to 1184 (in bits) (by +64 bits)
'timer_list request_sock::rsk_timer' offset changed from 1152 to 1216 (in bits) (by +64 bits)
'const request_sock_ops* request_sock::rsk_ops' offset changed from 1472 to 1536 (in bits) (by +64 bits)
'sock* request_sock::sk' offset changed from 1536 to 1600 (in bits) (by +64 bits)
'u32* request_sock::saved_syn' offset changed from 1600 to 1664 (in bits) (by +64 bits)
'u32 request_sock::secid' offset changed from 1664 to 1728 (in bits) (by +64 bits)
'u32 request_sock::peer_secid' offset changed from 1696 to 1760 (in bits) (by +64 bits)
29 impacted interfaces
'struct sock at sock.h:327:1' changed:
type size changed from 5696 to 5760 (in bits)
there are data member changes:
type 'struct sock_common' of 'sock::__sk_common' changed:
type size changed from 1024 to 1088 (in bits)
there are data member changes:
'possible_net_t sock_common::skc_net' size changed from 0 to 64 (in bits) (by +64 bits)
'in6_addr sock_common::skc_v6_daddr' offset changed from 384 to 448 (in bits) (by +64 bits)
'in6_addr sock_common::skc_v6_rcv_saddr' offset changed from 512 to 576 (in bits) (by +64 bits)
'atomic64_t sock_common::skc_cookie' offset changed from 640 to 704 (in bits) (by +64 bits)
'int sock_common::skc_dontcopy_begin[]' offset changed from 768 to 832 (in bits) (by +64 bits)
'unsigned short int sock_common::skc_tx_queue_mapping' offset changed from 896 to 960 (in bits) (by +64 bits)
'unsigned short int sock_common::skc_rx_queue_mapping' offset changed from 912 to 976 (in bits) (by +64 bits)
'refcount_t sock_common::skc_refcnt' offset changed from 960 to 1024 (in bits) (by +64 bits)
'int sock_common::skc_dontcopy_end[]' offset changed from 992 to 1056 (in bits) (by +64 bits)
29 impacted interfaces
, offset changed from 1728 to 1792 (in bits) (by +64 bits)
'int sock::sk_forward_alloc' offset changed from 1920 to 1984 (in bits) (by +64 bits)
'unsigned int sock::sk_ll_usec' offset changed from 1952 to 2016 (in bits) (by +64 bits)
'unsigned int sock::sk_napi_id' offset changed from 1984 to 2048 (in bits) (by +64 bits)
'int sock::sk_rcvbuf' offset changed from 2016 to 2080 (in bits) (by +64 bits)
'sk_filter* sock::sk_filter' offset changed from 2048 to 2112 (in bits) (by +64 bits)
offset changed from 2112 to 2176 (in bits) (by +64 bits)
'xfrm_policy* sock::sk_policy[2]' offset changed from 2176 to 2240 (in bits) (by +64 bits)
'dst_entry* sock::sk_rx_dst' offset changed from 2304 to 2368 (in bits) (by +64 bits)
'dst_entry* sock::sk_dst_cache' offset changed from 2368 to 2432 (in bits) (by +64 bits)
'atomic_t sock::sk_omem_alloc' offset changed from 2432 to 2496 (in bits) (by +64 bits)
'int sock::sk_sndbuf' offset changed from 2464 to 2528 (in bits) (by +64 bits)
'int sock::sk_wmem_queued' offset changed from 2496 to 2560 (in bits) (by +64 bits)
'refcount_t sock::sk_wmem_alloc' offset changed from 2528 to 2592 (in bits) (by +64 bits)
'unsigned long int sock::sk_tsq_flags' offset changed from 2560 to 2624 (in bits) (by +64 bits)
'sk_buff_head sock::sk_write_queue' offset changed from 2688 to 2752 (in bits) (by +64 bits)
'__s32 sock::sk_peek_off' offset changed from 2880 to 2944 (in bits) (by +64 bits)
'int sock::sk_write_pending' offset changed from 2912 to 2976 (in bits) (by +64 bits)
'__u32 sock::sk_dst_pending_confirm' offset changed from 2944 to 3008 (in bits) (by +64 bits)
'u32 sock::sk_pacing_status' offset changed from 2976 to 3040 (in bits) (by +64 bits)
'long int sock::sk_sndtimeo' offset changed from 3008 to 3072 (in bits) (by +64 bits)
'timer_list sock::sk_timer' offset changed from 3072 to 3136 (in bits) (by +64 bits)
'__u32 sock::sk_priority' offset changed from 3392 to 3456 (in bits) (by +64 bits)
'__u32 sock::sk_mark' offset changed from 3424 to 3488 (in bits) (by +64 bits)
'u32 sock::sk_pacing_rate' offset changed from 3456 to 3520 (in bits) (by +64 bits)
'u32 sock::sk_max_pacing_rate' offset changed from 3488 to 3552 (in bits) (by +64 bits)
'page_frag sock::sk_frag' offset changed from 3520 to 3584 (in bits) (by +64 bits)
'netdev_features_t sock::sk_route_caps' offset changed from 3648 to 3712 (in bits) (by +64 bits)
'netdev_features_t sock::sk_route_nocaps' offset changed from 3712 to 3776 (in bits) (by +64 bits)
'netdev_features_t sock::sk_route_forced_caps' offset changed from 3776 to 3840 (in bits) (by +64 bits)
'int sock::sk_gso_type' offset changed from 3840 to 3904 (in bits) (by +64 bits)
'unsigned int sock::sk_gso_max_size' offset changed from 3872 to 3936 (in bits) (by +64 bits)
'gfp_t sock::sk_allocation' offset changed from 3904 to 3968 (in bits) (by +64 bits)
'__u32 sock::sk_txhash' offset changed from 3936 to 4000 (in bits) (by +64 bits)
'unsigned int sock::__sk_flags_offset[]' offset changed from 3968 to 4032 (in bits) (by +64 bits)
'unsigned int sock::sk_type' offset changed from 3968 to 4032 (in bits) (by +64 bits)
'u16 sock::sk_gso_max_segs' offset changed from 4000 to 4064 (in bits) (by +64 bits)
'u8 sock::sk_pacing_shift' offset changed from 4016 to 4080 (in bits) (by +64 bits)
'unsigned long int sock::sk_lingertime' offset changed from 4032 to 4096 (in bits) (by +64 bits)
'proto* sock::sk_prot_creator' offset changed from 4096 to 4160 (in bits) (by +64 bits)
'rwlock_t sock::sk_callback_lock' offset changed from 4160 to 4224 (in bits) (by +64 bits)
'int sock::sk_err' offset changed from 4224 to 4288 (in bits) (by +64 bits)
'int sock::sk_err_soft' offset changed from 4256 to 4320 (in bits) (by +64 bits)
'u32 sock::sk_ack_backlog' offset changed from 4288 to 4352 (in bits) (by +64 bits)
'u32 sock::sk_max_ack_backlog' offset changed from 4320 to 4384 (in bits) (by +64 bits)
'kuid_t sock::sk_uid' offset changed from 4352 to 4416 (in bits) (by +64 bits)
'pid* sock::sk_peer_pid' offset changed from 4416 to 4480 (in bits) (by +64 bits)
'const cred* sock::sk_peer_cred' offset changed from 4480 to 4544 (in bits) (by +64 bits)
'long int sock::sk_rcvtimeo' offset changed from 4544 to 4608 (in bits) (by +64 bits)
'ktime_t sock::sk_stamp' offset changed from 4608 to 4672 (in bits) (by +64 bits)
'u16 sock::sk_tsflags' offset changed from 4672 to 4736 (in bits) (by +64 bits)
'u8 sock::sk_shutdown' offset changed from 4688 to 4752 (in bits) (by +64 bits)
'u32 sock::sk_tskey' offset changed from 4704 to 4768 (in bits) (by +64 bits)
'atomic_t sock::sk_zckey' offset changed from 4736 to 4800 (in bits) (by +64 bits)
'u8 sock::sk_clockid' offset changed from 4768 to 4832 (in bits) (by +64 bits)
'u8 sock::sk_txtime_unused' offset changed from 4776 to 4840 (in bits) (by +64 bits)
'socket* sock::sk_socket' offset changed from 4800 to 4864 (in bits) (by +64 bits)
'void* sock::sk_user_data' offset changed from 4864 to 4928 (in bits) (by +64 bits)
'void* sock::sk_security' offset changed from 4928 to 4992 (in bits) (by +64 bits)
'sock_cgroup_data sock::sk_cgrp_data' offset changed from 4992 to 5056 (in bits) (by +64 bits)
'mem_cgroup* sock::sk_memcg' offset changed from 5056 to 5120 (in bits) (by +64 bits)
'void ()* sock::sk_state_change' offset changed from 5120 to 5184 (in bits) (by +64 bits)
'void ()* sock::sk_data_ready' offset changed from 5184 to 5248 (in bits) (by +64 bits)
'void ()* sock::sk_write_space' offset changed from 5248 to 5312 (in bits) (by +64 bits)
'void ()* sock::sk_error_report' offset changed from 5312 to 5376 (in bits) (by +64 bits)
'void ()* sock::sk_backlog_rcv' offset changed from 5376 to 5440 (in bits) (by +64 bits)
'void ()* sock::sk_destruct' offset changed from 5440 to 5504 (in bits) (by +64 bits)
'sock_reuseport* sock::sk_reuseport_cb' offset changed from 5504 to 5568 (in bits) (by +64 bits)
'callback_head sock::sk_rcu' offset changed from 5568 to 5632 (in bits) (by +64 bits)
29 impacted interfaces
'struct sock_common at sock.h:152:1' changed:
details were reported earlier
Fixes:
|
c111b47b50 | |
ANDROID: gki_defconfig: Enable CONFIG_NET_NS
Bug: 144061615 Bug: 147493341 Change-Id: I6392a7ee9c8ab26ca3e033889d8311661e6ec4aa Signed-off-by: Alistair Delva <adelva@google.com> |
c05bf9c3e6 | |
ANDROID: gki_defconfig: Enable XDP_SOCKETS
Bug: 145685190 Bug: 144061615 Change-Id: I8f2fdf61473916e5e8dbb15e12d49cb0777cb42e Signed-off-by: Alistair Delva <adelva@google.com> |
5174266903 | |
UPSTREAM: sched/topology: Introduce a sysctl for Energy Aware Scheduling
In its current state, Energy Aware Scheduling (EAS) starts automatically on asymmetric platforms having an Energy Model (EM). However, there are users who want to have an EM (for thermal management for example), but don't want EAS with it. In order to let users disable EAS explicitly, introduce a new sysctl called 'sched_energy_aware'. It is enabled by default so that EAS can start automatically on platforms where it makes sense. Flipping it to 0 rebuilds the scheduling domains and disables EAS. Bug: 120440300 Signed-off-by: Quentin Perret <quentin.perret@arm.com> Signed-off-by: Peter Zijlstra (Intel) <peterz@infradead.org> Cc: Linus Torvalds <torvalds@linux-foundation.org> Cc: Peter Zijlstra <peterz@infradead.org> Cc: Thomas Gleixner <tglx@linutronix.de> Cc: adharmap@codeaurora.org Cc: chris.redpath@arm.com Cc: currojerez@riseup.net Cc: dietmar.eggemann@arm.com Cc: edubezval@gmail.com Cc: gregkh@linuxfoundation.org Cc: javi.merino@kernel.org Cc: joel@joelfernandes.org Cc: juri.lelli@redhat.com Cc: morten.rasmussen@arm.com Cc: patrick.bellasi@arm.com Cc: pkondeti@codeaurora.org Cc: rjw@rjwysocki.net Cc: skannan@codeaurora.org Cc: smuckle@google.com Cc: srinivas.pandruvada@linux.intel.com Cc: thara.gopinath@linaro.org Cc: tkjos@google.com Cc: valentin.schneider@arm.com Cc: vincent.guittot@linaro.org Cc: viresh.kumar@linaro.org Link: https://lkml.kernel.org/r/20181203095628.11858-11-quentin.perret@arm.com Signed-off-by: Ingo Molnar <mingo@kernel.org> (cherry picked from commit 8d5d0cfb63cbcb4005e19a332b31d687b1d01e58) Signed-off-by: Quentin Perret <qperret@google.com> Change-Id: I4ca842d07b82869cfab7542c8c4351f631e1024d |
2a557de670 | |
This is the 4.19.104 stable release
-----BEGIN PGP SIGNATURE----- iQIzBAABCAAdFiEEZH8oZUiU471FcZm+ONu9yGCSaT4FAl5HEigACgkQONu9yGCS aT7Gcw/6AkDGkK5U/aDpKMqWiRmZUqDIg8U9xR+44Gl57Q71vicrzq8NGPHxxbsF slWoCyXLVSD7bMWGsTD0qJR8muROAraMxDl8dCxojEXHnXFMx4A4Cf0h1E0lY0mu Jq/O9m33ZMSppjio88sCcLpo0pbXF+cCX1CY87NI5QUitUzHgRh18W8BtyFpMMI8 eC0Fc+hMWax3+qqHt/hFVpufaTKm35zLCpGjGAJiHd7GFvqUJnuAzBYCs1Cf8NO1 KrrL3l/IWk8z3Z0Wc9PbBz309a9H6FVpjrXSXj6URkxjtqJ0F0mBMaIYxhaUF8PD CHY5xLyqKodC8/7O5zNOrP80oT9nqJvsmKwUwlG34IJuMVaq/o+hZu+88JVB02Yw v9XVcaQda5aZgWF9cBWzFQEcNwHFDCQ9VNidLDcHJLGPyFo/BogvMo8T4yPM9tI0 O0PSFm/yYu0airZSCzIbPzuF2Iv+iilVtq+o10VRDsGtEYAOzTL7nA01MkdXFhwy 4V+Q51C90TGo13BnnZ6xpEqjspuDWgeOD71/xkQ5cnyFgam0XQq/5R6JJghJIHOP 7p8NMMyNhK2FnOGrFUgqvwBCp6Dap1ISZyKvie1Z8vuCJsZcwMVIw8fxAzoZWOjj MlmmePjlbC7XTFxjdo0jrQTdvBwq+gFgNitD7UAlfHAdqKJKKA4= =8ktI -----END PGP SIGNATURE----- Merge 4.19.104 into android-4.19 Changes in 4.19.104 ASoC: pcm: update FE/BE trigger order based on the command hv_sock: Remove the accept port restriction IB/mlx4: Fix memory leak in add_gid error flow RDMA/netlink: Do not always generate an ACK for some netlink operations RDMA/core: Fix locking in ib_uverbs_event_read RDMA/uverbs: Verify MR access flags scsi: ufs: Fix ufshcd_probe_hba() reture value in case ufshcd_scsi_add_wlus() fails PCI/IOV: Fix memory leak in pci_iov_add_virtfn() ath10k: pci: Only dump ATH10K_MEM_REGION_TYPE_IOREG when safe PCI/switchtec: Fix vep_vector_number ioread width PCI: Don't disable bridge BARs when assigning bus resources nfs: NFS_SWAP should depend on SWAP NFS: Revalidate the file size on a fatal write error NFS/pnfs: Fix pnfs_generic_prepare_to_resend_writes() NFSv4: try lease recovery on NFS4ERR_EXPIRED serial: uartps: Add a timeout to the tx empty wait gpio: zynq: Report gpio direction at boot spi: spi-mem: Add extra sanity checks on the op param spi: spi-mem: Fix inverted logic in op sanity check rtc: hym8563: Return -EINVAL if the time is known to be invalid rtc: cmos: Stop using shared IRQ ARC: [plat-axs10x]: Add missing multicast filter number to GMAC node platform/x86: intel_mid_powerbtn: Take a copy of ddata ARM: dts: at91: Reenable UART TX pull-ups ARM: dts: am43xx: add support for clkout1 clock ARM: dts: at91: sama5d3: fix maximum peripheral clock rates ARM: dts: at91: sama5d3: define clock rate range for tcb1 tools/power/acpi: fix compilation error powerpc/pseries/vio: Fix iommu_table use-after-free refcount warning powerpc/pseries: Allow not having ibm, hypertas-functions::hcall-multi-tce for DDW iommu/arm-smmu-v3: Populate VMID field for CMDQ_OP_TLBI_NH_VA KVM: arm/arm64: vgic-its: Fix restoration of unmapped collections ARM: 8949/1: mm: mark free_memmap as __init arm64: cpufeature: Fix the type of no FP/SIMD capability arm64: ptrace: nofpsimd: Fail FP/SIMD regset operations KVM: arm/arm64: Fix young bit from mmu notifier KVM: arm: Fix DFSR setting for non-LPAE aarch32 guests KVM: arm: Make inject_abt32() inject an external abort instead KVM: arm64: pmu: Don't increment SW_INCR if PMCR.E is unset mtd: onenand_base: Adjust indentation in onenand_read_ops_nolock mtd: sharpslpart: Fix unsigned comparison to zero crypto: artpec6 - return correct error code for failed setkey() crypto: atmel-sha - fix error handling when setting hmac key media: i2c: adv748x: Fix unsafe macros pinctrl: sh-pfc: r8a7778: Fix duplicate SDSELF_B and SD1_CLK_B mwifiex: Fix possible buffer overflows in mwifiex_ret_wmm_get_status() mwifiex: Fix possible buffer overflows in mwifiex_cmd_append_vsie_tlv() libertas: don't exit from lbs_ibss_join_existing() with RCU read lock held libertas: make lbs_ibss_join_existing() return error code on rates overflow scsi: megaraid_sas: Do not initiate OCR if controller is not in ready state x86/stackframe: Move ENCODE_FRAME_POINTER to asm/frame.h x86/stackframe, x86/ftrace: Add pt_regs frame annotations serial: uartps: Move the spinlock after the read of the tx empty padata: fix null pointer deref of pd->pinst Linux 4.19.104 Signed-off-by: Greg Kroah-Hartman <gregkh@google.com> Change-Id: I42a465b140183dcc8cf49e19903d0e8f4b688930 |
4eee97caec | |
ANDROID: gki_defconfig: Enable MAC80211_RC_MINSTREL
This feature was noticed missing on the android emulator, but it's normally default 'on', we just were able to disable it because we turn CONFIG_EXPERT on too. Bug: 147493341 Change-Id: Ia81b4f841a5b5d4a37ad8a1f3450dff70abc341d Signed-off-by: Alistair Delva <adelva@google.com> |
280cae2765 | |
ANDROID: f2fs: remove unused function
This was added when merging LTS.
Fixes:
|
b4d7e099dc | |
ANDROID: virtio: virtio_input: pass _DIRECT only if the device
advertises _DIRECT INPUT_MT_DIRECT should be used only if the device advertises INPUT_PROP_DIRECT. Bug: 147493341 Bug: 149250379 Test: boot emulator with 5.4 kernel, check if touchscreen works Signed-off-by: Roman Kiryanov <rkir@google.com> Change-Id: Ic06ae2b9d0ab7c77cb8829e5392fd048139500a2 |
369759bf55 | |
ANDROID: cf build: Use merge_configs
Previously the cuttlefish build was cat'ng the cuttlefish.fragment with the gki_defconfig. The correct way to merge fragments is to use the merge_configs script. Bug: 139431025 Bug: 148247383 Test: Treehugger Signed-off-by: Ram Muthiah <rammuthiah@google.com> Change-Id: I0a62e6c5395b6933955894c8d5ad0484f5c7102d |
9c18171502 | |
ANDROID: net: bpf: Allow TC programs to call BPF_FUNC_skb_change_head
This enables ebpf tethering offload from a cellular interface with no L2 mac header to a wifi/ethernet/usb interface with one. Will pursue upstreaming this along with further mtu related fixups. Test: builds, real testing with identical patch on a 4.14 flame device Bug: 149724482 Signed-off-by: Lorenzo Colitti <lorenzo@google.com> Signed-off-by: Maciej Żenczykowski <maze@google.com> Change-Id: Ic182320bf1abb248d0f86fa2973c60208710f664 |
6e04d94ab7 | |
ANDROID: gki_defconfig: Disable SDCARD_FS
Move SDCARD_FS into the fragments for cuttlefish and db845c as this feature is still being used by AOSP master. These will be removed later. Bug: 149410031 Change-Id: I9142338cd0709aa8ec067b9e7d8c22390630de02 Signed-off-by: Alistair Delva <adelva@google.com> |
823487844c | |
|
Linux 4.19.104
|
9b15f7fae6 | |
padata: fix null pointer deref of pd->pinst
The 4.19 backport |
cad926f70b | |
serial: uartps: Move the spinlock after the read of the tx empty
commit 107475685abfdee504bb0ef4824f15797f6d2d4d upstream. Currently we are doing a read of the status register. Move the spinlock after that as the reads need not be spinlock protected. This patch prevents relaxing the cpu with spinlock held. Signed-off-by: Shubhrajyoti Datta <shubhrajyoti.datta@xilinx.com> Cc: Pavel Machek <pavel@denx.de> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org> |
77bad0ab1b | |
x86/stackframe, x86/ftrace: Add pt_regs frame annotations
commit ea1ed38dba64b64a245ab8ca1406269d17b99485 upstream. When CONFIG_FRAME_POINTER, we should mark pt_regs frames. Signed-off-by: Peter Zijlstra (Intel) <peterz@infradead.org> Reviewed-by: Josh Poimboeuf <jpoimboe@redhat.com> Cc: Linus Torvalds <torvalds@linux-foundation.org> Cc: Peter Zijlstra <peterz@infradead.org> Cc: Thomas Gleixner <tglx@linutronix.de> Signed-off-by: Ingo Molnar <mingo@kernel.org> [4.19 backport; added user-visible changelog] Signed-off-by: Dmitry Safonov <dima@arista.com> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org> |
2cdef3b47a | |
x86/stackframe: Move ENCODE_FRAME_POINTER to asm/frame.h
commit a9b3c6998d4a7d53a787cf4d0fd4a4c11239e517 upstream. In preparation for wider use, move the ENCODE_FRAME_POINTER macros to a common header and provide inline asm versions. These macros are used to encode a pt_regs frame for the unwinder; see unwind_frame.c:decode_frame_pointer(). Signed-off-by: Peter Zijlstra (Intel) <peterz@infradead.org> Reviewed-by: Josh Poimboeuf <jpoimboe@redhat.com> Cc: Linus Torvalds <torvalds@linux-foundation.org> Cc: Peter Zijlstra <peterz@infradead.org> Cc: Thomas Gleixner <tglx@linutronix.de> Signed-off-by: Ingo Molnar <mingo@kernel.org> Signed-off-by: Dmitry Safonov <dima@arista.com> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org> |
510cd44619 | |
scsi: megaraid_sas: Do not initiate OCR if controller is not in ready state
commit 6d7537270e3283b92f9b327da9d58a4de40fe8d0 upstream. Driver initiates OCR if a DCMD command times out. But there is a deadlock if the driver attempts to invoke another OCR before the mutex lock (reset_mutex) is released from the previous session of OCR. This patch takes care of the above scenario using new flag MEGASAS_FUSION_OCR_NOT_POSSIBLE to indicate if OCR is possible. Cc: stable@vger.kernel.org Link: https://lore.kernel.org/r/1579000882-20246-9-git-send-email-anand.lodnoor@broadcom.com Signed-off-by: Shivasharan S <shivasharan.srikanteshwara@broadcom.com> Signed-off-by: Anand Lodnoor <anand.lodnoor@broadcom.com> Signed-off-by: Martin K. Petersen <martin.petersen@oracle.com> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org> |
1cb14cce72 | |
libertas: make lbs_ibss_join_existing() return error code on rates overflow
[ Upstream commit 1754c4f60aaf1e17d886afefee97e94d7f27b4cb ]
Commit e5e884b42639 ("libertas: Fix two buffer overflows at parsing bss
descriptor") introduced a bounds check on the number of supplied rates to
lbs_ibss_join_existing() and made it to return on overflow.
However, the aforementioned commit doesn't set the return value accordingly
and thus, lbs_ibss_join_existing() would return with zero even though it
failed.
Make lbs_ibss_join_existing return -EINVAL in case the bounds check on the
number of supplied rates fails.
Fixes: e5e884b42639 ("libertas: Fix two buffer overflows at parsing bss descriptor")
Signed-off-by: Nicolai Stange <nstange@suse.de>
Signed-off-by: Kalle Valo <kvalo@codeaurora.org>
Signed-off-by: Sasha Levin <sashal@kernel.org>
|
1de085c83f | |
libertas: don't exit from lbs_ibss_join_existing() with RCU read lock held
[ Upstream commit c7bf1fb7ddca331780b9a733ae308737b39f1ad4 ]
Commit e5e884b42639 ("libertas: Fix two buffer overflows at parsing bss
descriptor") introduced a bounds check on the number of supplied rates to
lbs_ibss_join_existing().
Unfortunately, it introduced a return path from within a RCU read side
critical section without a corresponding rcu_read_unlock(). Fix this.
Fixes: e5e884b42639 ("libertas: Fix two buffer overflows at parsing bss descriptor")
Signed-off-by: Nicolai Stange <nstange@suse.de>
Signed-off-by: Kalle Valo <kvalo@codeaurora.org>
Signed-off-by: Sasha Levin <sashal@kernel.org>
|
8ffeb2114d | |
mwifiex: Fix possible buffer overflows in mwifiex_cmd_append_vsie_tlv()
[ Upstream commit b70261a288ea4d2f4ac7cd04be08a9f0f2de4f4d ] mwifiex_cmd_append_vsie_tlv() calls memcpy() without checking the destination size may trigger a buffer overflower, which a local user could use to cause denial of service or the execution of arbitrary code. Fix it by putting the length check before calling memcpy(). Signed-off-by: Qing Xu <m1s5p6688@gmail.com> Signed-off-by: Kalle Valo <kvalo@codeaurora.org> Signed-off-by: Sasha Levin <sashal@kernel.org> |
48247f7e14 | |
mwifiex: Fix possible buffer overflows in mwifiex_ret_wmm_get_status()
[ Upstream commit 3a9b153c5591548612c3955c9600a98150c81875 ] mwifiex_ret_wmm_get_status() calls memcpy() without checking the destination size.Since the source is given from remote AP which contains illegal wmm elements , this may trigger a heap buffer overflow. Fix it by putting the length check before calling memcpy(). Signed-off-by: Qing Xu <m1s5p6688@gmail.com> Signed-off-by: Kalle Valo <kvalo@codeaurora.org> Signed-off-by: Sasha Levin <sashal@kernel.org> |
fab5ca7996 | |
pinctrl: sh-pfc: r8a7778: Fix duplicate SDSELF_B and SD1_CLK_B
commit 805f635703b2562b5ddd822c62fc9124087e5dd5 upstream.
The FN_SDSELF_B and FN_SD1_CLK_B enum IDs are used twice, which means
one set of users must be wrong. Replace them by the correct enum IDs.
Fixes:
|
920d65a772 | |
media: i2c: adv748x: Fix unsafe macros
commit 0d962e061abcf1b9105f88fb850158b5887fbca3 upstream.
Enclose multiple macro parameters in parentheses in order to
make such macros safer and fix the Clang warning below:
drivers/media/i2c/adv748x/adv748x-afe.c:452:12: warning: operator '?:'
has lower precedence than '|'; '|' will be evaluated first
[-Wbitwise-conditional-parentheses]
ret = sdp_clrset(state, ADV748X_SDP_FRP, ADV748X_SDP_FRP_MASK, enable
? ctrl->val - 1 : 0);
Fixes:
|
db5c145466 | |
crypto: atmel-sha - fix error handling when setting hmac key
commit b529f1983b2dcc46354f311feda92e07b6e9e2da upstream.
HMAC keys can be of any length, and atmel_sha_hmac_key_set() can only
fail due to -ENOMEM. But atmel_sha_hmac_setkey() incorrectly treated
any error as a "bad key length" error. Fix it to correctly propagate
the -ENOMEM error code and not set any tfm result flags.
Fixes:
|
b772f3c499 | |
crypto: artpec6 - return correct error code for failed setkey()
commit b828f905904cd76424230c69741a4cabb0174168 upstream.
->setkey() is supposed to retun -EINVAL for invalid key lengths, not -1.
Fixes:
|
e1254ca723 | |
mtd: sharpslpart: Fix unsigned comparison to zero
commit f33113b542219448fa02d77ca1c6f4265bd7f130 upstream.
The unsigned variable log_num is being assigned a return value
from the call to sharpsl_nand_get_logical_num that can return
-EINVAL.
Detected using Coccinelle:
./drivers/mtd/parsers/sharpslpart.c:207:6-13: WARNING: Unsigned expression compared with zero: log_num > 0
Fixes:
|
a23409cee4 | |
mtd: onenand_base: Adjust indentation in onenand_read_ops_nolock
commit 0e7ca83e82d021c928dadf4c13c137d57337540d upstream.
Clang warns:
../drivers/mtd/nand/onenand/onenand_base.c:1269:3: warning: misleading
indentation; statement is not part of the previous 'if'
[-Wmisleading-indentation]
while (!ret) {
^
../drivers/mtd/nand/onenand/onenand_base.c:1266:2: note: previous
statement is here
if (column + thislen > writesize)
^
1 warning generated.
This warning occurs because there is a space before the tab of the while
loop. There are spaces at the beginning of a lot of the lines in this
block, remove them so that the indentation is consistent with the Linux
kernel coding style and clang no longer warns.
Fixes:
|
ad13249bfa | |
KVM: arm64: pmu: Don't increment SW_INCR if PMCR.E is unset
commit 3837407c1aa1101ed5e214c7d6041e7a23335c6e upstream.
The specification says PMSWINC increments PMEVCNTR<n>_EL1 by 1
if PMEVCNTR<n>_EL0 is enabled and configured to count SW_INCR.
For PMEVCNTR<n>_EL0 to be enabled, we need both PMCNTENSET to
be set for the corresponding event counter but we also need
the PMCR.E bit to be set.
Fixes:
|
b818a55bc4 | |
KVM: arm: Make inject_abt32() inject an external abort instead
commit 21aecdbd7f3ab02c9b82597dc733ee759fb8b274 upstream.
KVM's inject_abt64() injects an external-abort into an aarch64 guest.
The KVM_CAP_ARM_INJECT_EXT_DABT is intended to do exactly this, but
for an aarch32 guest inject_abt32() injects an implementation-defined
exception, 'Lockdown fault'.
Change this to external abort. For non-LPAE we now get the documented:
| Unhandled fault: external abort on non-linefetch (0x008) at 0x9c800f00
and for LPAE:
| Unhandled fault: synchronous external abort (0x210) at 0x9c800f00
Fixes:
|
f8d4dfffbb | |
KVM: arm: Fix DFSR setting for non-LPAE aarch32 guests
commit 018f22f95e8a6c3e27188b7317ef2c70a34cb2cd upstream.
Beata reports that KVM_SET_VCPU_EVENTS doesn't inject the expected
exception to a non-LPAE aarch32 guest.
The host intends to inject DFSR.FS=0x14 "IMPLEMENTATION DEFINED fault
(Lockdown fault)", but the guest receives DFSR.FS=0x04 "Fault on
instruction cache maintenance". This fault is hooked by
do_translation_fault() since ARMv6, which goes on to silently 'handle'
the exception, and restart the faulting instruction.
It turns out, when TTBCR.EAE is clear DFSR is split, and FS[4] has
to shuffle up to DFSR[10].
As KVM only does this in one place, fix up the static values. We
now get the expected:
| Unhandled fault: lock abort (0x404) at 0x9c800f00
Fixes:
|
8ea83328b2 | |
KVM: arm/arm64: Fix young bit from mmu notifier
commit cf2d23e0bac9f6b5cd1cba8898f5f05ead40e530 upstream.
kvm_test_age_hva() is called upon mmu_notifier_test_young(), but wrong
address range has been passed to handle_hva_to_gpa(). With the wrong
address range, no young bits will be checked in handle_hva_to_gpa().
It means zero is always returned from mmu_notifier_test_young().
This fixes the issue by passing correct address range to the underly
function handle_hva_to_gpa(), so that the hardware young (access) bit
will be visited.
Fixes:
|
5b63ffb30b | |
arm64: ptrace: nofpsimd: Fail FP/SIMD regset operations
commit c9d66999f064947e6b577ceacc1eb2fbca6a8d3c upstream.
When fp/simd is not supported on the system, fail the operations
of FP/SIMD regsets.
Fixes:
|
0e0310adf2 | |
arm64: cpufeature: Fix the type of no FP/SIMD capability
commit 449443c03d8cfdacf7313e17779a2594ebf87e6d upstream.
The NO_FPSIMD capability is defined with scope SYSTEM, which implies
that the "absence" of FP/SIMD on at least one CPU is detected only
after all the SMP CPUs are brought up. However, we use the status
of this capability for every context switch. So, let us change
the scope to LOCAL_CPU to allow the detection of this capability
as and when the first CPU without FP is brought up.
Also, the current type allows hotplugged CPU to be brought up without
FP/SIMD when all the current CPUs have FP/SIMD and we have the userspace
up. Fix both of these issues by changing the capability to
BOOT_RESTRICTED_LOCAL_CPU_FEATURE.
Fixes:
|
12e2dca1f2 | |
ARM: 8949/1: mm: mark free_memmap as __init
commit 31f3010e60522ede237fb145a63b4af5a41718c2 upstream.
As of commit ac7c3e4ff401 ("compiler: enable CONFIG_OPTIMIZE_INLINING
forcibly"), free_memmap() might not always be inlined, and thus is
triggering a section warning:
WARNING: vmlinux.o(.text.unlikely+0x904): Section mismatch in reference from the function free_memmap() to the function .meminit.text:memblock_free()
Mark it as __init, since the faller (free_unused_memmap) already is.
Fixes: ac7c3e4ff401 ("compiler: enable CONFIG_OPTIMIZE_INLINING forcibly")
Signed-off-by: Olof Johansson <olof@lixom.net>
Signed-off-by: Russell King <rmk+kernel@armlinux.org.uk>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
|
f1025b2f75 | |
KVM: arm/arm64: vgic-its: Fix restoration of unmapped collections
commit 8c58be34494b7f1b2adb446e2d8beeb90e5de65b upstream.
Saving/restoring an unmapped collection is a valid scenario. For
example this happens if a MAPTI command was sent, featuring an
unmapped collection. At the moment the CTE fails to be restored.
Only compare against the number of online vcpus if the rdist
base is set.
Fixes:
|
092c84fdac | |
iommu/arm-smmu-v3: Populate VMID field for CMDQ_OP_TLBI_NH_VA
commit 935d43ba272e0001f8ef446a3eff15d8175cb11b upstream. CMDQ_OP_TLBI_NH_VA requires VMID and this was missing since commit |
0703c46a76 | |
powerpc/pseries: Allow not having ibm, hypertas-functions::hcall-multi-tce for DDW
commit 7559d3d295f3365ea7ac0c0274c05e633fe4f594 upstream.
By default a pseries guest supports a H_PUT_TCE hypercall which maps
a single IOMMU page in a DMA window. Additionally the hypervisor may
support H_PUT_TCE_INDIRECT/H_STUFF_TCE which update multiple TCEs at once;
this is advertised via the device tree /rtas/ibm,hypertas-functions
property which Linux converts to FW_FEATURE_MULTITCE.
FW_FEATURE_MULTITCE is checked when dma_iommu_ops is used; however
the code managing the huge DMA window (DDW) ignores it and calls
H_PUT_TCE_INDIRECT even if it is explicitly disabled via
the "multitce=off" kernel command line parameter.
This adds FW_FEATURE_MULTITCE checking to the DDW code path.
This changes tce_build_pSeriesLP to take liobn and page size as
the huge window does not have iommu_table descriptor which usually
the place to store these numbers.
Fixes:
|
9ed7b9085e | |
powerpc/pseries/vio: Fix iommu_table use-after-free refcount warning
commit aff8c8242bc638ba57247ae1ec5f272ac3ed3b92 upstream. Commit |
802d704669 | |
tools/power/acpi: fix compilation error
commit 1985f8c7f9a42a651a9750d6fcadc74336d182df upstream.
If we compile tools/acpi target in the top source directory, we'd get a
compilation error showing as bellow:
# make tools/acpi
DESCEND power/acpi
DESCEND tools/acpidbg
CC tools/acpidbg/acpidbg.o
Assembler messages:
Fatal error: can't create /home/lzy/kernel-upstream/power/acpi/\
tools/acpidbg/acpidbg.o: No such file or directory
../../Makefile.rules:26: recipe for target '/home/lzy/kernel-upstream/\
power/acpi/tools/acpidbg/acpidbg.o' failed
make[3]: *** [/home/lzy/kernel-upstream//power/acpi/tools/acpidbg/\
acpidbg.o] Error 1
Makefile:19: recipe for target 'acpidbg' failed
make[2]: *** [acpidbg] Error 2
Makefile:54: recipe for target 'acpi' failed
make[1]: *** [acpi] Error 2
Makefile:1607: recipe for target 'tools/acpi' failed
make: *** [tools/acpi] Error 2
Fixes:
|
63a01158cf | |
ARM: dts: at91: sama5d3: define clock rate range for tcb1
commit a7e0f3fc01df4b1b7077df777c37feae8c9e8b6d upstream.
The clock rate range for the TCB1 clock is missing. define it in the device
tree.
Reported-by: Karl Rudbæk Olsen <karl@micro-technic.com>
Fixes:
|
939d63b8e2 | |
ARM: dts: at91: sama5d3: fix maximum peripheral clock rates
commit ee0aa926ddb0bd8ba59e33e3803b3b5804e3f5da upstream.
Currently the maximum rate for peripheral clock is calculated based on a
typical 133MHz MCK. The maximum frequency is defined in the datasheet as a
ratio to MCK. Some sama5d3 platforms are using a 166MHz MCK. Update the
device trees to match the maximum rate based on 166MHz.
Reported-by: Karl Rudbæk Olsen <karl@micro-technic.com>
Fixes:
|
7afef92485 | |
ARM: dts: am43xx: add support for clkout1 clock
commit 01053dadb79d63b65f7b353e68b4b6ccf4effedb upstream. clkout1 clock node and its generation tree was missing. Add this based on the data on TRM and PRCM functional spec. commit |
95427f9a16 | |
ARM: dts: at91: Reenable UART TX pull-ups
commit 9d39d86cd4af2b17b970d63307daad71f563d207 upstream.
Pull-ups for SAM9 UART/USART TX lines were disabled in a previous
commit. However, several chips in the SAM9 family require pull-ups to
prevent the TX lines from falling (and causing an endless break
condition) when the transceiver is disabled.
From the SAM9G20 datasheet, 32.5.1: "To prevent the TXD line from
falling when the USART is disabled, the use of an internal pull up
is mandatory.". This commit reenables the pull-ups for all chips having
that sentence in their datasheets.
Fixes:
|
27866f3676 | |
platform/x86: intel_mid_powerbtn: Take a copy of ddata
commit 5e0c94d3aeeecc68c573033f08d9678fecf253bd upstream.
The driver gets driver_data from memory that is marked as const (which
is probably put to read-only memory) and it then modifies it. This
likely causes some sort of fault to happen.
Fix this by taking a copy of the structure.
Fixes:
|
73124cba81 |