udc
506 Commits
| Author | SHA1 | Message | Date | |
|---|---|---|---|---|
|
|
7eae069564 |
Merge remote-tracking branch 'common/deprecated/android-4.4' into android-msm-wahoo-4.4
# By Chao Yu (415) and others # Via Greg Kroah-Hartman (53) and others * google/common/deprecated/android-4.4: ANDROID: regression introduced override_creds=off ANDROID: sched: Disallow WALT with CFS bandwidth control ANDROID: fiq_debugger: remove ANDROID: Add a tracepoint for mapping inode to full path ANDROID: fix binder change in merge of 4.4.183 UPSTREAM: net-ipv6-ndisc: add support for RFC7710 RA Captive Portal Identifier f2fs: use EINVAL for superblock with invalid magic f2fs: fix to read source block before invalidating it f2fs: remove redundant check from f2fs_setflags_common() f2fs: use generic checking and prep function for FS_IOC_SETFLAGS ANDROID: overlayfs: Fix a regression in commit |
||
|
|
788c16d896 |
Merge 4.4.196 into android-msm-wahoo-4.4
Changes in 4.4.196: (36 commits)
video: ssd1307fb: Start page range at page_offset
gpu: drm: radeon: Fix a possible null-pointer dereference in radeon_connector_set_property()
ipmi_si: Only schedule continuously in the thread in maintenance mode
clk: qoriq: Fix -Wunused-const-variable
clk: sirf: Don't reference clk_init_data after registration
powerpc/rtas: use device model APIs and serialization during LPM
powerpc/futex: Fix warning: 'oldval' may be used uninitialized in this function
powerpc/pseries/mobility: use cond_resched when updating device tree
pinctrl: tegra: Fix write barrier placement in pmx_writel
vfio_pci: Restore original state on release
powerpc/64s/exception: machine check use correct cfar for late handler
powerpc/pseries: correctly track irq state in default idle
scsi: core: Reduce memory required for SCSI logging
mfd: intel-lpss: Remove D3cold delay
ARM: 8898/1: mm: Don't treat faults reported from cache maintenance as writes
HID: apple: Fix stuck function keys when using FN
security: smack: Fix possible null-pointer dereferences in smack_socket_sock_rcv_skb()
fat: work around race with userspace's read via blockdev while mounting
hypfs: Fix error number left in struct pointer member
ocfs2: wait for recovering done after direct unlock request
kmemleak: increase DEBUG_KMEMLEAK_EARLY_LOG_SIZE default to 16K
ANDROID: binder: remove waitqueue when thread exits.
ANDROID: binder: synchronize_rcu() when using POLLFREE.
hso: fix NULL-deref on tty open
ipv6: drop incoming packets having a v4mapped source address
net: ipv4: avoid mixed n_redirects and rate_tokens usage
net: qlogic: Fix memory leak in ql_alloc_large_buffers
nfc: fix memory leak in llcp_sock_bind()
sch_dsmark: fix potential NULL deref in dsmark_init()
xen-netfront: do not use ~0U as error return value for xennet_fill_frags()
net/rds: Fix error handling in rds_ib_add_one()
sch_cbq: validate TCA_CBQ_WRROPT to avoid crash
Smack: Don't ignore other bprm->unsafe flags if LSM_UNSAFE_PTRACE is set
smack: use GFP_NOFS while holding inode_smack::smk_lock
NFC: fix attrs checks in netlink interface
Linux 4.4.196
Signed-off-by: Nathan Chancellor <natechancellor@gmail.com>
Conflicts:
drivers/android/binder.c
|
||
|
|
9add3e08a8 |
kmemleak: increase DEBUG_KMEMLEAK_EARLY_LOG_SIZE default to 16K
[ Upstream commit b751c52bb587ae66f773b15204ef7a147467f4c7 ] The current default value (400) is too low on many systems (e.g. some ARM64 platform takes up 1000+ entries). syzbot uses 16000 as default value, and has proved to be enough on beefy configurations, so let's pick that value. This consumes more RAM on boot (each entry is 160 bytes, so in total ~2.5MB of RAM), but the memory would later be freed (early_log is __initdata). Link: http://lkml.kernel.org/r/20190730154027.101525-1-drinkcat@chromium.org Signed-off-by: Nicolas Boichat <drinkcat@chromium.org> Suggested-by: Dmitry Vyukov <dvyukov@google.com> Acked-by: Catalin Marinas <catalin.marinas@arm.com> Acked-by: Dmitry Vyukov <dvyukov@google.com> Cc: Masahiro Yamada <yamada.masahiro@socionext.com> Cc: Kees Cook <keescook@chromium.org> Cc: Petr Mladek <pmladek@suse.com> Cc: Thomas Gleixner <tglx@linutronix.de> Cc: Tetsuo Handa <penguin-kernel@I-love.SAKURA.ne.jp> Cc: Joe Lawrence <joe.lawrence@redhat.com> Cc: Uladzislau Rezki <urezki@gmail.com> Cc: Andy Shevchenko <andriy.shevchenko@linux.intel.com> Cc: Stephen Rothwell <sfr@canb.auug.org.au> Cc: Andrey Ryabinin <aryabinin@virtuozzo.com> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org> Signed-off-by: Sasha Levin <sashal@kernel.org> |
||
|
|
fc8d81bc49 |
Merge 4.4.191 into android-msm-wahoo-4.4
Changes in 4.4.191: (77 commits)
HID: Add 044f:b320 ThrustMaster, Inc. 2 in 1 DT
MIPS: kernel: only use i8253 clocksource with periodic clockevent
netfilter: ebtables: fix a memory leak bug in compat
bonding: Force slave speed check after link state recovery for 802.3ad
can: dev: call netif_carrier_off() in register_candev()
st21nfca_connectivity_event_received: null check the allocation
st_nci_hci_connectivity_event_received: null check the allocation
ASoC: ti: davinci-mcasp: Correct slot_width posed constraint
net: usb: qmi_wwan: Add the BroadMobi BM818 card
isdn: mISDN: hfcsusb: Fix possible null-pointer dereferences in start_isoc_chain()
isdn: hfcsusb: Fix mISDN driver crash caused by transfer buffer on the stack
perf bench numa: Fix cpu0 binding
can: sja1000: force the string buffer NULL-terminated
can: peak_usb: force the string buffer NULL-terminated
NFSv4: Fix a potential sleep while atomic in nfs4_do_reclaim()
net: cxgb3_main: Fix a resource leak in a error path in 'init_one()'
net: hisilicon: make hip04_tx_reclaim non-reentrant
net: hisilicon: fix hip04-xmit never return TX_BUSY
net: hisilicon: Fix dma_map_single failed on arm64
libata: add SG safety checks in SFF pio transfers
selftests: kvm: Adding config fragments
HID: wacom: correct misreported EKR ring values
Revert "dm bufio: fix deadlock with loop device"
userfaultfd_release: always remove uffd flags and clear vm_userfaultfd_ctx
x86/retpoline: Don't clobber RFLAGS during CALL_NOSPEC on i386
x86/apic: Handle missing global clockevent gracefully
x86/boot: Save fields explicitly, zero out everything else
x86/boot: Fix boot regression caused by bootparam sanitizing
dm btree: fix order of block initialization in btree_split_beneath
dm space map metadata: fix missing store of apply_bops() return value
dm table: fix invalid memory accesses with too high sector number
cgroup: Disable IRQs while holding css_set_lock
GFS2: don't set rgrp gl_object until it's inserted into rgrp tree
net: arc_emac: fix koops caused by sk_buff free
vhost-net: set packet weight of tx polling to 2 * vq size
vhost_net: use packet weight for rx handler, too
vhost_net: introduce vhost_exceeds_weight()
vhost: introduce vhost_exceeds_weight()
vhost_net: fix possible infinite loop
vhost: scsi: add weight support
siphash: add cryptographically secure PRF
siphash: implement HalfSipHash1-3 for hash tables
inet: switch IP ID generator to siphash
netfilter: ctnetlink: don't use conntrack/expect object addresses as id
netfilter: conntrack: Use consistent ct id hash calculation
Revert "perf test 6: Fix missing kvm module load for s390"
x86/pm: Introduce quirk framework to save/restore extra MSR registers around suspend/resume
x86/CPU/AMD: Clear RDRAND CPUID bit on AMD family 15h/16h
scsi: ufs: Fix NULL pointer dereference in ufshcd_config_vreg_hpm()
dmaengine: ste_dma40: fix unneeded variable warning
usb: gadget: composite: Clear "suspended" on reset/disconnect
usb: host: fotg2: restart hcd after port reset
tools: hv: fix KVP and VSS daemons exit code
watchdog: bcm2835_wdt: Fix module autoload
tcp: fix tcp_rtx_queue_tail in case of empty retransmit queue
ALSA: usb-audio: Fix a stack buffer overflow bug in check_input_term
ALSA: usb-audio: Fix an OOB bug in parse_audio_mixer_unit
tcp: make sure EPOLLOUT wont be missed
ALSA: seq: Fix potential concurrent access to the deleted pool
KVM: x86: Don't update RIP or do single-step on faulting emulation
x86/apic: Do not initialize LDR and DFR for bigsmp
x86/apic: Include the LDR when clearing out APIC registers
usb-storage: Add new JMS567 revision to unusual_devs
USB: cdc-wdm: fix race between write and disconnect due to flag abuse
usb: host: ohci: fix a race condition between shutdown and irq
USB: storage: ums-realtek: Update module parameter description for auto_delink_en
USB: storage: ums-realtek: Whitelist auto-delink support
ptrace,x86: Make user_64bit_mode() available to 32-bit builds
uprobes/x86: Fix detection of 32-bit user mode
mmc: sdhci-of-at91: add quirk for broken HS200
mmc: core: Fix init of SD cards reporting an invalid VDD range
stm class: Fix a double free of stm_source_device
VMCI: Release resource if the work is already queued
Revert "cfg80211: fix processing world regdomain when non modular"
mac80211: fix possible sta leak
x86/ptrace: fix up botched merge of spectrev1 fix
Linux 4.4.191
Signed-off-by: Nathan Chancellor <natechancellor@gmail.com>
Conflicts:
drivers/scsi/ufs/ufshcd.c
fs/userfaultfd.c
sound/usb/mixer.c
|
||
|
|
6da3fbc3ec |
Merge 4.4.191 into android-4.4
Changes in 4.4.191 HID: Add 044f:b320 ThrustMaster, Inc. 2 in 1 DT MIPS: kernel: only use i8253 clocksource with periodic clockevent netfilter: ebtables: fix a memory leak bug in compat bonding: Force slave speed check after link state recovery for 802.3ad can: dev: call netif_carrier_off() in register_candev() st21nfca_connectivity_event_received: null check the allocation st_nci_hci_connectivity_event_received: null check the allocation ASoC: ti: davinci-mcasp: Correct slot_width posed constraint net: usb: qmi_wwan: Add the BroadMobi BM818 card isdn: mISDN: hfcsusb: Fix possible null-pointer dereferences in start_isoc_chain() isdn: hfcsusb: Fix mISDN driver crash caused by transfer buffer on the stack perf bench numa: Fix cpu0 binding can: sja1000: force the string buffer NULL-terminated can: peak_usb: force the string buffer NULL-terminated NFSv4: Fix a potential sleep while atomic in nfs4_do_reclaim() net: cxgb3_main: Fix a resource leak in a error path in 'init_one()' net: hisilicon: make hip04_tx_reclaim non-reentrant net: hisilicon: fix hip04-xmit never return TX_BUSY net: hisilicon: Fix dma_map_single failed on arm64 libata: add SG safety checks in SFF pio transfers selftests: kvm: Adding config fragments HID: wacom: correct misreported EKR ring values Revert "dm bufio: fix deadlock with loop device" userfaultfd_release: always remove uffd flags and clear vm_userfaultfd_ctx x86/retpoline: Don't clobber RFLAGS during CALL_NOSPEC on i386 x86/apic: Handle missing global clockevent gracefully x86/boot: Save fields explicitly, zero out everything else x86/boot: Fix boot regression caused by bootparam sanitizing dm btree: fix order of block initialization in btree_split_beneath dm space map metadata: fix missing store of apply_bops() return value dm table: fix invalid memory accesses with too high sector number cgroup: Disable IRQs while holding css_set_lock GFS2: don't set rgrp gl_object until it's inserted into rgrp tree net: arc_emac: fix koops caused by sk_buff free vhost-net: set packet weight of tx polling to 2 * vq size vhost_net: use packet weight for rx handler, too vhost_net: introduce vhost_exceeds_weight() vhost: introduce vhost_exceeds_weight() vhost_net: fix possible infinite loop vhost: scsi: add weight support siphash: add cryptographically secure PRF siphash: implement HalfSipHash1-3 for hash tables inet: switch IP ID generator to siphash netfilter: ctnetlink: don't use conntrack/expect object addresses as id netfilter: conntrack: Use consistent ct id hash calculation Revert "perf test 6: Fix missing kvm module load for s390" x86/pm: Introduce quirk framework to save/restore extra MSR registers around suspend/resume x86/CPU/AMD: Clear RDRAND CPUID bit on AMD family 15h/16h scsi: ufs: Fix NULL pointer dereference in ufshcd_config_vreg_hpm() dmaengine: ste_dma40: fix unneeded variable warning usb: gadget: composite: Clear "suspended" on reset/disconnect usb: host: fotg2: restart hcd after port reset tools: hv: fix KVP and VSS daemons exit code watchdog: bcm2835_wdt: Fix module autoload tcp: fix tcp_rtx_queue_tail in case of empty retransmit queue ALSA: usb-audio: Fix a stack buffer overflow bug in check_input_term ALSA: usb-audio: Fix an OOB bug in parse_audio_mixer_unit tcp: make sure EPOLLOUT wont be missed ALSA: seq: Fix potential concurrent access to the deleted pool KVM: x86: Don't update RIP or do single-step on faulting emulation x86/apic: Do not initialize LDR and DFR for bigsmp x86/apic: Include the LDR when clearing out APIC registers usb-storage: Add new JMS567 revision to unusual_devs USB: cdc-wdm: fix race between write and disconnect due to flag abuse usb: host: ohci: fix a race condition between shutdown and irq USB: storage: ums-realtek: Update module parameter description for auto_delink_en USB: storage: ums-realtek: Whitelist auto-delink support ptrace,x86: Make user_64bit_mode() available to 32-bit builds uprobes/x86: Fix detection of 32-bit user mode mmc: sdhci-of-at91: add quirk for broken HS200 mmc: core: Fix init of SD cards reporting an invalid VDD range stm class: Fix a double free of stm_source_device VMCI: Release resource if the work is already queued Revert "cfg80211: fix processing world regdomain when non modular" mac80211: fix possible sta leak x86/ptrace: fix up botched merge of spectrev1 fix Linux 4.4.191 Change-Id: I9c9b3ec748ba2977b818fd569d1788ed5da295b2 Signed-off-by: Greg Kroah-Hartman <gregkh@google.com> |
||
|
|
994fcca7f1 |
siphash: add cryptographically secure PRF
commit 2c956a60778cbb6a27e0c7a8a52a91378c90e1d1 upstream. SipHash is a 64-bit keyed hash function that is actually a cryptographically secure PRF, like HMAC. Except SipHash is super fast, and is meant to be used as a hashtable keyed lookup function, or as a general PRF for short input use cases, such as sequence numbers or RNG chaining. For the first usage: There are a variety of attacks known as "hashtable poisoning" in which an attacker forms some data such that the hash of that data will be the same, and then preceeds to fill up all entries of a hashbucket. This is a realistic and well-known denial-of-service vector. Currently hashtables use jhash, which is fast but not secure, and some kind of rotating key scheme (or none at all, which isn't good). SipHash is meant as a replacement for jhash in these cases. There are a modicum of places in the kernel that are vulnerable to hashtable poisoning attacks, either via userspace vectors or network vectors, and there's not a reliable mechanism inside the kernel at the moment to fix it. The first step toward fixing these issues is actually getting a secure primitive into the kernel for developers to use. Then we can, bit by bit, port things over to it as deemed appropriate. While SipHash is extremely fast for a cryptographically secure function, it is likely a bit slower than the insecure jhash, and so replacements will be evaluated on a case-by-case basis based on whether or not the difference in speed is negligible and whether or not the current jhash usage poses a real security risk. For the second usage: A few places in the kernel are using MD5 or SHA1 for creating secure sequence numbers, syn cookies, port numbers, or fast random numbers. SipHash is a faster and more fitting, and more secure replacement for MD5 in those situations. Replacing MD5 and SHA1 with SipHash for these uses is obvious and straight-forward, and so is submitted along with this patch series. There shouldn't be much of a debate over its efficacy. Dozens of languages are already using this internally for their hash tables and PRFs. Some of the BSDs already use this in their kernels. SipHash is a widely known high-speed solution to a widely known set of problems, and it's time we catch-up. Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com> Reviewed-by: Jean-Philippe Aumasson <jeanphilippe.aumasson@gmail.com> Cc: Linus Torvalds <torvalds@linux-foundation.org> Cc: Eric Biggers <ebiggers3@gmail.com> Cc: David Laight <David.Laight@aculab.com> Cc: Eric Dumazet <eric.dumazet@gmail.com> Signed-off-by: David S. Miller <davem@davemloft.net> [bwh: Backported to 4.4 as dependency of commits df453700e8d8 "inet: switch IP ID generator to siphash" and 3c79107631db "netfilter: ctnetlink: don't use conntrack/expect object addresses as id": - Adjust context] Signed-off-by: Ben Hutchings <ben.hutchings@codethink.co.uk> Signed-off-by: Sasha Levin <sashal@kernel.org> |
||
|
|
b3072b1f5c |
arm64/config: support panic on warn by config
Add config: CONFIG_PANIC_ON_WARN_DEFAULT_ENABLE This patchset adds CONFIG_PANIC_ON_DEFAULT_ENABLE to determine the behavior at build time. Even though we could do same thing by kernel parameter, it's not handy for vendor kernel because they usually store kernel cmd parameter into different partition with kernel so that it needs platform image rebuild to change kernel cmd line as well as kernel image. To remove such dependency to save much time, this patch adds default enable by Kconfig at build time. Bug: 134156483 Change-Id: Ib73e6e2c8d2c2e87ad96cd4c59feeb1c8102d041 Signed-off-by: Eva Huang <evahuang@google.com> |
||
|
|
7514f97280 |
UPSTREAM: bug: Provide toggle for BUG on data corruption
(cherry-picked from de54ebbe26bb371a6f1fbc0593372232f04e3107)
The kernel checks for cases of data structure corruption under some
CONFIGs (e.g. CONFIG_DEBUG_LIST). When corruption is detected, some
systems may want to BUG() immediately instead of letting the system run
with known corruption. Usually these kinds of manipulation primitives can
be used by security flaws to gain arbitrary memory write control. This
provides a new config CONFIG_BUG_ON_DATA_CORRUPTION and a corresponding
macro CHECK_DATA_CORRUPTION for handling these situations. Notably, even
if not BUGing, the kernel should not continue processing the corrupted
structure.
This is inspired by similar hardening by Syed Rameez Mustafa in MSM
kernels, and in PaX and Grsecurity, which is likely in response to earlier
removal of the BUG calls in commit
|
||
|
|
141b41e393 |
Merge 'v4.4.118' into android-msm-wahoo-4.4-lts
Linux 4.4.118
net: dst_cache_per_cpu_dst_set() can be static
crypto: s5p-sss - Fix kernel Oops in AES-ECB mode
KVM: nVMX: invvpid handling improvements
KVM: VMX: clean up declaration of VPID/EPT invalidation types
kvm: nVMX: Fix kernel panics induced by illegal INVEPT/INVVPID types
KVM: nVMX: vmx_complete_nested_posted_interrupt() can't fail
KVM: nVMX: kmap() can't fail
x86/speculation: Fix typo IBRS_ATT, which should be IBRS_ALL
x86/spectre: Simplify spectre_v2 command line parsing
* x86/retpoline: Avoid retpolines for built-in __init functions
include/linux/init.h
x86/kvm: Update spectre-v1 mitigation
x86/paravirt: Remove 'noreplace-paravirt' cmdline option
x86/spectre: Fix spelling mistake: "vunerable"-> "vulnerable"
x86/spectre: Report get_user mitigation for spectre_v1
* nl80211: Sanitize array index in parse_txq_params
net/wireless/nl80211.c
* vfs, fdtable: Prevent bounds-check bypass via speculative execution
include/linux/fdtable.h
x86/syscall: Sanitize syscall table de-references under speculation
x86/get_user: Use pointer masking to limit speculation
x86: Introduce barrier_nospec
x86: Implement array_index_mask_nospec
array_index_nospec: Sanitize speculative array de-references
Documentation: Document array_index_nospec
x86/spectre: Check CONFIG_RETPOLINE in command line parser
x86/cpu/bugs: Make retpoline module warning conditional
x86/bugs: Drop one "mitigation" from dmesg
x86/nospec: Fix header guards names
* module/retpoline: Warn about missing retpoline in module
include/linux/module.h
kernel/module.c
scripts/mod/modpost.c
KVM: VMX: Make indirect call speculation safe
KVM: x86: Make indirect calls in emulator speculation safe
x86/retpoline: Remove the esp/rsp thunk
KVM: async_pf: Fix #DF due to inject "Page not Present" and "Page Ready" exceptions simultaneously
* kasan: rework Kconfig settings
lib/Kconfig.debug
drm/gma500: remove helper function
x86/microcode/AMD: Change load_microcode_amd()'s param to bool to fix preemptibility bug
* genksyms: Fix segfault with invalid declarations
scripts/genksyms/parse.tab.c_shipped
scripts/genksyms/parse.tab.h_shipped
* dell-wmi, dell-laptop: depends DMI
drivers/platform/x86/Kconfig
* netlink: fix nla_put_{u8,u16,u32} for KASAN
include/net/netlink.h
* ASoC: Intel: Kconfig: fix build when ACPI is not enabled
sound/soc/intel/Kconfig
* ARM: tegra: select USB_ULPI from EHCI rather than platform
arch/arm64/Kconfig.platforms
drivers/usb/host/Kconfig
ncr5380: shut up gcc indentation warning
* usb: phy: msm add regulator dependency
drivers/usb/phy/Kconfig
idle: i7300: add PCI dependency
* binfmt_elf: compat: avoid unused function warning
fs/compat_binfmt_elf.c
isdn: sc: work around type mismatch warning
power: bq27xxx_battery: mark some symbols __maybe_unused
* Revert "power: bq27xxx_battery: Remove unneeded dependency in Kconfig"
drivers/power/Kconfig
ncpfs: fix unused variable warning
gpio: xgene: mark PM functions as __maybe_unused
net: hp100: remove unnecessary #ifdefs
dmaengine: zx: fix build warning
perf/x86: Shut up false-positive -Wmaybe-uninitialized warning
wireless: cw1200: use __maybe_unused to hide pm functions_
cw1200: fix bogus maybe-uninitialized warning
* v4l: remove MEDIA_TUNER dependency for VIDEO_TUNER
drivers/media/v4l2-core/Kconfig
hdpvr: hide unused variable
drm/gma500: Sanity-check pipe index
* serial: 8250_mid: fix broken DMA dependency
drivers/tty/serial/8250/Kconfig
ASoC: rockchip: use __maybe_unused to hide st_irq_syscfg_resume
ISDN: eicon: reduce stack size of sig_ind function
* em28xx: only use mt9v011 if camera support is enabled
drivers/media/usb/em28xx/Kconfig
* go7007: add MEDIA_CAMERA_SUPPORT dependency
drivers/media/usb/go7007/Kconfig
KVM: add X86_LOCAL_APIC dependency
Input: tca8418_keypad - hide gcc-4.9 -Wmaybe-uninitialized warning
drm/nouveau: hide gcc-4.9 -Wmaybe-uninitialized
tc358743: fix register i2c_rd/wr functions
* staging: unisys: visorinput depends on INPUT
drivers/staging/unisys/visorinput/Kconfig
* i2c: remove __init from i2c_register_board_info()
drivers/i2c/i2c-boardinfo.c
b2c2: flexcop: avoid unused function warnings
infiniband: cxgb4: use %pR format string for printing resources
iio: adc: axp288: remove redundant duplicate const on axp288_adc_channels
* ASoC: mediatek: add i2c dependency
sound/soc/mediatek/Kconfig
* genirq/msi: Add stubs for get_cached_msi_msg/pci_write_msi_msg
include/linux/msi.h
* tty: cyclades: cyz_interrupt is only used for PCI
drivers/tty/Kconfig
drm/vmwgfx: use *_32_bits() macros
tlan: avoid unused label with PCI=n
tc1100-wmi: fix build warning when CONFIG_PM not enabled
* ipv4: ipconfig: avoid unused ic_proto_used symbol
net/ipv4/ipconfig.c
* netfilter: ipvs: avoid unused variable warnings
net/netfilter/ipvs/ip_vs_ctl.c
x86/platform/olpc: Fix resume handler build warning
staging: wilc1000: fix kbuild test robot error
rtlwifi: fix gcc-6 indentation warning
* USB: cdc_subset: only build when one driver is enabled
drivers/net/usb/Kconfig
drivers/net/usb/Makefile
hwrng: exynos - use __maybe_unused to hide pm functions
fbdev: sm712fb: avoid unused function warnings
Drivers: hv: vmbus: fix build warning
* modsign: hide openssl output in silent builds
certs/Makefile
fbdev: s6e8ax0: avoid unused function warnings
* mtd: cfi: enforce valid geometry configuration
drivers/mtd/chips/Kconfig
mtd: sh_flctl: pass FIFO as physical address
amd-xgbe: Fix unused suspend handlers build warning
fbdev: auo_k190x: avoid unused function warnings
* driver-core: use 'dev' argument in dev_dbg_ratelimited stub
include/linux/device.h
target/user: Fix cast from pointer to phys_addr_t
tty: hvc_xen: hide xen_console_remove when unused
usb: musb/ux500: remove duplicate check for dma_is_compatible
pwc: hide unused label
SCSI: initio: remove duplicate module device table
scsi: mvumi: use __maybe_unused to hide pm functions
video: Use bool instead int pointer for get_opt_bool() argument
* fbdev: sis: enforce selection of at least one backend
drivers/video/fbdev/Kconfig
staging: ste_rmi4: avoid unused function warnings
video: fbdev: sis: remove unused variable
scsi: fdomain: drop fdomain_pci_tbl when built-in
mptfusion: hide unused seq_mpt_print_ioc_summary function
mtd: maps: add __init attribute
mtd: ichxrom: maybe-uninitialized with gcc-4.9
* md: avoid warning for 32-bit sector_t
drivers/md/md.c
* profile: hide unused functions when !CONFIG_PROC_FS
kernel/profile.c
dpt_i2o: fix build warning
drivers/net: fix eisa_driver probe section mismatch
scsi: sim710: fix build warning
x86/boot: Avoid warning for zero-filling .bss
thermal: spear: use __maybe_unused for PM functions
ssb: mark ssb_bus_register as __maybe_unused
reiserfs: avoid a -Wmaybe-uninitialized warning
ALSA: hda/ca0132 - fix possible NULL pointer use
* arm64: Kconfig: select COMPAT_BINFMT_ELF only when BINFMT_ELF is set
arch/arm64/Kconfig
scsi: advansys: fix uninitialized data access
x86/platform: Add PCI dependency for PUNIT_ATOM_DEBUG
x86: add MULTIUSER dependency for KVM
* thermal: fix INTEL_SOC_DTS_IOSF_CORE dependencies
drivers/thermal/Kconfig
x86/build: Silence the build with "make -s"
* tools build: Add tools tree support for 'make -s'
Makefile
x86/fpu/math-emu: Fix possible uninitialized variable use
* arm64: define BUG() instruction without CONFIG_BUG
arch/arm64/include/asm/bug.h
x86/ras/inject: Make it depend on X86_LOCAL_APIC=y
scsi: advansys: fix build warning for PCI=n
video: fbdev: via: remove possibly unused variables
platform/x86: intel_mid_thermal: Fix suspend handlers unused warning
gpio: intel-mid: Fix build warning when !CONFIG_PM
* vmxnet3: prevent building with 64K pages
drivers/net/Kconfig
isdn: icn: remove a #warning
* virtio_balloon: prevent uninitialized variable use
drivers/virtio/virtio_balloon.c
hippi: Fix a Fix a possible sleep-in-atomic bug in rr_close
* xen: XEN_ACPI_PROCESSOR is Dom0-only
drivers/xen/Kconfig
x86/mm/kmmio: Fix mmiotrace for page unaligned addresses
* mm/early_ioremap: Fix boot hang with earlyprintk=efi,keep
mm/early_ioremap.c
dmaengine: jz4740: disable/unprepare clk if probe fails
drm/armada: fix leak of crtc structure
* xfrm: Fix stack-out-of-bounds with misconfigured transport mode policies.
net/xfrm/xfrm_user.c
spi: sun4i: disable clocks in the remove function
ASoC: rockchip: disable clock on error
clk: fix a panic error caused by accessing NULL pointer
dmaengine: at_hdmac: fix potential NULL pointer dereference in atc_prep_dma_interleaved
dmaengine: ioat: Fix error handling path
* 509: fix printing uninitialized stack memory when OID is empty
lib/oid_registry.c
* btrfs: Fix possible off-by-one in btrfs_search_path_in_tree
fs/btrfs/ioctl.c
* net_sched: red: Avoid illegal values
net/sched/sch_sfq.c
net_sched: red: Avoid devision by zero
gianfar: fix a flooded alignment reports because of padding issue.
s390/dasd: prevent prefix I/O error
powerpc/perf: Fix oops when grouping different pmu events
ipvlan: Add the skb->mark as flow4's member to lookup route
scripts/kernel-doc: Don't fail with status != 0 if error encountered with -none
RDMA/cma: Make sure that PSN is not over max allowed
pinctrl: sunxi: Fix A80 interrupt pin bank
media: s5k6aa: describe some function parameters
* perf bench numa: Fixup discontiguous/sparse numa nodes
tools/perf/bench/numa.c
* perf top: Fix window dimensions change handling
tools/perf/builtin-top.c
ARM: dts: am4372: Correct the interrupts_properties of McASP
ARM: dts: Fix omap4 hang with GPS connected to USB by using wakeupgen
ARM: AM33xx: PRM: Remove am33xx_pwrdm_read_prev_pwrst function
ARM: OMAP2+: Fix SRAM virt to phys translation for save_secure_ram_context
* usb: build drivers/usb/common/ when USB_SUPPORT is set
drivers/Makefile
* usbip: keep usbip_device sockfd state in sync with tcp_socket
drivers/usb/usbip/stub_dev.c
drivers/usb/usbip/vhci_hcd.c
staging: iio: adc: ad7192: fix external frequency setting
* binder: check for binder_thread allocation failure in binder_poll()
drivers/android/binder.c
* staging: android: ashmem: Fix a race condition in pin ioctls
drivers/staging/android/ashmem.c
dn_getsockoptdecnet: move nf_{get/set}sockopt outside sock lock
* Make DST_CACHE a silent config option
net/Kconfig
arm64: dts: add #cooling-cells to CPU nodes
video: fbdev/mmp: add MODULE_LICENSE
ASoC: ux500: add MODULE_LICENSE tag
* net: avoid skb_warn_bad_offload on IS_ERR
net/core/dev.c
netfilter: xt_RATEEST: acquire xt_rateest_mutex for hash insert
* netfilter: on sockopt() acquire sock lock only in the required scope
net/ipv4/ip_sockglue.c
net/ipv4/netfilter/nf_conntrack_l3proto_ipv4.c
net/ipv6/ipv6_sockglue.c
net/ipv6/netfilter/nf_conntrack_l3proto_ipv6.c
netfilter: ipt_CLUSTERIP: fix out-of-bounds accesses in clusterip_tg_check()
* netfilter: x_tables: avoid out-of-bounds reads in xt_request_find_{match|target}
net/netfilter/x_tables.c
* netfilter: x_tables: fix int overflow in xt_alloc_table_info()
net/netfilter/x_tables.c
KVM: x86: fix escape of guest dr6 to the host
crypto: x86/twofish-3way - Fix %rbp usage
* selinux: skip bounded transition processing if the policy isn't loaded
security/selinux/ss/services.c
* selinux: ensure the context is NUL terminated in security_context_to_sid_core()
security/selinux/ss/services.c
* Provide a function to create a NUL-terminated string from unterminated data
include/linux/string.h
mm/util.c
drm: Require __GFP_NOFAIL for the legacy drm_modeset_lock_all
* blktrace: fix unlocked registration of tracepoints
kernel/trace/blktrace.c
* xfrm: check id proto in validate_tmpl()
net/xfrm/xfrm_user.c
* xfrm: Fix stack-out-of-bounds read on socket policy lookup.
net/xfrm/xfrm_policy.c
* mm,vmscan: Make unregister_shrinker() no-op if register_shrinker() failed.
mm/vmscan.c
* cfg80211: check dev_set_name() return value
net/wireless/core.c
* net: replace dst_cache ip6_tunnel implementation with the generic one
include/net/ip6_tunnel.h
net/ipv6/Kconfig
net/ipv6/ip6_gre.c
net/ipv6/ip6_tunnel.c
net/ipv6/ip6_vti.c
* net: add dst_cache support
net/Kconfig
net/core/Makefile
Signed-off-by: Greg Kroah-Hartman <gregkh@google.com>
|
||
|
|
5f7f76a551 |
Merge 4.4.118 into android-4.4
Changes in 4.4.118
net: add dst_cache support
net: replace dst_cache ip6_tunnel implementation with the generic one
cfg80211: check dev_set_name() return value
mm,vmscan: Make unregister_shrinker() no-op if register_shrinker() failed.
xfrm: Fix stack-out-of-bounds read on socket policy lookup.
xfrm: check id proto in validate_tmpl()
blktrace: fix unlocked registration of tracepoints
drm: Require __GFP_NOFAIL for the legacy drm_modeset_lock_all
Provide a function to create a NUL-terminated string from unterminated data
selinux: ensure the context is NUL terminated in security_context_to_sid_core()
selinux: skip bounded transition processing if the policy isn't loaded
crypto: x86/twofish-3way - Fix %rbp usage
KVM: x86: fix escape of guest dr6 to the host
netfilter: x_tables: fix int overflow in xt_alloc_table_info()
netfilter: x_tables: avoid out-of-bounds reads in xt_request_find_{match|target}
netfilter: ipt_CLUSTERIP: fix out-of-bounds accesses in clusterip_tg_check()
netfilter: on sockopt() acquire sock lock only in the required scope
netfilter: xt_RATEEST: acquire xt_rateest_mutex for hash insert
net: avoid skb_warn_bad_offload on IS_ERR
ASoC: ux500: add MODULE_LICENSE tag
video: fbdev/mmp: add MODULE_LICENSE
arm64: dts: add #cooling-cells to CPU nodes
Make DST_CACHE a silent config option
dn_getsockoptdecnet: move nf_{get/set}sockopt outside sock lock
staging: android: ashmem: Fix a race condition in pin ioctls
binder: check for binder_thread allocation failure in binder_poll()
staging: iio: adc: ad7192: fix external frequency setting
usbip: keep usbip_device sockfd state in sync with tcp_socket
usb: build drivers/usb/common/ when USB_SUPPORT is set
ARM: OMAP2+: Fix SRAM virt to phys translation for save_secure_ram_context
ARM: AM33xx: PRM: Remove am33xx_pwrdm_read_prev_pwrst function
ARM: dts: Fix omap4 hang with GPS connected to USB by using wakeupgen
ARM: dts: am4372: Correct the interrupts_properties of McASP
perf top: Fix window dimensions change handling
perf bench numa: Fixup discontiguous/sparse numa nodes
media: s5k6aa: describe some function parameters
pinctrl: sunxi: Fix A80 interrupt pin bank
RDMA/cma: Make sure that PSN is not over max allowed
scripts/kernel-doc: Don't fail with status != 0 if error encountered with -none
ipvlan: Add the skb->mark as flow4's member to lookup route
powerpc/perf: Fix oops when grouping different pmu events
s390/dasd: prevent prefix I/O error
gianfar: fix a flooded alignment reports because of padding issue.
net_sched: red: Avoid devision by zero
net_sched: red: Avoid illegal values
btrfs: Fix possible off-by-one in btrfs_search_path_in_tree
509: fix printing uninitialized stack memory when OID is empty
dmaengine: ioat: Fix error handling path
dmaengine: at_hdmac: fix potential NULL pointer dereference in atc_prep_dma_interleaved
clk: fix a panic error caused by accessing NULL pointer
ASoC: rockchip: disable clock on error
spi: sun4i: disable clocks in the remove function
xfrm: Fix stack-out-of-bounds with misconfigured transport mode policies.
drm/armada: fix leak of crtc structure
dmaengine: jz4740: disable/unprepare clk if probe fails
mm/early_ioremap: Fix boot hang with earlyprintk=efi,keep
x86/mm/kmmio: Fix mmiotrace for page unaligned addresses
xen: XEN_ACPI_PROCESSOR is Dom0-only
hippi: Fix a Fix a possible sleep-in-atomic bug in rr_close
virtio_balloon: prevent uninitialized variable use
isdn: icn: remove a #warning
vmxnet3: prevent building with 64K pages
gpio: intel-mid: Fix build warning when !CONFIG_PM
platform/x86: intel_mid_thermal: Fix suspend handlers unused warning
video: fbdev: via: remove possibly unused variables
scsi: advansys: fix build warning for PCI=n
x86/ras/inject: Make it depend on X86_LOCAL_APIC=y
arm64: define BUG() instruction without CONFIG_BUG
x86/fpu/math-emu: Fix possible uninitialized variable use
tools build: Add tools tree support for 'make -s'
x86/build: Silence the build with "make -s"
thermal: fix INTEL_SOC_DTS_IOSF_CORE dependencies
x86: add MULTIUSER dependency for KVM
x86/platform: Add PCI dependency for PUNIT_ATOM_DEBUG
scsi: advansys: fix uninitialized data access
arm64: Kconfig: select COMPAT_BINFMT_ELF only when BINFMT_ELF is set
ALSA: hda/ca0132 - fix possible NULL pointer use
reiserfs: avoid a -Wmaybe-uninitialized warning
ssb: mark ssb_bus_register as __maybe_unused
thermal: spear: use __maybe_unused for PM functions
x86/boot: Avoid warning for zero-filling .bss
scsi: sim710: fix build warning
drivers/net: fix eisa_driver probe section mismatch
dpt_i2o: fix build warning
profile: hide unused functions when !CONFIG_PROC_FS
md: avoid warning for 32-bit sector_t
mtd: ichxrom: maybe-uninitialized with gcc-4.9
mtd: maps: add __init attribute
mptfusion: hide unused seq_mpt_print_ioc_summary function
scsi: fdomain: drop fdomain_pci_tbl when built-in
video: fbdev: sis: remove unused variable
staging: ste_rmi4: avoid unused function warnings
fbdev: sis: enforce selection of at least one backend
video: Use bool instead int pointer for get_opt_bool() argument
scsi: mvumi: use __maybe_unused to hide pm functions
SCSI: initio: remove duplicate module device table
pwc: hide unused label
usb: musb/ux500: remove duplicate check for dma_is_compatible
tty: hvc_xen: hide xen_console_remove when unused
target/user: Fix cast from pointer to phys_addr_t
driver-core: use 'dev' argument in dev_dbg_ratelimited stub
fbdev: auo_k190x: avoid unused function warnings
amd-xgbe: Fix unused suspend handlers build warning
mtd: sh_flctl: pass FIFO as physical address
mtd: cfi: enforce valid geometry configuration
fbdev: s6e8ax0: avoid unused function warnings
modsign: hide openssl output in silent builds
Drivers: hv: vmbus: fix build warning
fbdev: sm712fb: avoid unused function warnings
hwrng: exynos - use __maybe_unused to hide pm functions
USB: cdc_subset: only build when one driver is enabled
rtlwifi: fix gcc-6 indentation warning
staging: wilc1000: fix kbuild test robot error
x86/platform/olpc: Fix resume handler build warning
netfilter: ipvs: avoid unused variable warnings
ipv4: ipconfig: avoid unused ic_proto_used symbol
tc1100-wmi: fix build warning when CONFIG_PM not enabled
tlan: avoid unused label with PCI=n
drm/vmwgfx: use *_32_bits() macros
tty: cyclades: cyz_interrupt is only used for PCI
genirq/msi: Add stubs for get_cached_msi_msg/pci_write_msi_msg
ASoC: mediatek: add i2c dependency
iio: adc: axp288: remove redundant duplicate const on axp288_adc_channels
infiniband: cxgb4: use %pR format string for printing resources
b2c2: flexcop: avoid unused function warnings
i2c: remove __init from i2c_register_board_info()
staging: unisys: visorinput depends on INPUT
tc358743: fix register i2c_rd/wr functions
drm/nouveau: hide gcc-4.9 -Wmaybe-uninitialized
Input: tca8418_keypad - hide gcc-4.9 -Wmaybe-uninitialized warning
KVM: add X86_LOCAL_APIC dependency
go7007: add MEDIA_CAMERA_SUPPORT dependency
em28xx: only use mt9v011 if camera support is enabled
ISDN: eicon: reduce stack size of sig_ind function
ASoC: rockchip: use __maybe_unused to hide st_irq_syscfg_resume
serial: 8250_mid: fix broken DMA dependency
drm/gma500: Sanity-check pipe index
hdpvr: hide unused variable
v4l: remove MEDIA_TUNER dependency for VIDEO_TUNER
cw1200: fix bogus maybe-uninitialized warning
wireless: cw1200: use __maybe_unused to hide pm functions_
perf/x86: Shut up false-positive -Wmaybe-uninitialized warning
dmaengine: zx: fix build warning
net: hp100: remove unnecessary #ifdefs
gpio: xgene: mark PM functions as __maybe_unused
ncpfs: fix unused variable warning
Revert "power: bq27xxx_battery: Remove unneeded dependency in Kconfig"
power: bq27xxx_battery: mark some symbols __maybe_unused
isdn: sc: work around type mismatch warning
binfmt_elf: compat: avoid unused function warning
idle: i7300: add PCI dependency
usb: phy: msm add regulator dependency
ncr5380: shut up gcc indentation warning
ARM: tegra: select USB_ULPI from EHCI rather than platform
ASoC: Intel: Kconfig: fix build when ACPI is not enabled
netlink: fix nla_put_{u8,u16,u32} for KASAN
dell-wmi, dell-laptop: depends DMI
genksyms: Fix segfault with invalid declarations
x86/microcode/AMD: Change load_microcode_amd()'s param to bool to fix preemptibility bug
drm/gma500: remove helper function
kasan: rework Kconfig settings
KVM: async_pf: Fix #DF due to inject "Page not Present" and "Page Ready" exceptions simultaneously
x86/retpoline: Remove the esp/rsp thunk
KVM: x86: Make indirect calls in emulator speculation safe
KVM: VMX: Make indirect call speculation safe
module/retpoline: Warn about missing retpoline in module
x86/nospec: Fix header guards names
x86/bugs: Drop one "mitigation" from dmesg
x86/cpu/bugs: Make retpoline module warning conditional
x86/spectre: Check CONFIG_RETPOLINE in command line parser
Documentation: Document array_index_nospec
array_index_nospec: Sanitize speculative array de-references
x86: Implement array_index_mask_nospec
x86: Introduce barrier_nospec
x86/get_user: Use pointer masking to limit speculation
x86/syscall: Sanitize syscall table de-references under speculation
vfs, fdtable: Prevent bounds-check bypass via speculative execution
nl80211: Sanitize array index in parse_txq_params
x86/spectre: Report get_user mitigation for spectre_v1
x86/spectre: Fix spelling mistake: "vunerable"-> "vulnerable"
x86/paravirt: Remove 'noreplace-paravirt' cmdline option
x86/kvm: Update spectre-v1 mitigation
x86/retpoline: Avoid retpolines for built-in __init functions
x86/spectre: Simplify spectre_v2 command line parsing
x86/speculation: Fix typo IBRS_ATT, which should be IBRS_ALL
KVM: nVMX: kmap() can't fail
KVM: nVMX: vmx_complete_nested_posted_interrupt() can't fail
kvm: nVMX: Fix kernel panics induced by illegal INVEPT/INVVPID types
KVM: VMX: clean up declaration of VPID/EPT invalidation types
KVM: nVMX: invvpid handling improvements
crypto: s5p-sss - Fix kernel Oops in AES-ECB mode
net: dst_cache_per_cpu_dst_set() can be static
Linux 4.4.118
Change-Id: I01c76e1c15a611e13a1e98092bc5c01cdb5b6adb
Signed-off-by: Greg Kroah-Hartman <gregkh@google.com>
|
||
|
|
0ffa39fb59 |
kasan: rework Kconfig settings
commit e7c52b84fb18f08ce49b6067ae6285aca79084a8 upstream. We get a lot of very large stack frames using gcc-7.0.1 with the default -fsanitize-address-use-after-scope --param asan-stack=1 options, which can easily cause an overflow of the kernel stack, e.g. drivers/gpu/drm/i915/gvt/handlers.c:2434:1: warning: the frame size of 46176 bytes is larger than 3072 bytes drivers/net/wireless/ralink/rt2x00/rt2800lib.c:5650:1: warning: the frame size of 23632 bytes is larger than 3072 bytes lib/atomic64_test.c:250:1: warning: the frame size of 11200 bytes is larger than 3072 bytes drivers/gpu/drm/i915/gvt/handlers.c:2621:1: warning: the frame size of 9208 bytes is larger than 3072 bytes drivers/media/dvb-frontends/stv090x.c:3431:1: warning: the frame size of 6816 bytes is larger than 3072 bytes fs/fscache/stats.c:287:1: warning: the frame size of 6536 bytes is larger than 3072 bytes To reduce this risk, -fsanitize-address-use-after-scope is now split out into a separate CONFIG_KASAN_EXTRA Kconfig option, leading to stack frames that are smaller than 2 kilobytes most of the time on x86_64. An earlier version of this patch also prevented combining KASAN_EXTRA with KASAN_INLINE, but that is no longer necessary with gcc-7.0.1. All patches to get the frame size below 2048 bytes with CONFIG_KASAN=y and CONFIG_KASAN_EXTRA=n have been merged by maintainers now, so we can bring back that default now. KASAN_EXTRA=y still causes lots of warnings but now defaults to !COMPILE_TEST to disable it in allmodconfig, and it remains disabled in all other defconfigs since it is a new option. I arbitrarily raise the warning limit for KASAN_EXTRA to 3072 to reduce the noise, but an allmodconfig kernel still has around 50 warnings on gcc-7. I experimented a bit more with smaller stack frames and have another follow-up series that reduces the warning limit for 64-bit architectures to 1280 bytes (without CONFIG_KASAN). With earlier versions of this patch series, I also had patches to address the warnings we get with KASAN and/or KASAN_EXTRA, using a "noinline_if_stackbloat" annotation. That annotation now got replaced with a gcc-8 bugfix (see https://gcc.gnu.org/bugzilla/show_bug.cgi?id=81715) and a workaround for older compilers, which means that KASAN_EXTRA is now just as bad as before and will lead to an instant stack overflow in a few extreme cases. This reverts parts of commit |
||
|
|
9b83f370dc |
BACKPORT: kernel: add kcov code coverage
kcov provides code coverage collection for coverage-guided fuzzing (randomized testing). Coverage-guided fuzzing is a testing technique that uses coverage feedback to determine new interesting inputs to a system. A notable user-space example is AFL (http://lcamtuf.coredump.cx/afl/). However, this technique is not widely used for kernel testing due to missing compiler and kernel support. kcov does not aim to collect as much coverage as possible. It aims to collect more or less stable coverage that is function of syscall inputs. To achieve this goal it does not collect coverage in soft/hard interrupts and instrumentation of some inherently non-deterministic or non-interesting parts of kernel is disbled (e.g. scheduler, locking). Currently there is a single coverage collection mode (tracing), but the API anticipates additional collection modes. Initially I also implemented a second mode which exposes coverage in a fixed-size hash table of counters (what Quentin used in his original patch). I've dropped the second mode for simplicity. This patch adds the necessary support on kernel side. The complimentary compiler support was added in gcc revision 231296. We've used this support to build syzkaller system call fuzzer, which has found 90 kernel bugs in just 2 months: https://github.com/google/syzkaller/wiki/Found-Bugs We've also found 30+ bugs in our internal systems with syzkaller. Another (yet unexplored) direction where kcov coverage would greatly help is more traditional "blob mutation". For example, mounting a random blob as a filesystem, or receiving a random blob over wire. Why not gcov. Typical fuzzing loop looks as follows: (1) reset coverage, (2) execute a bit of code, (3) collect coverage, repeat. A typical coverage can be just a dozen of basic blocks (e.g. an invalid input). In such context gcov becomes prohibitively expensive as reset/collect coverage steps depend on total number of basic blocks/edges in program (in case of kernel it is about 2M). Cost of kcov depends only on number of executed basic blocks/edges. On top of that, kernel requires per-thread coverage because there are always background threads and unrelated processes that also produce coverage. With inlined gcov instrumentation per-thread coverage is not possible. kcov exposes kernel PCs and control flow to user-space which is insecure. But debugfs should not be mapped as user accessible. Based on a patch by Quentin Casasnovas. [akpm@linux-foundation.org: make task_struct.kcov_mode have type `enum kcov_mode'] [akpm@linux-foundation.org: unbreak allmodconfig] [akpm@linux-foundation.org: follow x86 Makefile layout standards] Signed-off-by: Dmitry Vyukov <dvyukov@google.com> Reviewed-by: Kees Cook <keescook@chromium.org> Cc: syzkaller <syzkaller@googlegroups.com> Cc: Vegard Nossum <vegard.nossum@oracle.com> Cc: Catalin Marinas <catalin.marinas@arm.com> Cc: Tavis Ormandy <taviso@google.com> Cc: Will Deacon <will.deacon@arm.com> Cc: Quentin Casasnovas <quentin.casasnovas@oracle.com> Cc: Kostya Serebryany <kcc@google.com> Cc: Eric Dumazet <edumazet@google.com> Cc: Alexander Potapenko <glider@google.com> Cc: Kees Cook <keescook@google.com> Cc: Bjorn Helgaas <bhelgaas@google.com> Cc: Sasha Levin <sasha.levin@oracle.com> Cc: David Drysdale <drysdale@google.com> Cc: Ard Biesheuvel <ard.biesheuvel@linaro.org> Cc: Andrey Ryabinin <ryabinin.a.a@gmail.com> Cc: Kirill A. Shutemov <kirill@shutemov.name> Cc: Jiri Slaby <jslaby@suse.cz> Cc: Ingo Molnar <mingo@elte.hu> Cc: Thomas Gleixner <tglx@linutronix.de> Cc: "H. Peter Anvin" <hpa@zytor.com> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org> Bug: 64145065 (cherry-picked from 5c9a8750a6409c63a0f01d51a9024861022f6593) Change-Id: I17b5e04f6e89b241924e78ec32ead79c38b860ce Signed-off-by: Paul Lawrence <paullawrence@google.com> |
||
|
|
a73c81554f |
Merged linux-4.4.88 into android-msm-wahoo-4.4
Linux 4.4.88
xfs: XFS_IS_REALTIME_INODE() should be false if no rt device present
NFS: Fix 2 use after free issues in the I/O code
ARM: 8692/1: mm: abort uaccess retries upon fatal signal
Bluetooth: Properly check L2CAP config option output buffer length
ALSA: msnd: Optimize / harden DSP and MIDI loops
locktorture: Fix potential memory leak with rw lock test
btrfs: resume qgroup rescan on rw remount
drm/bridge: adv7511: Re-write the i2c address before EDID probing
drm/bridge: adv7511: Switch to using drm_kms_helper_hotplug_event()
drm/bridge: adv7511: Use work_struct to defer hotplug handing to out of irq context
drm/bridge: adv7511: Fix mutex deadlock when interrupts are disabled
drm: adv7511: really enable interrupts for EDID detection
scsi: sg: recheck MMAP_IO request length with lock held
scsi: sg: protect against races between mmap() and SG_SET_RESERVED_SIZE
cs5536: add support for IDE controller variant
workqueue: Fix flag collision
drm/nouveau/pci/msi: disable MSI on big-endian platforms by default
mwifiex: correct channel stat buffer overflows
dlm: avoid double-free on error path in dlm_device_{register,unregister}
Bluetooth: Add support of 13d3:3494 RTL8723BE device
rtlwifi: rtl_pci_probe: Fix fail path of _rtl_pci_find_adapter
Input: trackpoint - assume 3 buttons when buttons detection fails
ath10k: fix memory leak in rx ring buffer allocation
intel_th: pci: Add Cannon Lake PCH-LP support
intel_th: pci: Add Cannon Lake PCH-H support
driver core: bus: Fix a potential double free
staging/rts5208: fix incorrect shift to extract upper nybble
USB: core: Avoid race of async_completed() w/ usbdev_release()
usb:xhci:Fix regression when ATI chipsets detected
usb: Add device quirk for Logitech HD Pro Webcam C920-C
USB: serial: option: add support for D-Link DWM-157 C1
usb: quirks: add delay init quirk for Corsair Strafe RGB keyboard
Linux 4.4.87
crypto: algif_skcipher - only call put_page on referenced and used pages
epoll: fix race between ep_poll_callback(POLLFREE) and ep_free()/ep_remove()
kvm: arm/arm64: Force reading uncached stage2 PGD
kvm: arm/arm64: Fix race in resetting stage2 PGD
drm/ttm: Fix accounting error when fail to get pages for pool
xfrm: policy: check policy direction value
wl1251: add a missing spin_lock_init()
CIFS: remove endian related sparse warning
CIFS: Fix maximum SMB2 header size
alpha: uapi: Add support for __SANE_USERSPACE_TYPES__
cpuset: Fix incorrect memory_pressure control file mapping
cpumask: fix spurious cpumask_of_node() on non-NUMA multi-node configs
ceph: fix readpage from fscache
i2c: ismt: Return EMSGSIZE for block reads with bogus length
i2c: ismt: Don't duplicate the receive length for block reads
irqchip: mips-gic: SYNC after enabling GIC region
Linux 4.4.86
drm/i915: fix compiler warning in drivers/gpu/drm/i915/intel_uncore.c
scsi: sg: reset 'res_in_use' after unlinking reserved array
scsi: sg: protect accesses to 'reserved' page array
arm64: fpsimd: Prevent registers leaking across exec
x86/io: Add "memory" clobber to insb/insw/insl/outsb/outsw/outsl
arm64: mm: abort uaccess retries upon fatal signal
lpfc: Fix Device discovery failures during switch reboot test.
p54: memset(0) whole array
lightnvm: initialize ppa_addr in dev_to_generic_addr()
gcov: support GCC 7.1
gcov: add support for gcc version >= 6
i2c: jz4780: drop superfluous init
btrfs: remove duplicate const specifier
ALSA: au88x0: Fix zero clear of stream->resources
scsi: isci: avoid array subscript warning
Linux 4.4.85
ACPI / APEI: Add missing synchronize_rcu() on NOTIFY_SCI removal
ACPI: ioapic: Clear on-stack resource before using it
ntb_transport: fix bug calculating num_qps_mw
ntb_transport: fix qp count bug
ASoC: rsnd: don't call update callback if it was NULL
ASoC: rsnd: ssi: 24bit data needs right-aligned settings
ASoC: rsnd: Add missing initialization of ADG req_rate
ASoC: rsnd: avoid pointless loop in rsnd_mod_interrupt()
ASoC: rsnd: disable SRC.out only when stop timing
ASoC: simple-card: don't fail if sysclk setting is not supported
staging: rtl8188eu: add RNX-N150NUB support
iio: hid-sensor-trigger: Fix the race with user space powering up sensors
iio: imu: adis16480: Fix acceleration scale factor for adis16480
ANDROID: binder: fix proc->tsk check.
binder: Use wake up hint for synchronous transactions.
binder: use group leader instead of open thread
Bluetooth: bnep: fix possible might sleep error in bnep_session
Bluetooth: cmtp: fix possible might sleep error in cmtp_session
Bluetooth: hidp: fix possible might sleep error in hidp_session_thread
perf/core: Fix group {cpu,task} validation
nfsd: Limit end of page list when decoding NFSv4 WRITE
cifs: return ENAMETOOLONG for overlong names in cifs_open()/cifs_lookup()
cifs: Fix df output for users with quota limits
tracing: Fix freeing of filter in create_filter() when set_str is false
drm: rcar-du: Fix H/V sync signal polarity configuration
drm: rcar-du: Fix display timing controller parameter
drm: rcar-du: Fix crash in encoder failure error path
drm: rcar-du: lvds: Rename PLLEN bit to PLLON
drm: rcar-du: lvds: Fix PLL frequency-related configuration
drm/atomic: If the atomic check fails, return its value first
drm: Release driver tracking before making the object available again
i2c: designware: Fix system suspend
ARCv2: PAE40: Explicitly set MSB counterpart of SLC region ops addresses
ALSA: hda - Add stereo mic quirk for Lenovo G50-70 (17aa:3978)
ALSA: core: Fix unexpected error at replacing user TLV
Input: elan_i2c - add ELAN0602 ACPI ID to support Lenovo Yoga310
Input: trackpoint - add new trackpoint firmware ID
mei: me: add lewisburg device ids
mei: me: add broxton pci device ids
net_sched: fix order of queue length updates in qdisc_replace()
net: sched: fix NULL pointer dereference when action calls some targets
irda: do not leak initialized list.dev to userspace
tcp: when rearming RTO, if RTO time is in past then fire RTO ASAP
ipv6: repair fib6 tree in failure case
ipv6: reset fn->rr_ptr when replacing route
tipc: fix use-after-free
sctp: fully initialize the IPv6 address in sctp_v6_to_addr()
ipv4: better IP_MAX_MTU enforcement
net_sched/sfq: update hierarchical backlog when drop packet
ipv4: fix NULL dereference in free_fib_info_rcu()
dccp: defer ccid_hc_tx_delete() at dismantle time
dccp: purge write queue in dccp_destroy_sock()
af_key: do not use GFP_KERNEL in atomic contexts
Linux 4.4.84
usb: qmi_wwan: add D-Link DWM-222 device ID
usb: optimize acpi companion search for usb port devices
perf/x86: Fix LBR related crashes on Intel Atom
pids: make task_tgid_nr_ns() safe
Sanitize 'move_pages()' permission checks
irqchip/atmel-aic: Fix unbalanced refcount in aic_common_rtc_irq_fixup()
irqchip/atmel-aic: Fix unbalanced of_node_put() in aic_common_irq_fixup()
x86/asm/64: Clear AC on NMI entries
xen: fix bio vec merging
mm: revert x86_64 and arm64 ELF_ET_DYN_BASE base changes
mm/mempolicy: fix use after free when calling get_mempolicy
ALSA: usb-audio: Add mute TLV for playback volumes on C-Media devices
ALSA: usb-audio: Apply sample rate quirk to Sennheiser headset
ALSA: seq: 2nd attempt at fixing race creating a queue
Input: elan_i2c - Add antoher Lenovo ACPI ID for upcoming Lenovo NB
Input: elan_i2c - add ELAN0608 to the ACPI table
crypto: x86/sha1 - Fix reads beyond the number of blocks passed
parisc: pci memory bar assignment fails with 64bit kernels on dino/cujo
audit: Fix use after free in audit_remove_watch_rule()
netfilter: nf_ct_ext: fix possible panic after nf_ct_extend_unregister
Linux 4.4.83
pinctrl: samsung: Remove bogus irq_[un]mask from resource management
pinctrl: sunxi: add a missing function of A10/A20 pinctrl driver
pnfs/blocklayout: require 64-bit sector_t
iio: adc: vf610_adc: Fix VALT selection value for REFSEL bits
usb:xhci:Add quirk for Certain failing HP keyboard on reset after resume
usb: quirks: Add no-lpm quirk for Moshi USB to Ethernet Adapter
usb: core: unlink urbs from the tail of the endpoint's urb_list
USB: Check for dropped connection before switching to full speed
uas: Add US_FL_IGNORE_RESIDUE for Initio Corporation INIC-3069
iio: light: tsl2563: use correct event code
iio: accel: bmc150: Always restore device to normal mode after suspend-resume
staging:iio:resolver:ad2s1210 fix negative IIO_ANGL_VEL read
USB: hcd: Mark secondary HCD as dead if the primary one died
usb: musb: fix tx fifo flush handling again
USB: serial: pl2303: add new ATEN device id
USB: serial: cp210x: add support for Qivicon USB ZigBee dongle
USB: serial: option: add D-Link DWM-222 device ID
nfs/flexfiles: fix leak of nfs4_ff_ds_version arrays
fuse: initialize the flock flag in fuse_file on allocation
iscsi-target: Fix iscsi_np reset hung task during parallel delete
iscsi-target: fix memory leak in iscsit_setup_text_cmd()
mm: ratelimit PFNs busy info message
cpuset: fix a deadlock due to incomplete patching of cpusets_enabled()
Linux 4.4.82
net: account for current skb length when deciding about UFO
ipv4: Should use consistent conditional judgement for ip fragment in __ip_append_data and ip_finish_output
mm/mempool: avoid KASAN marking mempool poison checks as use-after-free
KVM: arm/arm64: Handle hva aging while destroying the vm
sparc64: Prevent perf from running during super critical sections
udp: consistently apply ufo or fragmentation
revert "ipv4: Should use consistent conditional judgement for ip fragment in __ip_append_data and ip_finish_output"
revert "net: account for current skb length when deciding about UFO"
packet: fix tp_reserve race in packet_set_ring
net: avoid skb_warn_bad_offload false positives on UFO
tcp: fastopen: tcp_connect() must refresh the route
net: sched: set xt_tgchk_param par.nft_compat as 0 in ipt_init_target
bpf, s390: fix jit branch offset related to ldimm64
net: fix keepalive code vs TCP_FASTOPEN_CONNECT
tcp: avoid setting cwnd to invalid ssthresh after cwnd reduction states
Linux 4.4.81
workqueue: implicit ordered attribute should be overridable
net: account for current skb length when deciding about UFO
ipv4: Should use consistent conditional judgement for ip fragment in __ip_append_data and ip_finish_output
mm: don't dereference struct page fields of invalid pages
signal: protect SIGNAL_UNKILLABLE from unintentional clearing.
lib/Kconfig.debug: fix frv build failure
mm, slab: make sure that KMALLOC_MAX_SIZE will fit into MAX_ORDER
ARM: 8632/1: ftrace: fix syscall name matching
virtio_blk: fix panic in initialization error path
drm/virtio: fix framebuffer sparse warning
scsi: qla2xxx: Get mutex lock before checking optrom_state
phy state machine: failsafe leave invalid RUNNING state
x86/boot: Add missing declaration of string functions
tg3: Fix race condition in tg3_get_stats64().
net: phy: dp83867: fix irq generation
sh_eth: R8A7740 supports packet shecksumming
wext: handle NULL extra data in iwe_stream_add_point better
sparc64: Measure receiver forward progress to avoid send mondo timeout
xen-netback: correctly schedule rate-limited queues
net: phy: Fix PHY unbind crash
net: phy: Correctly process PHY_HALTED in phy_stop_machine()
net/mlx5: Fix command bad flow on command entry allocation failure
sctp: fix the check for _sctp_walk_params and _sctp_walk_errors
sctp: don't dereference ptr before leaving _sctp_walk_{params, errors}()
dccp: fix a memleak for dccp_feat_init err process
dccp: fix a memleak that dccp_ipv4 doesn't put reqsk properly
dccp: fix a memleak that dccp_ipv6 doesn't put reqsk properly
net: ethernet: nb8800: Handle all 4 RGMII modes identically
ipv6: Don't increase IPSTATS_MIB_FRAGFAILS twice in ip6_fragment()
packet: fix use-after-free in prb_retire_rx_blk_timer_expired()
openvswitch: fix potential out of bound access in parse_ct
mcs7780: Fix initialization when CONFIG_VMAP_STACK is enabled
rtnetlink: allocate more memory for dev_set_mac_address()
ipv4: initialize fib_trie prior to register_netdev_notifier call.
ipv6: avoid overflow of offset in ip6_find_1stfragopt
net: Zero terminate ifr_name in dev_ifname().
ipv4: ipv6: initialize treq->txhash in cookie_v[46]_check()
saa7164: fix double fetch PCIe access condition
drm: rcar-du: fix backport bug
f2fs: sanity check checkpoint segno and blkoff
media: lirc: LIRC_GET_REC_RESOLUTION should return microseconds
mm, mprotect: flush TLB if potentially racing with a parallel reclaim leaving stale TLB entries
iser-target: Avoid isert_conn->cm_id dereference in isert_login_recv_done
iscsi-target: Fix delayed logout processing greater than SECONDS_FOR_LOGOUT_COMP
iscsi-target: Fix initial login PDU asynchronous socket close OOPs
iscsi-target: Fix early sk_data_ready LOGIN_FLAGS_READY race
iscsi-target: Always wait for kthread_should_stop() before kthread exit
target: Avoid mappedlun symlink creation during lun shutdown
media: platform: davinci: return -EINVAL for VPFE_CMD_S_CCDC_RAW_PARAMS ioctl
ARM: dts: armada-38x: Fix irq type for pca955
ext4: fix overflow caused by missing cast in ext4_resize_fs()
ext4: fix SEEK_HOLE/SEEK_DATA for blocksize < pagesize
mm/page_alloc: Remove kernel address exposure in free_reserved_area()
KVM: async_pf: make rcu irq exit if not triggered from idle task
ASoC: do not close shared backend dailink
ALSA: hda - Fix speaker output from VAIO VPCL14M1R
workqueue: restore WQ_UNBOUND/max_active==1 to be ordered
libata: array underflow in ata_find_dev()
Bug: 62730977
Change-Id: I08905b35c8abf614055051b789f2114c2157dab9
Signed-off-by: Thierry Strudel <tstrudel@google.com>
|
||
|
|
dfff30bca9 |
Merge 4.4.81 into android-4.4
Changes in 4.4.81
libata: array underflow in ata_find_dev()
workqueue: restore WQ_UNBOUND/max_active==1 to be ordered
ALSA: hda - Fix speaker output from VAIO VPCL14M1R
ASoC: do not close shared backend dailink
KVM: async_pf: make rcu irq exit if not triggered from idle task
mm/page_alloc: Remove kernel address exposure in free_reserved_area()
ext4: fix SEEK_HOLE/SEEK_DATA for blocksize < pagesize
ext4: fix overflow caused by missing cast in ext4_resize_fs()
ARM: dts: armada-38x: Fix irq type for pca955
media: platform: davinci: return -EINVAL for VPFE_CMD_S_CCDC_RAW_PARAMS ioctl
target: Avoid mappedlun symlink creation during lun shutdown
iscsi-target: Always wait for kthread_should_stop() before kthread exit
iscsi-target: Fix early sk_data_ready LOGIN_FLAGS_READY race
iscsi-target: Fix initial login PDU asynchronous socket close OOPs
iscsi-target: Fix delayed logout processing greater than SECONDS_FOR_LOGOUT_COMP
iser-target: Avoid isert_conn->cm_id dereference in isert_login_recv_done
mm, mprotect: flush TLB if potentially racing with a parallel reclaim leaving stale TLB entries
media: lirc: LIRC_GET_REC_RESOLUTION should return microseconds
f2fs: sanity check checkpoint segno and blkoff
drm: rcar-du: fix backport bug
saa7164: fix double fetch PCIe access condition
ipv4: ipv6: initialize treq->txhash in cookie_v[46]_check()
net: Zero terminate ifr_name in dev_ifname().
ipv6: avoid overflow of offset in ip6_find_1stfragopt
ipv4: initialize fib_trie prior to register_netdev_notifier call.
rtnetlink: allocate more memory for dev_set_mac_address()
mcs7780: Fix initialization when CONFIG_VMAP_STACK is enabled
openvswitch: fix potential out of bound access in parse_ct
packet: fix use-after-free in prb_retire_rx_blk_timer_expired()
ipv6: Don't increase IPSTATS_MIB_FRAGFAILS twice in ip6_fragment()
net: ethernet: nb8800: Handle all 4 RGMII modes identically
dccp: fix a memleak that dccp_ipv6 doesn't put reqsk properly
dccp: fix a memleak that dccp_ipv4 doesn't put reqsk properly
dccp: fix a memleak for dccp_feat_init err process
sctp: don't dereference ptr before leaving _sctp_walk_{params, errors}()
sctp: fix the check for _sctp_walk_params and _sctp_walk_errors
net/mlx5: Fix command bad flow on command entry allocation failure
net: phy: Correctly process PHY_HALTED in phy_stop_machine()
net: phy: Fix PHY unbind crash
xen-netback: correctly schedule rate-limited queues
sparc64: Measure receiver forward progress to avoid send mondo timeout
wext: handle NULL extra data in iwe_stream_add_point better
sh_eth: R8A7740 supports packet shecksumming
net: phy: dp83867: fix irq generation
tg3: Fix race condition in tg3_get_stats64().
x86/boot: Add missing declaration of string functions
phy state machine: failsafe leave invalid RUNNING state
scsi: qla2xxx: Get mutex lock before checking optrom_state
drm/virtio: fix framebuffer sparse warning
virtio_blk: fix panic in initialization error path
ARM: 8632/1: ftrace: fix syscall name matching
mm, slab: make sure that KMALLOC_MAX_SIZE will fit into MAX_ORDER
lib/Kconfig.debug: fix frv build failure
signal: protect SIGNAL_UNKILLABLE from unintentional clearing.
mm: don't dereference struct page fields of invalid pages
ipv4: Should use consistent conditional judgement for ip fragment in __ip_append_data and ip_finish_output
net: account for current skb length when deciding about UFO
workqueue: implicit ordered attribute should be overridable
Linux 4.4.81
Signed-off-by: Greg Kroah-Hartman <gregkh@google.com>
|
||
|
|
623f4fcd94 |
lib/Kconfig.debug: fix frv build failure
[ Upstream commit da0510c47519fe0999cffe316e1d370e29f952be ] The build of frv allmodconfig was failing with the errors like: /tmp/cc0JSPc3.s: Assembler messages: /tmp/cc0JSPc3.s:1839: Error: symbol `.LSLT0' is already defined /tmp/cc0JSPc3.s:1842: Error: symbol `.LASLTP0' is already defined /tmp/cc0JSPc3.s:1969: Error: symbol `.LELTP0' is already defined /tmp/cc0JSPc3.s:1970: Error: symbol `.LELT0' is already defined Commit |
||
|
|
0d6871912b |
ANDROID: kernel: printk: Add cpu and pid to printk log prefix
Add CPU number and process ID to printk log messages. This information
is useful to get a timeline of what was running on a CPU before a
watchdog.
Based on commit bf1f48d03d41 ("kernel: printk: Add cpu and pid into log prefix")
from android-msm-marlin-3.18.
Bug: 62670012
Change-Id: I7c0119f22db08638f4da102927215bbe03120b3f
Signed-off-by: Siqi Lin <siqilin@google.com>
|
||
|
|
1bfb0526f6 |
Merge branch 'android-msm-8998-4.4-common' into android-msm-wahoo-4.4
Conflicts: Makefile arch/arm64/configs/wahoo_defconfig arch/arm64/include/asm/cpufeature.h arch/arm64/kernel/sleep.S arch/arm64/kernel/vmlinux.lds.S arch/arm64/mm/fault.c drivers/android/binder.c drivers/firmware/efi/arm-init.c drivers/firmware/efi/efi.c drivers/input/keyboard/gpio_keys.c drivers/input/misc/Makefile drivers/input/misc/vl53L0/Makefile drivers/input/misc/vl53L0/inc/vl53l010_api.h drivers/input/misc/vl53L0/inc/vl53l010_device.h drivers/input/misc/vl53L0/inc/vl53l010_strings.h drivers/input/misc/vl53L0/inc/vl53l010_tuning.h drivers/input/misc/vl53L0/inc/vl53l0_api.h drivers/input/misc/vl53L0/inc/vl53l0_api_calibration.h drivers/input/misc/vl53L0/inc/vl53l0_api_core.h drivers/input/misc/vl53L0/inc/vl53l0_api_histogram.h drivers/input/misc/vl53L0/inc/vl53l0_api_ranging.h drivers/input/misc/vl53L0/inc/vl53l0_api_strings.h drivers/input/misc/vl53L0/inc/vl53l0_def.h drivers/input/misc/vl53L0/inc/vl53l0_device.h drivers/input/misc/vl53L0/inc/vl53l0_interrupt_threshold_settings.h drivers/input/misc/vl53L0/inc/vl53l0_platform.h drivers/input/misc/vl53L0/inc/vl53l0_platform_log.h drivers/input/misc/vl53L0/inc/vl53l0_tuning.h drivers/input/misc/vl53L0/inc/vl53l0_types.h drivers/input/misc/vl53L0/src/vl53l010_api.c drivers/input/misc/vl53L0/src/vl53l010_tuning.c drivers/input/misc/vl53L0/src/vl53l0_api.c drivers/input/misc/vl53L0/src/vl53l0_api_calibration.c drivers/input/misc/vl53L0/src/vl53l0_api_core.c drivers/input/misc/vl53L0/src/vl53l0_api_histogram.c drivers/input/misc/vl53L0/src/vl53l0_api_ranging.c drivers/input/misc/vl53L0/src/vl53l0_api_strings.c drivers/input/misc/vl53L0/src/vl53l0_i2c_platform.c drivers/input/misc/vl53L0/src/vl53l0_platform.c drivers/input/misc/vl53L0/src/vl53l0_port_i2c.c drivers/input/misc/vl53L0/stmvl53l0-cci.h drivers/input/misc/vl53L0/stmvl53l0-i2c.h drivers/input/misc/vl53L0/stmvl53l0.h drivers/input/misc/vl53L0/stmvl53l0_module-cci.c drivers/input/misc/vl53L0/stmvl53l0_module-i2c.c drivers/input/misc/vl53L0/stmvl53l0_module.c drivers/input/touchscreen/Makefile drivers/leds/leds-qpnp.c drivers/media/platform/msm/camera_v2/isp/msm_isp_stats_util.c drivers/media/platform/msm/camera_v2/msm.c drivers/pinctrl/qcom/pinctrl-msm.c drivers/platform/msm/ipa/ipa_v3/ipa_client.c drivers/platform/msm/mhi/mhi_ssr.c drivers/power/supply/qcom/qpnp-smb2.c drivers/power/supply/qcom/smb-lib.c drivers/power/supply/qcom/smb-lib.h drivers/soc/qcom/icnss.c drivers/soc/qcom/qdsp6v2/audio_notifier.c drivers/soc/qcom/service-notifier.c drivers/video/fbdev/msm/mdss_panel.h fs/exec.c fs/ext4/inode.c fs/ext4/readpage.c fs/namei.c fs/sdcardfs/derived_perm.c fs/sdcardfs/file.c fs/sdcardfs/inode.c fs/sdcardfs/lookup.c fs/sdcardfs/main.c fs/sdcardfs/multiuser.h fs/sdcardfs/packagelist.c fs/sdcardfs/sdcardfs.h fs/sdcardfs/super.c fs/utimes.c include/linux/string.h lib/kstrtox.c lib/string.c net/ipv4/tcp_ipv4.c net/unix/af_unix.c sound/soc/codecs/wcd934x/wcd934x-mbhc.h sound/soc/msm/msm8998.c Change-Id: I918ebad22a5f81d48be07bd2bc2ac435ed9acb0a Signed-off-by: Thierry Strudel <tstrudel@google.com> |
||
|
|
ab757a987a |
Merge branch 'android-msm-8998-4.4' into android-msm-8998-4.4-common
Conflicts: Documentation/scheduler/sched-hmp.txt drivers/base/cpu.c include/linux/cgroup-defs.h include/linux/cgroup.h include/trace/events/sched.h kernel/cgroup.c kernel/cpuset.c kernel/sched/core.c kernel/sched/core_ctl.c kernel/sched/fair.c kernel/sched/hmp.c kernel/sched/rt.c kernel/sched/tune.c kernel/sysctl.c Test: builds for msmcortex_defconfig Change-Id: I82e0a13c9ca21d5f52cdbe52a2add501c1fca05d Signed-off-by: Thierry Strudel <tstrudel@google.com> |
||
|
|
4f659aa55e |
rcu: Induce msm watchdog bite for rcu stalls
Every RCU stall need to be debugged, So collect the ram dumps on every RCU stall to debug further by inducing non secure watchdog bite whenever rcu stall detected. Change-Id: I6c1cfddc92f06b48c3f22fe9970b70f2ec670bf6 Signed-off-by: Prasad Sodagudi <psodagud@codeaurora.org> |
||
|
|
18f26a64a2 |
kernel: Add CC_WERROR config to turn warnings into errors
Add configuration option CONFIG_CC_WERROR to prevent warnings from creeping in. Signed-off-by: Chris Fries <cfries@google.com> |
||
|
|
ac087abe13 |
Merge android-msm-8998-4.4-common into android-msm-muskie-4.4
Add and enable EAS support by bringing remote tracking branch android-msm-8998-4.4-common in kernel/private/msm-qcom into branch android-msm-muskie-4.4 Manual merges: arch/arm/boot/dts/qcom/msm8998.dtsi (from msmcobalt.dtsi in android-msm-8998-4.4-common) arch/arm64/configs/muskie_defconfig (from msmcobalt_defconfig in android-msm-8998-4.4-common) include/linux/cpu.h (taken from android-msm-muskie-4.4) drivers/staging/qca-wifi-host-cmn/hif/src/hif_napi.c (remove core_ctl_set_boost calls) Change-Id: I8e0dd7233d4ab7122d5e3d7b5c8d5fc42165a494 Signed-off-by: Andres Oportus <andresoportus@google.com> |
||
|
|
53b8336401 |
UPSTREAM: kernel: add kcov code coverage
kcov provides code coverage collection for coverage-guided fuzzing (randomized testing). Coverage-guided fuzzing is a testing technique that uses coverage feedback to determine new interesting inputs to a system. A notable user-space example is AFL (http://lcamtuf.coredump.cx/afl/). However, this technique is not widely used for kernel testing due to missing compiler and kernel support. kcov does not aim to collect as much coverage as possible. It aims to collect more or less stable coverage that is function of syscall inputs. To achieve this goal it does not collect coverage in soft/hard interrupts and instrumentation of some inherently non-deterministic or non-interesting parts of kernel is disbled (e.g. scheduler, locking). Currently there is a single coverage collection mode (tracing), but the API anticipates additional collection modes. Initially I also implemented a second mode which exposes coverage in a fixed-size hash table of counters (what Quentin used in his original patch). I've dropped the second mode for simplicity. This patch adds the necessary support on kernel side. The complimentary compiler support was added in gcc revision 231296. We've used this support to build syzkaller system call fuzzer, which has found 90 kernel bugs in just 2 months: https://github.com/google/syzkaller/wiki/Found-Bugs We've also found 30+ bugs in our internal systems with syzkaller. Another (yet unexplored) direction where kcov coverage would greatly help is more traditional "blob mutation". For example, mounting a random blob as a filesystem, or receiving a random blob over wire. Why not gcov. Typical fuzzing loop looks as follows: (1) reset coverage, (2) execute a bit of code, (3) collect coverage, repeat. A typical coverage can be just a dozen of basic blocks (e.g. an invalid input). In such context gcov becomes prohibitively expensive as reset/collect coverage steps depend on total number of basic blocks/edges in program (in case of kernel it is about 2M). Cost of kcov depends only on number of executed basic blocks/edges. On top of that, kernel requires per-thread coverage because there are always background threads and unrelated processes that also produce coverage. With inlined gcov instrumentation per-thread coverage is not possible. kcov exposes kernel PCs and control flow to user-space which is insecure. But debugfs should not be mapped as user accessible. Based on a patch by Quentin Casasnovas. [akpm@linux-foundation.org: make task_struct.kcov_mode have type `enum kcov_mode'] [akpm@linux-foundation.org: unbreak allmodconfig] [akpm@linux-foundation.org: follow x86 Makefile layout standards] Signed-off-by: Dmitry Vyukov <dvyukov@google.com> Reviewed-by: Kees Cook <keescook@chromium.org> Cc: syzkaller <syzkaller@googlegroups.com> Cc: Vegard Nossum <vegard.nossum@oracle.com> Cc: Catalin Marinas <catalin.marinas@arm.com> Cc: Tavis Ormandy <taviso@google.com> Cc: Will Deacon <will.deacon@arm.com> Cc: Quentin Casasnovas <quentin.casasnovas@oracle.com> Cc: Kostya Serebryany <kcc@google.com> Cc: Eric Dumazet <edumazet@google.com> Cc: Alexander Potapenko <glider@google.com> Cc: Kees Cook <keescook@google.com> Cc: Bjorn Helgaas <bhelgaas@google.com> Cc: Sasha Levin <sasha.levin@oracle.com> Cc: David Drysdale <drysdale@google.com> Cc: Ard Biesheuvel <ard.biesheuvel@linaro.org> Cc: Andrey Ryabinin <ryabinin.a.a@gmail.com> Cc: Kirill A. Shutemov <kirill@shutemov.name> Cc: Jiri Slaby <jslaby@suse.cz> Cc: Ingo Molnar <mingo@elte.hu> Cc: Thomas Gleixner <tglx@linutronix.de> Cc: "H. Peter Anvin" <hpa@zytor.com> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org> (cherry picked from commit 5c9a8750a6409c63a0f01d51a9024861022f6593) Signed-off-by: Alexander Potapenko <glider@google.com> Change-Id: Ia7d116ded35eb31a514406f864d7d591606c65f3 |
||
|
|
66ce6b8ab6 |
Revert HMP
Revert "sched/tune: add sysctl interface to define a boost value" Revert "sched: Initialize HMP stats inside init_sd_lb_stats()" Revert "sched: Fix integer overflow in sched_update_nr_prod()" Revert "sched: Add a device tree property to specify the sched boost type" Revert "sched: Add a stub function for init_clusters()" Revert "sched: add a knob to prefer the waker CPU for sync wakeups" Revert "sched: Fix a division by zero bug in scale_exec_time()" Revert "sched: Fix CPU selection when all online CPUs are isolated" Revert "sched: don't assume higher capacity means higher power in lb" Revert "sched/core_ctl: Integrate core control with cpu isolation" Revert "sched/core_ctl: Refactor cpu data" Revert "trace: Move core control trace events to scheduler" Revert "core_ctrl: Move core control into kernel" Revert "sched/core: Add trace point for cpu isolation" Revert "sched: add cpu isolation support" Revert "sched: constrain HMP scheduler tunable range with in better way" Revert "sched: panic on corrupted stack end" Revert "sched: Move data structures under CONFIG_SCHED_HMP" Revert "sched: Further re-factor HMP specific code" Revert "sched: Make use of sysctl_sched_wake_to_idle in select_best_cpu" Revert "sched: Introduce sched_freq_aggregate_threshold tunable" Revert "sched: handle frequency alert notifications better" Revert "sched: inherit the group id from the group leader" Revert "sched/fair: Add flag to indicate why we picked the CPU" Revert "sched: Move notify_migration() under CONFIG_SCHED_HMP" Revert "sched: Move most HMP specific code to a separate file." Revert "sched: Consolidate CONFIG_SCHED_HMP sections in various files" Revert "sched: Fix compile issues for !CONFIG_SCHED_HMP" Revert "sched: Remove all existence of CONFIG_SCHED_FREQ_INPUT" Revert "sched: Move CPU cstate tracking under CONFIG_SCHED_HMP" Revert "sched: Remove unused PELT extensions for HMP scheduling" Revert "sched: Remove unused migration notifier code." Revert "Revert "arm64: Add support for app specific settings"" Revert "sched/fair: Don't check for migration for a pinned task" Revert "sched/core: Fix uninitialized variable used for tracepoint" Revert "sched/core: Fix null-pointer dereference" Revert "sched: break the forever prev_cpu selection preference" Revert "sched: core: Fix possible hotplug race in set_cpus_allowed_ptr" Revert "sched: kill unnecessary divisions on fast path" Revert "sched: prevent race where update CPU cycles" Revert "sched: fix overflow in scaled execution time calculation" Revert "sched: remove unused parameter cpu from cpu_cycles_to_freq()" Revert "sched: avoid potential race between governor and thermal driver" Revert "sched: fix potential deflated frequency estimation during IRQ handling" Revert "sched: fix CPU frequency estimation while idle" Revert "sched: preserve CPU cycle counter in rq" Revert "arm64: Add support for app specific settings" Revert "Revert "sched: warn/panic upon excessive scheduling latency"" Revert "Revert "sched: add scheduling latency tracking procfs node"" Revert "sched: eliminate sched_early_detection_duration knob" Revert "sched: Remove the sched heavy task frequency guidance feature" Revert "sched: eliminate sched_migration_fixup knob" Revert "sched: eliminate sched_upmigrate_min_nice knob" Revert "sched: eliminate sched_enable_power_aware knob and parameter" Revert "sched: eliminate sched_freq_account_wait_time knob" Revert "sched: eliminate sched_account_wait_time knob" Revert "sched: Aggregate for frequency" Revert "sched: simplify CPU frequency estimation and cycle counter API" Revert "sched: use correct Kconfig macro name CONFIG_SCHED_HMP_CSTATE_AWARE" Revert "Revert "sched: set HMP scheduler's default initial task load to 100%"" Revert "watchdog: introduce touch_softlockup_watchdog_sched()" Revert "sched/cgroup: Fix/cleanup cgroup teardown/init" Revert "sched: take into account of limited CPU min and max frequencies" Revert "sched: add support for CPU frequency estimation with cycle counter" Revert "sched: revise sched_boost to make the best of big cluster CPUs" Revert "sched: fix excessive task packing where CONFIG_SCHED_HMP_CSTATE_AWARE=y" Revert "sched: add option whether CPU C-state is used to guide task placement" Revert "sched: update placement logic to prefer C-state and busier CPUs" Revert "sched: Optimize wakeup placement logic when need_idle is set" Revert "kernel: sched: Fix compilation issues for Usermode Linux" Revert "sched/cputime: Fix steal time accounting vs. CPU hotplug" Revert "sched/cputime: Fix steal_account_process_tick() to always return jiffies" Revert "sched: fix circular dependency of rq->lock and kswadp waitqueue lock" Revert "sched: move out migration notification out of spinlock" Revert "sched: fix compile failure with !CONFIG_SCHED_HMP" Revert "sched: restrict sync wakee placement bias with waker's demand" Revert "sched: add preference for waker cluster CPU in wakee task placement" Revert "sched/core: Add protection against null-pointer dereference" Revert "sched: allow select_prev_cpu_us to be set to values greater than 100us" Revert "sched: clean up idle task's mark_start restoring in init_idle()" Revert "sched: let sched_boost take precedence over sched_restrict_cluster_spill" Revert "sched: Add separate load tracking histogram to predict loads" Revert "sched: Provide a wake up API without sending freq notifications" Revert "sched: Take downmigrate threshold into consideration" Revert "sched: Provide a facility to restrict RT tasks to lower power cluster" Revert "sched: Take cluster's minimum power into account for optimizing sbc()" Revert "sched: Revise the inter cluster load balance restrictions" Revert "sched: colocate related threads" Revert "sched: Update fair and rt placement logic to use scheduler clusters" Revert "sched: Introduce the concept CPU clusters in the scheduler" Revert "sched: remove init_new_task_load from CONFIG_SMP" Revert "sched: Export sched_setscheduler_nocheck()" Revert "Revert "sched: Export sched_setscheduler_nocheck"" Revert "vmstat: make vmstat_updater deferrable again and shut down on idle" Revert "sched: fix compile failure where !CONFIG_SCHED_HMP" Revert "sched: select task's prev_cpu as the best CPU when it was chosen recently" Revert "sched: use ktime instead of sched_clock for load tracking" Revert "sched: Update min/max capacity for the CPUFREQ_CREATE_POLICY notifier" Revert "sched/cputime: fix a deadlock on 32bit systems" Revert "sched: Optimize scheduler trace events to reduce trace buffer usage" Revert "sched: initialize frequency domain cpumask" Revert "sched: print sched_task_load always" Revert "sched: add preference for prev and sibling CPU in RT task placement" Revert "sched: core: Don't use current task_cpu when migrating with stop_one_cpu" Revert "sched: Notify cpufreq governor early about potential big tasks" Revert "sched: Skip resetting HMP stats when max frequencies remain unchanged" Revert "sched: update sched_task_load trace event" Revert "sched: avoid unnecessary multiplication and division" Revert "sched: precompute required frequency for CPU load" Revert "sched: clean up fixup_hmp_sched_stats()" Revert "sched: account new task load so that governor can apply different policy" Revert "sched: Fix frequency change checks when affined tasks are migrating" Revert "sched: Add tunables for static cpu and cluster cost" Revert "sched/core: Add API to set cluster d-state" Revert "sched: take into account of governor's frequency max load" Revert "sched: set HMP scheduler's default initial task load to 100%" Revert "sched: add preference for prev and sibling CPU in HMP task placement" Revert "sched: Update task->on_rq when tasks are moving between runqueues" Revert "sched: remove temporary demand fixups in fixup_busy_time()" Revert "sched: add frequency zone awareness to the load balancer" Revert "sched: Update the wakeup placement logic for fair and rt tasks" Revert "sched: remove the notion of small tasks and small task packing" Revert "sched: Rework energy aware scheduling" Revert "sched: encourage idle load balance and discourage active load balance" Revert "sched: avoid stale cumulative_runnable_avg HMP statistics" Revert "sched: Add load based placement for RT tasks" Revert "sched: Avoid running idle_balance() consecutively" Revert "sched: inline function scale_load_to_cpu()" Revert "sched: look for least busy and fallback CPU only when it's needed" Revert "sched: iterate search CPUs starting from prev_cpu for optimization" Revert "sched: Optimize the select_best_cpu() "for" loop" Revert "sched: Optimize select_best_cpu() to reduce execution time" Revert "sched/debug: Add Kconfig to trigger panics on all 'BUG:' conditions" Revert "sched: fix incorrect prev_runnable_sum accounting with long ISR run" Revert "sched: prevent task migration while governor queries CPUs' load" Revert "sched: report loads greater than 100% only during load alert notifications" Revert "sched: turn off the TTWU_QUEUE feature" Revert "sched: avoid unnecessary HMP scheduler stat re-accounting" Revert "sched/fair: Fix capacity and nr_run comparisons in can_migrate_task()" Revert "Revert "sched: Use only partial wait time as task demand"" Revert "sched/deadline: Add basic HMP extensions" Revert "sched: Fix racy invocation of fixup_busy_time via move_queued_task" Revert "sched: don't inflate the task load when the CPU max freq is restricted" Revert "sched: auto adjust the upmigrate and downmigrate thresholds" Revert "sched: don't inherit initial task load from the parent" Revert "sched/fair: Add irq load awareness to the tick CPU selection logic" Revert "sched: disable IRQs in update_min_max_capacity" Revert "sched: Use only partial wait time as task demand" Revert "sched: fix race conditions where HMP tunables change" Revert "sched: check HMP scheduler tunables validity" Revert "sched: Update max_capacity when an entire cluster is hotplugged" Revert "sched: Ensure attempting load balance when HMP active balance flags are set" Revert "sched: add scheduling latency tracking procfs node" Revert "sched: warn/panic upon excessive scheduling latency" Revert "sched/core: Fix incorrect wait time and wait count statistics" Revert "sched: Update cur_freq in the cpufreq policy notifier callback" Revert "sched: avoid CPUs with high irq activity for non-small tasks" Revert "sched: actively migrate big tasks on power CPU to idle performance CPU" Revert "sched: Add cgroup-based criteria for upmigration" Revert "sched: avoid running idle_balance() on behalf of wrong CPU" Revert "sched: Keep track of average nr_big_tasks" Revert "sched: Fix bug in average nr_running and nr_iowait calculation" Revert "sched: Avoid pulling all tasks from a CPU during load balance" Revert "sched: Avoid pulling big tasks to the little cluster during load balance" Revert "sched: fix rounding error on scaled execution time calculation" Revert "sched/fair: Respect wake to idle over sync wakeup" Revert "sched: Support CFS_BANDWIDTH feature in HMP scheduler" Revert "sched: Consolidate hmp stats into their own struct" Revert "sched: Add userspace interface to set PF_WAKE_UP_IDLE" Revert "sched_avg: add run queue averaging" Revert "sched: add sched feature FORCE_CPU_THROTTLING_IMMINENT" Revert "sched: continue to search less power efficient cpu for load balancer" Revert "sched: Update cur_freq for offline CPUs in notifier callback" Revert "sched: Fix overflow in max possible capacity calculation" Revert "sched: add preference for prev_cpu in HMP task placement" Revert "sched: Per-cpu prefer_idle flag" Revert "sched: Consider PF_WAKE_UP_IDLE in select_best_cpu()" Revert "sched: Add sysctl to enable power aware scheduling" Revert "sched: Ensure no active EA migration occurs when EA is disabled" Revert "sched: take account of irq preemption when calculating irqload delta" Revert "sched: Prevent race conditions where upmigrate_min_nice changes" Revert "sched: Avoid frequent task migration due to EA in lb" Revert "sched: Avoid migrating tasks to little cores due to EA" Revert "sched: Add temperature to cpu_load trace point" Revert "sched: Only do EA migration when CPU throttling is imminent" Revert "sched: Avoid frequent migration of running task" Revert "sched: treat sync waker CPUs with 1 task as idle" Revert "sched: extend sched_task_load tracepoint to indicate prefer_idle" Revert "sched: extend sched_task_load tracepoint to indicate sync wakeup" Revert "sched: add sync wakeup recognition in select_best_cpu" Revert "sched: Provide knob to prefer mostly_idle over idle cpus" Revert "sched: make sched_cpu_high_irqload a runtime tunable" Revert "sched: trace: extend sched_cpu_load to print irqload" Revert "sched: avoid CPUs with high irq activity" Revert "sched: refresh sched_clock() after acquiring rq lock in irq path" Revert "sched: track soft/hard irqload per-RQ with decaying avg" Revert "sched: do not set window until sched_clock is fully initialized" Revert "sched: Make RT tasks eligible for boost" Revert "sched: Limit LBF_PWR_ACTIVE_BALANCE to within cluster" Revert "sched: Packing support until a frequency threshold" Revert "sched: tighten up jiffy to sched_clock mapping" Revert "sched: Avoid unnecessary load balance when tasks don't fit on dst_cpu" Revert "sched: print sched_cpu_load tracepoint for all CPUs" Revert "sched: per-cpu mostly_idle threshold" Revert "sched: Add API to set task's initial task load" Revert "sched: use C-states in non-small task wakeup placement logic" Revert "sched: take rq lock prior to saving idle task's mark_start" Revert "sched: update governor notification logic" Revert "sched: window-stats: Retain idle thread's mark_start" Revert "sched: Add checks for frequency change" Revert "sched: Use absolute scale for notifying governor" Revert "sched: window-stats: Enhance cpu busy time accounting" Revert "sched: window-stats: ftrace event improvements" Revert "sched: improve logic for alerting governor" Revert "sched: Stop task migration to busy CPUs due to power active balance" Revert "sched: window-stats: Fix accounting bug in legacy mode" Revert "sched: window-stats: Note legacy mode in fork() and exit()" Revert "sched: Fix reference to stale task_struct in try_to_wake_up()" Revert "sched: Remove hack to enable/disable HMP scheduling extensions" Revert "sched: fix wrong load_scale_factor/capacity/nr_big/small_tasks" Revert "sched: add check for cpu idleness when using C-state information" Revert "sched: extend sched_task_load tracepoint to indicate small tasks" Revert "sched: Add C-state tracking to the sched_cpu_load trace event" Revert "sched: window-stats: add a new AVG policy" Revert "sched: Fix compile error" Revert "sched: update ld_moved for active balance from the load balancer" Revert "sched: actively migrate tasks to idle big CPUs during sched boost" Revert "sched: always do idle balance with a NEWLY_IDLE idle environment" Revert "sched: fix bail condition in bail_inter_cluster_balance()" Revert "sched: Initialize env->loop variable to 0" Revert "sched: window-stats: use policy_mutex in sched_set_window()" Revert "sched: window-stats: Avoid taking all cpu's rq->lock for long" Revert "sched: window_stats: Add "disable" mode support" Revert "sched: window-stats: Fix exit race" Revert "sched: window-stats: code cleanup" Revert "sched: window-stats: legacy mode" Revert "sched: window-stats: Code cleanup" Revert "sched: window-stats: Code cleanup" Revert "sched: window-stats: Code cleanup" Revert "sched: window-stats: Remove unused prev_window variable" Revert "sched: disable frequency notifications by default" Revert "sched: fix misalignment between requested and actual windows" Revert "sched: Make RAVG_HIST_SIZE tunable" Revert "sched: Fix possibility of "stuck" reserved flag" Revert "sched: initialize env->flags variable to 0" Revert "sched: window-stats: 64-bit type for curr/prev_runnable_sum" Revert "sched: window-stats: Allow acct_wait_time to be tuned" Revert "sched: window-stats: Account interrupt handling time as busy time" Revert "sched: window-stats: Account idle time as busy time" Revert "sched: window-stats: Account wait time" Revert "sched: window-stats: update task demand on tick" Revert "sched: Fix herding issue" Revert "sched: window-stats: print window size in /proc/sched_debug" Revert "sched: Extend ftrace event to record boost and reason code" Revert "sched: Avoid needless migration" Revert "sched: Drop active balance request upon cpu going offline" Revert "sched: trigger immediate migration of tasks upon boost" Revert "sched: Extend boost benefit for small and low-prio tasks" Revert "sched: window-stats: Handle policy change properly" Revert "sched: window-stats: Reset all window stats" Revert "sched: window-stats: Additional error checking in sched_set_window()" Revert "sched: window-stats: Fix incorrect calculation of partial_demand" Revert "sched: window-stats: Fix potential wrong use of rq" Revert "sched: set initial task load to just above a small task" Revert "sched/fair: Check whether any CPUs are available" Revert "sched: enable hmp, power aware scheduling for targets with > 4 CPUs" Revert "sched: remove sysctl control for HMP and power-aware task placement" Revert "sched: support legacy mode better" Revert "sched: code cleanup" Revert "sched: Add BUG_ON when task_cpu() is incorrect" Revert "sched: avoid active migration of tasks not in TASK_RUNNING state" Revert "sched: fix up task load during migration" Revert "sched: avoid pushing tasks to an offline CPU" Revert "sched: Add a per rq max_possible_capacity for use in power calculations" Revert "sched: Disable interrupts when holding the rq lock in sched_get_busy()" Revert "sched: Make wallclock more accurate" Revert "sched: Make task and CPU load calculations safe from truncation" Revert "sched/fair: Introduce C-state aware task placement for small tasks" Revert "sched/fair: Introduce scheduler boost for low latency workloads" Revert "sched: Move call to trace_sched_cpu_load()" Revert "sched: fair: Reset balance_interval before sending NOHZ kick" Revert "sched: Avoid active migration of small tasks" Revert "sched: Account for cpu's current frequency when calculating its power cost" Revert "sched: make sched_set_window() return failure when PELT is in use" Revert "sched: debug: Print additional information in /proc/sched_debug" Revert "sched: Move around code" Revert "sched: Update capacity of all online cpus when min_max_freq changes" Revert "sched: update task statistics when CPU frequency changes" Revert "sched: Add new trace events" Revert "sched: do not balance on exec if SCHED_HMP" Revert "sched: Use historical load for freq governor input" Revert "sched: window-stats: apply scaling to full elapsed windows" Revert "sched: notify cpufreq on over/underprovisioned CPUs" Revert "sched: Introduce spill threshold tunables to manage overcommitment" Revert "sched: add affinity, task load information to sched tracepoints" Revert "sched: add migration load change notifier for frequency guidance" Revert "sched/fair: Limit MAX_PINNED_INTERVAL for more frequent load balancing" Revert "sched/fair: Help out higher capacity CPUs when they are overcommitted" Revert "sched/rt: Introduce power aware scheduling for real time tasks" Revert "sched: balance power inefficient CPUs with one task" Revert "sched: check for power inefficient task placement in tick" Revert "sched: do nohz load balancing in order of power efficiency" Revert "sched: run idle_balance() on most power-efficient CPU" Revert "sched: add hook for platform-specific CPU power information" Revert "sched: add power aware scheduling sysctl" Revert "sched: Extend update_task_ravg() to accept wallclock as argument" Revert "sched: add sched_get_busy, sched_set_window APIs" Revert "sched: window-stats: adjust RQ curr, prev sums on task migration" Revert "sched: window-stats: Add aggregated runqueue windowed stats" Revert "sched: window-stats: add prev_window counter per-task" Revert "sched: window-stats: synchronize windows across cpus" Revert "sched: window-stats: Do not account wait time" Revert "sched: window-stats: update during migration and earlier at wakeup" Revert "sched: move definition of update_task_ravg()" Revert "sched: Switch to windows based load stats by default" Revert "sched: Provide tunable to switch between PELT and window-based stats" Revert "sched: Provide scaled load information for tasks in /proc" Revert "sched: Add additional ftrace events" Revert "sched: Extend /proc/sched_debug with additional information" Revert "sched: Tighten controls for tasks spillover to idle cluster" Revert "sched: Track number of big and small tasks on a cpu" Revert "sched: Handle cpu-bound tasks stuck on wrong cpu" Revert "sched: Extend active balance to accept 'push_task' argument" Revert "sched: Send NOHZ kick to idle cpu in same cluster" Revert "sched: Basic task placement support for HMP systems" Revert "sched: Use rq->efficiency in scaling load stats" Revert "sched: Introduce efficiency, load_scale_factor and capacity" Revert "sched: Add CONFIG_SCHED_HMP Kconfig option" Revert "sched: Add scaled task load statistics" Revert "sched: Introduce CONFIG_SCHED_FREQ_INPUT" Revert "sched: window-based load stats improvements" Revert "sched: Add min_max_freq and rq->max_possible_freq" Revert "sched: move task load based functions" Revert "sched: fix race between try_to_wake_up() and move_task()" Revert "sched: Skip load update for idle task" Revert "sched: Window-based load stat improvements" Revert "sched: Call the notify_on_migrate notifier chain for wakeups as well" Revert "cpufreq: cpu-boost: Introduce scheduler assisted load based syncs" Revert "sched: window-based load stats for tasks" Revert "sched: Make scheduler aware of cpu frequency state" Revert "sched/debug: Make sysrq prints of sched debug data optional" Revert "tracing/sched: add load balancer tracepoint" Revert "sched: change WARN_ON_ONCE to printk_deferred() in try_to_wake_up_local()" Revert "tracing/sched: Track per-cpu rt and non-rt cpu_load." Revert "sched: re-calculate a cpu's next_balance point upon sched domain changes" Revert "sched: provide per cpu-cgroup option to notify on migrations" Revert "sched: Fix SCHED_HRTICK bug leading to late preemption of tasks" Revert "kernel: reduce sleep duration in wait_task_inactive" Revert "sched: add sysctl for controlling task migrations on wake" Revert "sched/rt: Add Kconfig option to enable panicking for RT throttling" Revert "sched/rt: print RT tasks when RT throttling is activated" Revert "sched: add PF_WAKE_UP_IDLE" Revert "sched: Make the scheduler aware of C-state for cpus" Revert "sched: Fix crash in sched_init_numa()" Revert "cpufreq: interactive: New 'interactive' governor" Revert "drivers: cpuidle: lpm-levels: Notify sched of idle state entry/exit" Revert "arm64: topology: Add support for topology DT bindings" Revert "clk: msm: clock-osm: register cycle counter callbacks with scheduler" Revert "arm64: fpsimd: Enable FP(floating-point) settings for msm8996" Documentation: remove sched-hmp and sched-zone docs sched: Add a set_wake_up_idle dummy implementation driver: thermal: remove call to sched defconfig: remove HMP related config Change-Id: Icfc908d8e5414499642c2dffb59a7d6496392b0d Signed-off-by: Andres Oportus <andresoportus@google.com> |
||
|
|
01ee295a4a |
lib: spinlock: Change MSM_WATCHDOG_V2 to QCOM_WATCHDOG_V2
Change DEBUG_SPINLOCK_BITE_ON_BUG to depend on QCOM_WATCHDOG_V2 instead of MSM_WATCHDOG_V2 as MSM_WATCHDOG_V2 is no longer used. CRs-Fixed: 1070295 Change-Id: I549abf9978a19da5bbd258d803287464cd73f23c Signed-off-by: Kyle Yan <kyan@codeaurora.org> |
||
|
|
341e02d8bb |
Merge remote-tracking branch 'linaro-ext/EAS/v4.4-easv5.2+aosp-changes' into android-4.4
Change-Id: Ic24b43ee867bc4f70b31bedaad734717b64b86a1 |
||
|
|
2a4445395f |
sched/rt: Add Kconfig option to enable panicking for RT throttling
This may be useful for detecting and debugging RT throttling issues. Change-Id: I5807a897d11997d76421c1fcaa2918aad988c6c9 Signed-off-by: Matt Wagantall <mattw@codeaurora.org> [rameezmustafa@codeaurora.org]: Port to msm-3.18] Signed-off-by: Syed Rameez Mustafa <rameezmustafa@codeaurora.org> [jstultz: forwardported to 4.4] Signed-off-by: John Stultz <john.stultz@linaro.org> |
||
|
|
e2b6ea208b |
workqueue: implement lockup detector
Workqueue stalls can happen from a variety of usage bugs such as
missing WQ_MEM_RECLAIM flag or concurrency managed work item
indefinitely staying RUNNING. These stalls can be extremely difficult
to hunt down because the usual warning mechanisms can't detect
workqueue stalls and the internal state is pretty opaque.
To alleviate the situation, this patch implements workqueue lockup
detector. It periodically monitors all worker_pools periodically and,
if any pool failed to make forward progress longer than the threshold
duration, triggers warning and dumps workqueue state as follows.
BUG: workqueue lockup - pool cpus=0 node=0 flags=0x0 nice=0 stuck for 31s!
Showing busy workqueues and worker pools:
workqueue events: flags=0x0
pwq 0: cpus=0 node=0 flags=0x0 nice=0 active=17/256
pending: monkey_wrench_fn, e1000_watchdog, cache_reap, vmstat_shepherd, release_one_tty, release_one_tty, release_one_tty, release_one_tty, release_one_tty, release_one_tty, release_one_tty, release_one_tty, release_one_tty, release_one_tty, release_one_tty, release_one_tty, cgroup_release_agent
workqueue events_power_efficient: flags=0x80
pwq 0: cpus=0 node=0 flags=0x0 nice=0 active=2/256
pending: check_lifetime, neigh_periodic_work
workqueue cgroup_pidlist_destroy: flags=0x0
pwq 0: cpus=0 node=0 flags=0x0 nice=0 active=1/1
pending: cgroup_pidlist_destroy_work_fn
...
The detection mechanism is controller through kernel parameter
workqueue.watchdog_thresh and can be updated at runtime through the
sysfs module parameter file.
v2: Decoupled from softlockup control knobs.
CRs-Fixed: 1007459
Change-Id: Id7dfbbd2701128a942b1bcac2299e07a66db8657
Signed-off-by: Tejun Heo <tj@kernel.org>
Acked-by: Don Zickus <dzickus@redhat.com>
Cc: Ulrich Obergfell <uobergfe@redhat.com>
Cc: Michal Hocko <mhocko@suse.com>
Cc: Chris Mason <clm@fb.com>
Cc: Andrew Morton <akpm@linux-foundation.org>
Git-commit: 82607adcf9cdf40fb7b5331269780c8f70ec6e35
Git-repo: git://git.kernel.org/cgit/linux/kernel/git/torvalds/linux.git
Signed-off-by: Trilok Soni <tsoni@codeaurora.org>
|
||
|
|
1ca0992ef1 |
lib: memtest: Add MEMTEST_ENABLE_DEFAULT option
As of now memtest remains disabled until we specify the patterns through the kernel command line. Some platforms have two different configurations files (one for debug and another for product) which can use the configuration option to enable the memtest by default (in the debug configuration file). CRs-Fixed: 1007344 Change-Id: I0bf7b33c3584f3d6cf5ef58dfe72be46212041da Signed-off-by: Trilok Soni <tsoni@codeaurora.org> |
||
|
|
bf6ceddd56 |
mm/page_owner: ask users about default setting of PAGE_OWNER
Since this commit
|
||
|
|
3bf4100be3 |
Revert "kernel: lib: allow larger stack frame size for KASan"
This reverts commit |
||
|
|
1dd9d8dd98 |
kmemleak : Make module scanning optional using config
Currently kmemleak scans module memory as provided in the area list. This takes up lot of time with irq's and preemption disabled. Provide a compile time configurable config to enable this functionality. Change-Id: I5117705e7e6726acdf492e7f87c0703bc1f28da0 Signed-off-by: Vignesh Radhakrishnan <vigneshr@codeaurora.org> Signed-off-by: Prasad Sodagudi <psodagud@codeaurora.org> [satyap: trivial merge conflict resolution and remove duplicate entry] Signed-off-by: Satya Durga Srinivasu Prabhala <satyap@codeaurora.org> |
||
|
|
61c44b5807 |
sched/debug: Add Kconfig to trigger panics on all 'BUG:' conditions
Introduce CONFIG_PANIC_ON_SCHED_BUG to trigger panics along with all 'BUG:' prints from the scheduler core, even potentially-recoverable ones such as scheduling while atomic, sleeping from invalid context, and detection of broken arch topologies. Change-Id: I5d2f561614604357a2bc7900b047e53b3a0b7c6d Signed-off-by: Matt Wagantall <mattw@codeaurora.org> [joonwoop@codeaurora.org: fixed trivial merge conflict in lib/Kconfig.debug.] Signed-off-by: Joonwoo Park <joonwoop@codeaurora.org> |
||
|
|
5f10bd75eb |
sched/debug: Make sysrq prints of sched debug data optional
Calls to sysrq_sched_debug_show() can yield rather verbose output which contributes to log spew and, under heavy load, may increase the chances of a watchdog bark. Make printing of this data optional with the introduction of a new Kconfig, CONFIG_SYSRQ_SCHED_DEBUG. Change-Id: I5f54d901d0dea403109f7ac33b8881d967a899ed Signed-off-by: Matt Wagantall <mattw@codeaurora.org> |
||
|
|
cc06d4a91d |
sched/rt: Add Kconfig option to enable panicking for RT throttling
This may be useful for detecting and debugging RT throttling issues. Change-Id: I5807a897d11997d76421c1fcaa2918aad988c6c9 Signed-off-by: Matt Wagantall <mattw@codeaurora.org> [rameezmustafa@codeaurora.org]: Port to msm-3.18] Signed-off-by: Syed Rameez Mustafa <rameezmustafa@codeaurora.org> [joonwoop@codeaurora.org: fixed conflict in lib/Kconfig.debug] Signed-off-by: Joonwoo Park <joonwoop@codeaurora.org> |
||
|
|
774b4c9f4a |
lib: Kconfig.debug: Fix the recursive dependency
An earlier commit 52a3101ed9b61787a49f3b5c298aa9240f4006dd added a recursive dependency as part of CONFIG_DEBUG_SPINLOCK lib/Kconfig.debug:585:error: recursive dependency detected! lib/Kconfig.debug:585:symbol DEBUG_SPINLOCK_BITE_ON_BUG depends on DEBUG_SPINLOCK_PANIC_ON_BUG lib/Kconfig.debug:593:symbol DEBUG_SPINLOCK_PANIC_ON_BUG depends on DEBUG_SPINLOCK_BITE_ON_BUG Fix this by adding a choice menu. Change-Id: I0e50103397bb71dec7056db5148cba988550b860 Signed-off-by: Rohit Vaswani <rvaswani@codeaurora.org> Signed-off-by: Prasad Sodagudi <psodagud@codeaurora.org> |
||
|
|
805c18d71c |
lib: spinlock: Trigger a watchdog bite on spin_dump for rwlock
Currently dump_stack is printed once a spin_bug is detected for rwlock. So provide an options to trigger a panic or watchdog bite for debugging rwlock magic corruptions and lockups. Change-Id: I20807e8eceb8b81635e58701d1f9f9bd36ab5877 [abhimany: replace msm with qcom] Signed-off-by: Prasad Sodagudi <psodagud@codeaurora.org> Signed-off-by: Abhimanyu Kapur <abhimany@codeaurora.org> |
||
|
|
77d758e283 |
lib: spinlock: Cause a watchdog bite on spin_dump
Currently we cause a BUG_ON once a spin_bug is detected, but that causes a whole lot of processing and the other CPUs would have proceeded to perform other actions and the state of the system is moved by the time we can analyze it. Provide an option to trigger a watchdog bite instead so that we can get the traces as close to the issue as possible. Change-Id: Ic8d692ebd02c6940a3b4e5798463744db20b0026 Signed-off-by: Rohit Vaswani <rvaswani@codeaurora.org> Signed-off-by: Prasad Sodagudi <psodagud@codeaurora.org> |
||
|
|
e2cddd1040 |
kernel/lib: add additional debug capabilites for data corruption
Data corruptions in the kernel often end up in system crashes that are easier to debug closer to the time of detection. Specifically, if we do not panic immediately after lock or list corruptions have been detected, the problem context is lost in the ensuing system mayhem. Add support for allowing system crash immediately after such corruptions are detected. The CONFIG option controls the enabling/disabling of the feature. Change-Id: I9b2eb62da506a13007acff63e85e9515145909ff Signed-off-by: Syed Rameez Mustafa <rameezmustafa@codeaurora.org> [abhimany: minor merge conflict resolution] Signed-off-by: Abhimanyu Kapur <abhimany@codeaurora.org> |
||
|
|
8bb334401c |
kernel: lib: allow larger stack frame size for KASan
Some functions consume more than allowed stack frame size with KASan enabled and GCC warns it as an error. To avoid compilation warning, allow larger stack frame size when KASan is enabled instead of changing each file. Below is one of the warning messages for reference. kernel/net/wireless/nl80211.c: In function 'nl80211_send_wiphy': kernel/net/wireless/nl80211.c:1705:1: warning: the frame size of 5488 bytes is larger than 2048 bytes [-Wframe-larger-than=] Change-Id: I953018f459bf048366f0ba5ff7c980edcd9bbe07 Signed-off-by: Se Wang (Patrick) Oh <sewango@codeaurora.org> [satyap: trivial merge conflict resolution] Signed-off-by: Satya Durga Srinivasu Prabhala <satyap@codeaurora.org> |
||
|
|
788349f659 |
UBSAN: run-time undefined behavior sanity checker
UBSAN uses compile-time instrumentation to catch undefined behavior (UB). Compiler inserts code that perform certain kinds of checks before operations that could cause UB. If check fails (i.e. UB detected) __ubsan_handle_* function called to print error message. So the most of the work is done by compiler. This patch just implements ubsan handlers printing errors. GCC has this capability since 4.9.x [1] (see -fsanitize=undefined option and its suboptions). However GCC 5.x has more checkers implemented [2]. Article [3] has a bit more details about UBSAN in the GCC. [1] - https://gcc.gnu.org/onlinedocs/gcc-4.9.0/gcc/Debugging-Options.html [2] - https://gcc.gnu.org/onlinedocs/gcc/Debugging-Options.html [3] - http://developerblog.redhat.com/2014/10/16/gcc-undefined-behavior-sanitizer-ubsan/ Issues which UBSAN has found thus far are: Found bugs: * out-of-bounds access - |
||
|
|
07ca3d98c6 |
kmemleak : Make kmemleak_stack_scan optional using config
Currently we have kmemleak_stack_scan enabled by default. This can hog the cpu with pre-emption disabled for a long time starving other tasks. Make this optional at compile time, since if required we can always write to sysfs entry and enable this option. Change-Id: Ie30447861c942337c7ff25ac269b6025a527e8eb Signed-off-by: Vignesh Radhakrishnan <vigneshr@codeaurora.org> Signed-off-by: Prasad Sodagudi <psodagud@codeaurora.org> |
||
|
|
12471ac6f8 |
kmemleak : Make kmemleak_stack_scan optional using config
Currently we have kmemleak_stack_scan enabled by default. This can hog the cpu with pre-emption disabled for a long time starving other tasks. Make this optional at compile time, since if required we can always write to sysfs entry and enable this option. Change-Id: Ie30447861c942337c7ff25ac269b6025a527e8eb Signed-off-by: Vignesh Radhakrishnan <vigneshr@codeaurora.org> Signed-off-by: Prasad Sodagudi <psodagud@codeaurora.org> |
||
|
|
956d591558 |
scsi: ufs: Inject errors to verify error handling
Use fault-injection framework to simulate error conditions in the controller and verify error handling mechanisms implemented in UFS host controller driver. This is used only during development and hence guarded by CONFIG_UFS_FAULT_INJECTION debug config option. Change-Id: Ia63c276c5e56d677a92332b42b670300ad82af7a Signed-off-by: Sujit Reddy Thumma <sthumma@codeaurora.org> [venkatg@codeaurora.org: resolved trivial merge conflicts] Signed-off-by: Venkat Gopalakrishnan <venkatg@codeaurora.org> |
||
|
|
55d35d82b7 |
hardlockup: detect hard lockups without NMIs using secondary cpus
Emulate NMIs on systems where they are not available by using timer interrupts on other cpus. Each cpu will use its softlockup hrtimer to check that the next cpu is processing hrtimer interrupts by verifying that a counter is increasing. This patch is useful on systems where the hardlockup detector is not available due to a lack of NMIs, for example most ARM SoCs. Without this patch any cpu stuck with interrupts disabled can cause a hardware watchdog reset with no debugging information, but with this patch the kernel can detect the lockup and panic, which can result in useful debugging info. Change-Id: Ia5faf50243e19c1755201212e04c8892d929785a Signed-off-by: Colin Cross <ccross@android.com> |
||
|
|
50c36504fc |
Merge tag 'modules-next-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/rusty/linux
Pull module updates from Rusty Russell: "Nothing exciting, minor tweaks and cleanups" * tag 'modules-next-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/rusty/linux: scripts: [modpost] add new sections to white list modpost: Add flag -E for making section mismatches fatal params: don't ignore the rest of cmdline if parse_one() fails modpost: abort if a module symbol is too long |
||
|
|
707cc7280f |
test_printf: test printf family at runtime
This adds a simple module for testing the kernel's printf facilities. Previously, some %p extensions have caused a wrong return value in case the entire output didn't fit and/or been unusable in kasprintf(). This should help catch such issues. Also, it should help ensure that changes to the formatting algorithms don't break anything. I'm not sure if we have a struct dentry or struct file lying around at boot time or if we can fake one, but most %p extensions should be testable, as should the ordinary number and string formatting. The nature of vararg functions means we can't use a more conventional table-driven approach. For now, this is mostly a skeleton; contributions are very welcome. Some tests are/will be slightly annoying to write, since the expected output depends on stuff like CONFIG_*, sizeof(long), runtime values etc. Signed-off-by: Rasmus Villemoes <linux@rasmusvillemoes.dk> Reviewed-by: Kees Cook <keescook@chromium.org> Cc: Andy Shevchenko <andriy.shevchenko@linux.intel.com> Cc: Martin Kletzander <mkletzan@redhat.com> Cc: Rasmus Villemoes <linux@rasmusvillemoes.dk> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org> |
||
|
|
3f181b4d86 |
lib/Kconfig.debug: disable -Wframe-larger-than warnings with KASAN=y
When the kernel compiled with KASAN=y, GCC adds redzones for each variable on stack. This enlarges function's stack frame and causes: 'warning: the frame size of X bytes is larger than Y bytes' The worst case I've seen for now is following: ../net/wireless/nl80211.c: In function `nl80211_send_wiphy': ../net/wireless/nl80211.c:1731:1: warning: the frame size of 5448 bytes is larger than 2048 bytes [-Wframe-larger-than=] That kind of warning becomes useless with KASAN=y. It doesn't necessarily indicate that there is some problem in the code, thus we should turn it off. (The KASAN=y stack size in increased from 16k to 32k for this reason) Signed-off-by: Andrey Ryabinin <aryabinin@virtuozzo.com> Reported-by: Fengguang Wu <fengguang.wu@intel.com> Acked-by: Abylay Ospan <aospan@netup.ru> Cc: Andi Kleen <andi@firstfloor.org> Cc: Ingo Molnar <mingo@kernel.org> Cc: Mauro Carvalho Chehab <m.chehab@samsung.com> Cc: Kozlov Sergey <serjk@netup.ru> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org> |
||
|
|
47490ec141 |
modpost: Add flag -E for making section mismatches fatal
The section mismatch warning can be easy to miss during the kernel build process. Allow it to be marked as fatal to be easily caught and prevent bugs from slipping in. Setting CONFIG_SECTION_MISMATCH_WARN_ONLY=y causes these warnings to be non-fatal, since there are a number of section mismatches when using allmodconfig on some architectures, and we do not want to break these builds by default. Signed-off-by: Nicolas Boichat <drinkcat@chromium.org> Change-Id: Ic346706e3297c9f0d790e3552aa94e5cff9897a6 Signed-off-by: Rusty Russell <rusty@rustcorp.com.au> |
||
|
|
ca520cab25 |
Merge branch 'locking-core-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip
Pull locking and atomic updates from Ingo Molnar:
"Main changes in this cycle are:
- Extend atomic primitives with coherent logic op primitives
(atomic_{or,and,xor}()) and deprecate the old partial APIs
(atomic_{set,clear}_mask())
The old ops were incoherent with incompatible signatures across
architectures and with incomplete support. Now every architecture
supports the primitives consistently (by Peter Zijlstra)
- Generic support for 'relaxed atomics':
- _acquire/release/relaxed() flavours of xchg(), cmpxchg() and {add,sub}_return()
- atomic_read_acquire()
- atomic_set_release()
This came out of porting qwrlock code to arm64 (by Will Deacon)
- Clean up the fragile static_key APIs that were causing repeat bugs,
by introducing a new one:
DEFINE_STATIC_KEY_TRUE(name);
DEFINE_STATIC_KEY_FALSE(name);
which define a key of different types with an initial true/false
value.
Then allow:
static_branch_likely()
static_branch_unlikely()
to take a key of either type and emit the right instruction for the
case. To be able to know the 'type' of the static key we encode it
in the jump entry (by Peter Zijlstra)
- Static key self-tests (by Jason Baron)
- qrwlock optimizations (by Waiman Long)
- small futex enhancements (by Davidlohr Bueso)
- ... and misc other changes"
* 'locking-core-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip: (63 commits)
jump_label/x86: Work around asm build bug on older/backported GCCs
locking, ARM, atomics: Define our SMP atomics in terms of _relaxed() operations
locking, include/llist: Use linux/atomic.h instead of asm/cmpxchg.h
locking/qrwlock: Make use of _{acquire|release|relaxed}() atomics
locking/qrwlock: Implement queue_write_unlock() using smp_store_release()
locking/lockref: Remove homebrew cmpxchg64_relaxed() macro definition
locking, asm-generic: Add _{relaxed|acquire|release}() variants for 'atomic_long_t'
locking, asm-generic: Rework atomic-long.h to avoid bulk code duplication
locking/atomics: Add _{acquire|release|relaxed}() variants of some atomic operations
locking, compiler.h: Cast away attributes in the WRITE_ONCE() magic
locking/static_keys: Make verify_keys() static
jump label, locking/static_keys: Update docs
locking/static_keys: Provide a selftest
jump_label: Provide a self-test
s390/uaccess, locking/static_keys: employ static_branch_likely()
x86, tsc, locking/static_keys: Employ static_branch_likely()
locking/static_keys: Add selftest
locking/static_keys: Add a new static_key interface
locking/static_keys: Rework update logic
locking/static_keys: Add static_key_{en,dis}able() helpers
...
|
||
|
|
8ff4fbfd69 |
Merge branches 'fixes.2015.07.22a' and 'initexp.2015.08.04a' into HEAD
fixes.2015.07.22a: Miscellaneous fixes. initexp.2015.08.04a: Initialization and expedited updates. (Single branch due to conflicts.) |