70f98fe87ab5b332fa6308ae9f05da170d65e9f6
105 Commits
| Author | SHA1 | Message | Date | |
|---|---|---|---|---|
|
|
c1e5f30fa6 |
treewide: remove Ofast
Leaked from testing branch awhile ago |
||
|
|
96a6735059 |
Revert "trace: rtb: add msm_rtb register tracing feature snapshot"
This reverts commit
|
||
|
|
ccd83b10d2 |
trace: Introduce minimal tracing for iorapd
Android service iorapd uses mm tracing to check what files are being loaded by an app during launch. It then compiles the traces to perform madvise syscalls to speedup app launch. This, however, enforces tracepoints to be enabled for whole kernel which effects with much larger image size and some performance penalties. It turns out that tracing can be disabled by passing NOTRACE flag. To make use of this flag pass it globally and undef where needed to make tracing work, also, keep mm tracing in place for iorapd. Signed-off-by: Andrzej Perczak <linux@andrzejperczak.com> Signed-off-by: Jebaitedneko <Jebaitedneko@gmail.com> |
||
|
|
0e0b9736a7 |
Selectively use Ofast on some targets
Measurably benefits performance in some areas. |
||
|
|
ecce148a6b |
Revert "Selectively use Ofast on some targets"
This reverts commit 7b9750603cd6d62fda30ab157358d0955daeb2de. |
||
|
|
b86d3045a9 |
Selectively use Ofast on some targets
Measurably benefits performance in some areas. |
||
|
|
39d3607980 |
Merge remote-tracking branch 'remotes/origin/tmp-ad490df' into msm-4.14
* remotes/origin/tmp-ad490df:
ANDROID: binder: Remove obsolete proc waitqueue.
f2fs: updates on 4.15-rc1
ANDROID: arch_topology: fix build for !CONFIG_CPU_FREQ
ANDROID: ARM64: Tweak defconfig Android EAS features
ANDROID: ARM64: Tweak defconfig for EAS platforms
ANDROID: DEBUG: accumulate debug output and dump all at the end of energy_diff
ANDROID: sched/fair: prevent meaningless active migration
ANDROID: sched/fair: Fall back to slow path wakeup placement if needed
ANDROID: DEBUG: Temporarily disable lockdep asserting on update_task_ravg
ANDROID: sched: Introduce Window Assisted Load Tracking (WALT)
ANDROID: Add find_best_target to minimise energy calculation overhead
ANDROID: Combined EAS Load Balance Tweaks
ANDROID: sched/fair: re-factor energy_diff to use a single (extensible) energy_env
ANDROID: sched/fair: consider task utilization in group_norm/max_util()
ANDROID: refactor select_task_rq_fair et al to be cleaner
ANDROID: sched: fair: Bypass energy-aware wakeup for prefer-idle tasks
ANDROID: sched: Move energy-aware decision into a helper function
ANDROID: sched/fair: Try to estimate possible idle states.
ANDROID: trace/sched: Add tracepoint for sched_overutilized events
ANDROID: sched: fair/tune: Add schedtune with cgroups interface
ANDROID: sched: EAS: take cstate into account when selecting idle core
ANDROID: sched: Unconditionally honor sync flag for energy-aware wakeups
ANDROID: sched: Add KConfig option to set ENERGY_AWARE sched feature on
ANDROID: cpufreq: schedutil: add up/down frequency transition rate limits
ANDROID: sched: Add per-cpu max capacity to sched_group_capacity
ANDROID: sched: cpufreq: use PELT rt_rq as estimate of required RT CPU capacity
ANDROID: trace/sched: add tracepoint for rt_rq PELT signal
FROMLIST: sched/rt: add utilization tracking
FROMLIST: sched/fair: Use wake_q length as a hint for wake_wide
FROMLIST: sched/fair: Update blocked load from newly idle balance
FROMLIST: sched: force update of blocked load of idle cpus
UPSTREAM: sched/fair: Sync task util before slow-path wakeup
UPSTREAM: sched/fair: Fix usage of find_idlest_group() when the local group is idlest
UPSTREAM: sched/fair: Fix usage of find_idlest_group() when no groups are allowed
UPSTREAM: sched/fair: Fix find_idlest_group() when local group is not allowed
UPSTREAM: sched/fair: Remove unnecessary comparison with -1
UPSTREAM: sched/fair: Move select_task_rq_fair() slow-path into its own function
UPSTREAM: sched/fair: Force balancing on NOHZ balance if local group has capacity
ANDROID: sched/events: Introduce task_group load tracking trace event
ANDROID: sched/events: Introduce sched_entity load tracking trace event
ANDROID: sched/events: Introduce cfs_rq load tracking trace event
ANDROID: sched/autogroup: Define autogroup_path() for !CONFIG_SCHED_DEBUG
ANDROID: sched/debug: Add energy procfs interface
ANDROID: arm: Support for extracting EAS energy costs from DT
ANDROID: arm64: Support for extracting EAS energy costs from DT
ANDROID: arm: Add Energy Model to dtb for TC2
ANDROID: hisilicon: Add energy model data to hisilicon 6220 dtb
ANDROID: arm64: Add Energy Model to dtb for Juno-r0 and Juno-r2
ANDROID: Documentation: DT bindings for energy model cost data required by EAS
ANDROID: arm64, dts: add hikey cpu capacity-dmips-mhz information
ANDROID: drivers base/arch_topology: Detect SD_SHARE_CAP_STATES flag
ANDROID: drivers base/arch_topology: enforce SCHED_CAPACITY_SCALE as highest CPU capacity
ANDROID: drivers base/arch_topology: fold two pr_debug()'s into one
ANDROID: sched: Per-Sched-domain over utilization
ANDROID: sched: Disable energy-unfriendly nohz kicks
ANDROID: sched: Consider a not over-utilized energy-aware system as balanced
ANDROID: sched/fair: Energy-aware wake-up task placement
ANDROID: sched: Add over-utilization/tipping point indicator
ANDROID: sched/fair: Add energy_diff dead-zone margin
ANDROID: sched: Determine the current sched_group idle-state
ANDROID: sched, cpuidle: Track cpuidle state index in the scheduler
ANDROID: sched: Estimate energy impact of scheduling decisions
ANDROID: sched: Extend sched_group_energy to test load-balancing decisions
ANDROID: initramfs: call free_initrd() when skipping init
FROMLIST: net: xfrm: allow clearing socket xfrm policies.
FROMLIST: binder: fix proc->files use-after-free
UPSTREAM: arm64: vdso: fix clock_getres for 4GiB-aligned res
UPSTREAM: security: bpf: replace include of linux/bpf.h with forward declarations
BACKPORT: selinux: bpf: Add addtional check for bpf object file receive
UPSTREAM: selinux: bpf: Add selinux check for eBPF syscall operations
BACKPORT: security: bpf: Add LSM hooks for bpf object related syscall
BACKPORT: bpf: Add file mode configuration into bpf maps
UPSTREAM: arm64: Avoid aligning normal memory pointers in __memcpy_{to,from}io
UPSTREAM: android: binder: Change binder_shrinker to static
UPSTREAM: f2fs: expose some sectors to user in inline data or dentry case
UPSTREAM: tracing: Add support for preempt and irq enable/disable events
UPSTREAM: tracing: Prepare to add preempt and irq trace events
BACKPORT: android: binder: Remove unused vma argument
ANDROID: Revert "arm64: move ELF_ET_DYN_BASE to 4GB / 4MB"
ANDROID: Revert "arm: move ELF_ET_DYN_BASE to 4MB"
ANDROID: memory_state_time: fix undefined behavior with missing DT properties
ANDROID: memory_state_time: Implement memory_state_time, used by qcom,cpubw
ANDROID: uid_sys_stats: log task io with a debug flag
ANDROID: uid_sys_stats: check previous uid_entry before call find_or_register_uid
ANDROID: uid_sys_stats: Kconfig: add depends for UID_SYS_STATS
ANDROID: uid_sys_stats: defer io stats calulation for dead tasks
ANDROID: uid_sys_stats: fix access of task_uid(task)
ANDROID: uid_sys_stats: reduce update_io_stats overhead
ANDROID: uid_sys_stats: change to use rt_mutex
ANDROID: uid_sys_stats: account for fsync syscalls
ANDROID: uid_sys_stats: fix negative write bytes.
ANDROID: uid_sys_stats: allow writing same state
ANDROID: uid_sys_stats: rename uid_cputime.c to uid_sys_stats.c
ANDROID: uid_cputime: add per-uid IO usage accounting
ANDROID: uid_cputime: Check for the range while removing range of UIDs.
ANDROID: uid_cputime: Iterates over all the threads instead of processes.
ANDROID: uid_cputime: fix cputime overflow
ANDROID: uid_cputime: Adds accounting for the cputimes per uid.
CHROMIUM: usb: gadget: f_accessory: add .raw_request callback
CHROMIUM: usb: gadget: f_audio_source: add .free_func callback
ANDROID: usb: gadget: f_midi: set fi->f to NULL when free f_midi function
ANDROID: usb: gadget: f_midi: create F_midi device
ANDROID: usb: gadget: f_accessory: assign no-op request complete callbacks
ANDROID: usb: gadget: f_accessory: Fix for UsbAccessory clean unbind.
ANDROID: usb: gadget: f_accessory: fix false disconnect due to a signal sent to the reading process
ANDROID: usb: gadget: f_accessory: Move gadget functions code
ANDROID: usb: gadget: f_accessory: Migrate to USB_FUNCTION API
ANDROID: usb: gadget: f_audio_source: disable the CPU C-states upon playback
ANDROID: usb: gadget: f_audio_source: Move gadget functions code
ANDROID: usb: gadget: f_audio_source: Move to USB_FUNCTION API
ANDROID: usb: gadget: composite: Do not disconnect unregistered dev
ANDROID: usb: gadget: configfs: fix null ptr in android_disconnect
ANDROID: usb: gadget: configfs: Add device attribute to determine gadget state
ANDROID: usb: gadget: configfs: Add "state" attribute to android_device
ANDROID: usb: gadget: configfs: Add function devices to the parent
ANDROID: usb: gadget: configfs: Add Uevent to notify userspace
ANDROID: usb: gadget: configfs: Add usb_function ptr to fi struct
ANDROID: usb: gadget: f_audio_source: Fixed USB Audio Class Interface Descriptor
ANDROID: usb: gadget: f_audio_source: change max ISO packet size
ANDROID: usb: gadget: f_audio_source: New gadget driver for audio output
ANDROID: usb: gadget: f_accessory: check for accessory device before disconnecting HIDs
ANDROID: usb: gadget: f_accessory: Enabled Zero Length Packet (ZLP) for acc_write
ANDROID: usb: gadget: f_accessory: move userspace interface to uapi
ANDROID: usb: gadget: f_accessory: Add support for HID input devices
ANDROID: usb: gadget: f_accessory: Add ACCESSORY_SET_AUDIO_MODE control request and ioctl
ANDROID: usb: gadget: f_accessory: Add Android Accessory function
ANDROID: usb: phy: Dual role sysfs class definition
ANDROID: usb: otg-wakelock: Remove wakelock.h dependencies
ANDROID: usb: otg-wakelock: Temporarily grab wakelock on charger and disconnect events
ANDROID: usb: otg-wakelock: Take wakelock when VBUS present
ANDROID: trace: net: use %pK for kernel pointers
ANDROID: trace: power: add trace_clock_set_parent
ANDROID: trace: cpufreq: Add tracing for min/max cpufreq
ANDROID: trace: gpu: add gpu trace events
ANDROID: trace: sched: add sched blocked tracepoint which dumps out context of sleep.
ANDROID: trace: add non-hierarchical function_graph option
ANDROID: security,perf: Allow further restriction of perf_event_open
ANDROID: rtc-palmas: correct for bcd year
ANDROID: power: wakeup: align wakeup_sources format
ANDROID: power: wakeup: Add the guard condition for len in pm_get_active_wakeup_sources
ANDROID: power: wakeup: Add last wake up source logging for suspend abort reason.
ANDROID: power: wakeup_reason: fix suspend time reporting
ANDROID: power: wakeup_reason: Report suspend times from last_suspend_time
ANDROID: power: wakeup_reason: Add check_wakeup_reason() to verify wakeup source irq
ANDROID: power: wakeup_reason: Adds functionality to log the last suspend abort reason.
ANDROID: power: wakeup_reason: Avoids bogus error messages for the suspend aborts.
ANDROID: power: wakeup_reason: Add guard condition for maximum wakeup reasons
ANDROID: power: wakeup_reason: add an API to log wakeup reasons
ANDROID: power: power_supply: Add property CHARGE_COUNTER_EXT and 64-bit precision properties
ANDROID: power: power_supply: add POWER_SUPPLY_PROP_CHARGE_ENABLED
ANDROID: power: power_supply: add POWER_SUPPLY_PROP_USB_OTG
ANDROID: power: power_supply: Add custom property for USB High Current mode
ANDROID: arm64: copy CONFIG_CMDLINE_EXTEND from ARM
ANDROID: of: Support CONFIG_CMDLINE_EXTEND config option
ANDROID: NFC: st21nfca: Fix memory OOB and leak issues in connectivity events handler
ANDROID: NFC: Fix possible memory corruption when handling SHDLC I-Frame commands
ANDROID: nfc: fdp: Fix possible buffer overflow in WCS4000 NFC driver
ANDROID: NFC: st21nfca: Fix out of bounds kernel access when handling ATR_REQ
ANDROID: netfilter: xt_IDLETIMER: Use fullsock when querying uid
ANDROID: netfilter: xt_IDLETIMER: Fix use after free condition during work
ANDROID: netfilter: xt_IDLETIMER: Adds the uid field in the msg
ANDROID: netfilter: xt_IDLETIMER: time-stamp and suspend/resume handling.
ANDROID: netfilter: xt_IDLETIMER: Add new netlink msg type
ANDROID: netfilter: xt_qtaguid: Use sk_uid to replace uid get from socket file
ANDROID: netfilter: xt_qtaguid: fix handling for cases where tunnels are used.
ANDROID: netfilter: xt_qtaguid: handle properly request sockets
ANDROID: netfilter: xt_qtaguid: Add untag hacks to inet_release function
ANDROID: netfilter: xt_qtaguid: don't check if embedded arrays are NULL
ANDROID: netfilter: xt_qtaguid: fix the deadlock when enable DDEBUG
ANDROID: netfilter: xt_qtaguid: Don't show empty tag stats for unprivileged uids
ANDROID: netfilter: xt_qtaguid: Fix panic caused by processing non-full socket.
ANDROID: netfilter: xt_qtaguid: Fix panic caused by synack processing
ANDROID: netfilter: xt_qtaguid: fix a race condition in if_tag_stat_update
ANDROID: netfilter: xt_qtaguid: xt_socket: build fixes
ANDROID: netfilter: xt_socket/nf_socket: fix refcount underflow and crash
ANDROID: netfilter: xt_qtaguid: Use sk_callback_lock read locks before reading sk->sk_socket
ANDROID: netfilter: xt_qtaguid/xt_socket: Build fixups
ANDROID: netfilter: xt_qtaguid: Fix boot panic
ANDROID: netfilter: xt_qtaguid: fix bad tcp_time_wait sock handling
ANDROID: netfilter: xt_qtaguid: 3.10 fixes
ANDROID: netfilter: xt_qtaguid: rate limit some of the printks
ANDROID: netfilter: xt_qtaguid: Allow tracking loopback
ANDROID: netfilter: xt_qtaguid: extend iface stat to report protocols
ANDROID: netfilter: xt_qtaguid: remove AID_* dependency for access control
ANDROID: netfilter: xt_qtaguid: Don't BUG_ON if create_if_tag_stat fails
ANDROID: netfilter: xt_qtaguid: fix error exit that would keep a spinlock.
ANDROID: netfilter: xt_qtaguid: report only uid tags to non-privileged processes
ANDROID: netfilter: xt_qtaguid: start tracking iface rx/tx at low level
ANDROID: netfilter: xt_qtaguid: fix ipv6 protocol lookup
ANDROID: netfilter: xt_qtaguid: add qtaguid matching module
ANDROID: netfilter: xt_quota2: fixup the quota2, and enable.
ANDROID: netfilter: xt_quota2: adding the original quota2 from xtables-addons
ANDROID: net: xfrm: check dir value of xfrm_userpolicy_id
ANDROID: net: xfrm: make PF_KEY SHA256 use RFC-compliant truncation.
ANDROID: net: wireless: wlcore: Disable filtering in AP role
ANDROID: net: wireless: Decrease scan entry expiration to avoid stall results
ANDROID: net: rfkill: Introduce CONFIG_RFKILL_PM and use instead of CONFIG_PM to power down
ANDROID: net: ipv6: autoconf routes into per-device tables
ANDROID: net: ipv6: fix crash caused by ipv6_find_hdr()
ANDROID: net: ipv4: tcp: add a sysctl to config the tcp_default_init_rwnd
ANDROID: net: ipv4: sysfs_net_ipv4: Add sysfs-based knobs for controlling TCP window size
ANDROID: net: ip-sysctl: Document tcp_fwmark_accept
ANDROID: net: paranoid: commoncap: Begin to warn users of implicit PARANOID_NETWORK capability grants
ANDROID: net: paranoid: security: Add proper checks for Android specific capability checks
ANDROID: net: paranoid: Only NET_ADMIN is allowed to fully control TUN interfaces.
ANDROID: net: paranoid: Replace AID_NET_RAW checks with capable(CAP_NET_RAW).
ANDROID: net: paranoid: security: Add AID_NET_RAW and AID_NET_ADMIN capability check in cap_capable().
ANDROID: net: Paranoid network.
ANDROID: mmc: core: export emmc revision
ANDROID: mmc: core: move to a SCHED_FIFO thread
ANDROID: mmc: core: Add "ignore mmc pm notify" functionality
ANDROID: mmc: sdio: Add concept of an 'embedded' SDIO device.
ANDROID: mmc: sd: Add retries in re-detection
ANDROID: mmc: sd: When resuming, try a little harder to init the card
ANDROID: mmc: sd: Add new CONFIG_MMC_PARANOID_SD_INIT for enabling retries during SD detection
ANDROID: mm: add a field to store names for private anonymous memory
ANDROID: HACK: arm64: use -mno-implicit-float instead of -mgeneral-regs-only
ANDROID: Kbuild, LLVMLinux: allow overriding clang target triple
CHROMIUM: arm64: Disable asm-operand-width warning for clang
CHROMIUM: kbuild: clang: Disable the 'duplicate-decl-specifier' warning
ANDROID: kbuild: Makefile.clean: make Kbuild and Makefile optional
ANDROID: kbuild: make it possible to specify the module output dir
ANDROID: input: goldfish_events: no extra EV_SYN; register goldfish
ANDROID: input: keychord: Fix for a memory leak in keychord.
ANDROID: input: keychord: Fix races in keychord_write.
ANDROID: input: keychord: Fix a slab out-of-bounds read.
ANDROID: input: keychord: log when keychord triggered
ANDROID: input: keyreset: switch to orderly_reboot
ANDROID: input: keyreset: Made keyreset more robust
ANDROID: input: keyreset: Changed keyreset to act as a wrapper for keycombo.
ANDROID: input: keycombo: add keycombo, a general key combo driver.
ANDROID: input: keychord: Add keychord driver
ANDROID: input: keyreset: Add keyreset driver.
ANDROID: input: gpio_matrix: Remove wakelock.h dependencies
ANDROID: input: gpio_input: convert from wakelocks to wakeup sources
ANDROID: input: gpio_event: remove early suspend
ANDROID: input: Generic GPIO Input devices
ANDROID: initramfs: Add skip_initramfs command line option
ANDROID: build: add build server configs for goldfish
ANDROID: goldfish: add ranchu defconfigs
ANDROID: goldfish_sync_timeline: Rename fence to dma_fence
ANDROID: goldfish_sync: 32 max cmds to save stack
ANDROID: goldfish_sync: Fix sync_file_obj is NULL but dereferenced problem
ANDROID: goldfish_sync: Isolate single module to fix compilation
ANDROID: goldfish_sync: upgrade to new fence sync api
ANDROID: goldfish_sync: Add goldfish sync driver
ANDROID: goldfish_audio: Clear audio read buffer status after each read
ANDROID: goldfish_audio: Enable ACPI-based enumeration for goldfish audio
ANDROID: goldfishfb: Set pixclock = 0
ANDROID: goldfishfb: Enable ACPI-based enumeration for goldfish framebuffer
ANDROID: goldfishfb: add devicetree bindings
ANDROID: fs: Fix for in kernel emergency remount when loop mounts are used
ANDROID: fs: Refactor FS readpage/write tracepoints.
ANDROID: fs: FS tracepoints to track IO.
ANDROID: fs: sched: add a counter to track fsync
ANDROID: fs: epoll: use freezable blocking call
ANDROID: fs: ext4: Add support for FIDTRIM, a best-effort ioctl for deep discard trim
ANDROID: fs: fuse: Freeze client on suspend when request sent to userspace
ANDROID: fs: pstore: ram: Add ramoops_console_write_buf api
ANDROID: fs: block_dump: Don't display inode changes if block_dump < 2
ANDROID: dm: verity: add minimum prefetch size
ANDROID: dm: android-verity: mark dev as rw for linear target
ANDROID: dm: android-verity: allow disable dm-verity for Treble VTS
ANDROID: dm: android-verity: fix table_make_digest() error handling
ANDROID: dm: android-verity: rebase for 4.9
ANDROID: dm: android-verity: Remove fec_header location constraint
ANDROID: dm: android-verity: adopt changes made to dm callbacks
ANDROID: dm: android-verity: pack the fec_header structure
ANDROID: dm: android-verity: Verify header before fetching table
ANDROID: dm: android-verity: allow adb disable-verity only in userdebug
ANDROID: dm: android-verity: mount as linear target if eng build
ANDROID: dm: android-verity: use default verity public key
ANDROID: dm: android-verity: fix signature verification flag
ANDROID: dm: android-verity: use name_to_dev_t
ANDROID: dm: android-verity: Mounting root as linear device when verity disabled
ANDROID: dm: android-verity: Add android verity target
ANDROID: dm: do_mounts_dm: Update init/do_mounts_dm.c to the latest ChromiumOS version.
ANDROID: dm: do_mounts_dm: fix dm_substitute_devices()
ANDROID: dm: do_mounts_dm: Rebase on top of 4.9
CHROMIUM: dm: boot time specification of dm=
ANDROID: dm: verity-fec: add sysfs attribute fec/corrected
CHROMIUM: dma-buf: dma-fence: fix warning when releasing active sync point
CHROMIUM: cgroups: relax permissions on moving tasks between cgroups
ANDROID: cpuset: Make cpusets restore on hotplug
ANDROID: cpu: send KOBJ_ONLINE event when enabling cpus
ANDROID: cpuidle: governor: menu: don't use loadavg
ANDROID: binder: clarify deferred thread work.
ANDROID: binder: show high watermark of alloc->pages.
ANDROID: binder: Add thread->process_todo flag.
ANDROID: binder: fix node sched policy calculation
ANDROID: binder: init desired_prio.sched_policy before use it
ANDROID: binder: fix transaction leak.
ANDROID: binder: Add tracing for binder priority inheritance.
ANDROID: binder: don't check prio permissions on restore.
ANDROID: binder: add RT inheritance flag to node.
ANDROID: binder: improve priority inheritance.
ANDROID: binder: add min sched_policy to node.
ANDROID: binder: add support for RT prio inheritance.
ANDROID: ashmem: Shrink directly through shmem_fallocate
ANDROID: ashmem: Add shmem_set_file to mm/shmem.c
ANDROID: fiq_debugger: Remove wakelock.h dependencies
ANDROID: fiq_debugger: Add fiq_debugger.disable option
ANDROID: fiq_debugger: Add option to apply uart overlay by FIQ_DEBUGGER_UART_OVERLAY
ANDROID: fiq_debugger: Add fiq_watchdog_triggered api
ANDROID: fiq_debugger: Call fiq_debugger_printf through a function pointer from cpu specific code
ANDROID: fiq_debugger: add ARM64 support
ANDROID: fiq_debugger: split arm support into fiq_debugger_arm.c
ANDROID: fiq_debugger: use pt_regs for registers
ANDROID: fiq_debugger: allow compiling without CONFIG_FIQ_GLUE
ANDROID: fiq_debugger: rename debug->fiq_debugger
ANDROID: fiq_debugger: move into drivers/staging/android/fiq_debugger/
ANDROID: kdb: support new lines without carriage returns
ANDROID: ARM: fiq_debugger: Update tty code for 3.9
ANDROID: ARM: fiq_debugger: lock between tty and console writes
ANDROID: ARM: fiq_debugger: add process context reboot command
ANDROID: ARM: fiq_debugger: fix multiple consoles and make it a preferred console
ANDROID: ARM: kgdb: ignore breakpoint instructions from user mode
ANDROID: ARM: fiq_debugger: add support for kgdb
ANDROID: ARM: fiq_debugger: add debug_putc
ANDROID: ARM: fiq_debugger: add support for reboot commands
ANDROID: ARM: fiq_debugger: Add generic fiq serial debugger
ANDROID: ARM: fiq_glue: Add custom fiq return handler api.
ANDROID: ARM: fiq_glue: Add fiq_glue
ANDROID: arm64: pass return address to dma_common_contiguous_remap
ANDROID: arm64: check for upper PAGE_SHIFT bits in pfn_valid()
ANDROID: arm: mm: Optionally flush entire dcache from v6_dma_flush_range
ANDROID: arm: decompressor: Flush tlb before swiching domain 0 to client mode
ANDROID: arm: fault: assume no context when IRQs are disabled during data abort.
ANDROID: arm: add option to flush console before reboot
ANDROID: arm64: process: dump memory around registers when displaying regs
ANDROID: arm: process: Add display of memory around registers when displaying regs.
ANDROID: arm64: Allow to choose appended kernel image
ANDROID: arm64: add option to build Image-dtb
ANDROID: arm64: add option to build Image.gz/dtb combo
ANDROID: arm: convert build of appended dtb zImage to list of dtbs
ANDROID: arm: add config option to build zImage/dtb combo
ANDROID: arm: Fix dtb list when DTB_IMAGE_NAMES is empty
ANDROID: arch: force -fno-pic
ANDROID: add script to fetch android kernel config fragments
ANDROID: sched: Calculate energy consumption of sched_group
ANDROID: sched: Highest energy aware balancing sched_domain level pointer
ANDROID: sched: Relocated cpu_util() and change return type
ANDROID: sched: EAS & 'single cpu per cluster'/cpu hotplug interoperability
ANDROID: sched: Introduce SD_SHARE_CAP_STATES sched_domain flag
ANDROID: sched: Initialize energy data structures
ANDROID: sched: Introduce energy data structures
ANDROID: sched: Make energy awareness a sched feature
ANDROID: sched: Documentation for scheduler energy cost model
ANDROID: arm64: Enable dynamic sched_domain flag setting
ANDROID: arm: Enable dynamic sched_domain flag setting
ANDROID: drivers/base/arch_topology: Dynamic sched_domain flag detection
ANDROID: sched/fair: Avoid unnecessary balancing of asymmetric capacity groups
ANDROID: sched: Consider misfit tasks when load-balancing
ANDROID: sched: Add group_misfit_task load-balance type
ANDROID: arm64: wire cpu-invariant accounting support up to the task scheduler
ANDROID: arm64: wire frequency-invariant accounting support up to the task scheduler
ANDROID: arm: wire cpu-invariant accounting support up to the task scheduler
ANDROID: arm: wire frequency-invariant accounting support up to the task scheduler
ANDROID: drivers base/arch_topology: allow inlining cpu-invariant accounting support
ANDROID: drivers base/arch_topology: provide frequency-invariant accounting support
ANDROID: cpufreq: dt: invoke frequency-invariance setter function
ANDROID: cpufreq: arm_big_little: invoke frequency-invariance setter function
ANDROID: cpufreq: provide default frequency-invariance setter function
ANDROID: drivers base/arch_topology: free cpumask cpus_to_visit
ANDROID: sched: Enable idle balance to pull single task towards cpu with higher capacity
ANDROID: sched: Prevent unnecessary active balance of single task in sched group
Conflicts:
Documentation/admin-guide/kernel-parameters.txt
Makefile
arch/arm/configs/ranchu_defconfig
arch/arm64/Kconfig
arch/arm64/Makefile
arch/arm64/boot/Makefile
arch/arm64/configs/ranchu64_defconfig
arch/arm64/kernel/io.c
arch/arm64/kernel/process.c
arch/arm64/mm/dma-mapping.c
arch/x86/configs/i386_ranchu_defconfig
arch/x86/configs/x86_64_ranchu_defconfig
drivers/android/binder.c
drivers/dma-buf/sw_sync.c
drivers/md/Kconfig
drivers/md/dm-android-verity.c
drivers/md/dm-android-verity.h
drivers/md/dm-linear.c
drivers/mmc/core/Kconfig
drivers/mmc/core/mmc.c
drivers/power/supply/power_supply_sysfs.c
drivers/staging/android/fiq_debugger/fiq_debugger.c
drivers/staging/android/fiq_debugger/fiq_debugger_arm64.c
drivers/usb/gadget/Kconfig
drivers/usb/gadget/function/Makefile
include/linux/power_supply.h
init/initramfs.c
kernel/power/suspend.c
kernel/sched/sched.h
net/netfilter/xt_qtaguid.c
arch/arm/kernel/topology.c
arch/arm64/boot/dts/hisilicon/hi6220.dtsi
arch/arm64/kernel/topology.c
drivers/base/arch_topology.c
kernel/sched/fair.c
kernel/sched/features.h
kernel/sched/sched.h
kernel/sched/topology.c
Change-Id: Ib242448f01dae40bff6a4da72aa4619c44663e76
Signed-off-by: Runmin Wang <runminw@codeaurora.org>
|
||
|
|
b657a6f6f8 |
UPSTREAM: tracing: Add support for preempt and irq enable/disable events
commit d59158162e032917a428704160a2063a02405ec6 upstream. Preempt and irq trace events can be used for tracing the start and end of an atomic section which can be used by a trace viewer like systrace to graphically view the start and end of an atomic section and correlate them with latencies and scheduling issues. This also serves as a prelude to using synthetic events or probes to rewrite the preempt and irqsoff tracers, along with numerous benefits of using trace events features for these events. Link: http://lkml.kernel.org/r/20171006005432.14244-3-joelaf@google.com Link: http://lkml.kernel.org/r/20171010225137.17370-1-joelaf@google.com Cc: Peter Zilstra <peterz@infradead.org> Cc: kernel-team@android.com Signed-off-by: Joel Fernandes <joelaf@google.com> Signed-off-by: Steven Rostedt (VMware) <rostedt@goodmis.org> Signed-off-by: Amit Pundir <amit.pundir@linaro.org> |
||
|
|
d6e6101596 |
ANDROID: trace: gpu: add gpu trace events
Change-Id: I0607b9c776acf61cb796b8572cf8cfb8b2dc1377 Signed-off-by: Jamie Gennis <jgennis@google.com> [AmitP: Folded following android-4.9 commit changes into this patch dbd4bf94528e ("ANDROID: trace/events: fix gpu event timestamp formatting")] Signed-off-by: Amit Pundir <amit.pundir@linaro.org> |
||
|
|
253c6dff4b |
Merge remote-tracking branch 'remotes/origin/tmp-39dae59' into msm-next
* remotes/msm-4.9/tmp-39dae59:
Linux 4.14-rc8
x86/module: Detect and skip invalid relocations
objtool: Prevent GCC from merging annotate_unreachable(), take 2
Revert "x86/mm: Stop calling leave_mm() in idle code"
Documentation: Add Frank Rowand to list of enforcement statement endorsers
doc: add Willy Tarreau to the list of enforcement statement endorsers
tools/headers: Synchronize kernel ABI headers
objtool: Resync objtool's instruction decoder source code copy with the kernel's latest version
Input: sparse-keymap - send sync event for KE_SW/KE_VSW
Input: ar1021_i2c - set INPUT_PROP_DIRECT
arch/tile: Implement ->set_state_oneshot_stopped()
Update MIPS email addresses
x86: CPU: Fix up "cpu MHz" in /proc/cpuinfo
mm, swap: fix race between swap count continuation operations
mm/huge_memory.c: deposit page table when copying a PMD migration entry
initramfs: fix initramfs rebuilds w/ compression after disabling
fs/hugetlbfs/inode.c: fix hwpoison reserve accounting
ocfs2: fstrim: Fix start offset of first cluster group during fstrim
mm, /proc/pid/pagemap: fix soft dirty marking for PMD migration entry
userfaultfd: hugetlbfs: prevent UFFDIO_COPY to fill beyond the end of i_size
Documentation: Add Tim Bird to list of enforcement statement endorsers
net: systemport: Correct IPG length settings
tcp: do not mangle skb->cb[] in tcp_make_synack()
fib: fib_dump_info can no longer use __in_dev_get_rtnl
stmmac: use of_property_read_u32 instead of read_u8
net_sched: hold netns refcnt for each action
net_sched: acquire RTNL in tc_action_net_exit()
powerpc/perf: Fix core-imc hotplug callback failure during imc initialization
Kbuild: don't pass "-C" to preprocessor when processing linker scripts
Revert "x86: do not use cpufreq_quick_get() for /proc/cpuinfo "cpu MHz""
arm64: ensure __dump_instr() checks addr_limit
KVM: x86: Update APICv on APIC reset
KVM: VMX: Do not fully reset PI descriptor on vCPU reset
kvm: Return -ENODEV from update_persistent_clock
futex: futex_wake_op, do not fail on invalid op
MIPS: Update email address for Marcin Nowakowski
License cleanup: add SPDX license identifier to uapi header files with a license
License cleanup: add SPDX license identifier to uapi header files with no license
License cleanup: add SPDX GPL-2.0 license identifier to files with no license
KEYS: fix out-of-bounds read during ASN.1 parsing
KEYS: trusted: fix writing past end of buffer in trusted_read()
KEYS: return full count in keyring_read() if buffer is too small
net: vrf: correct FRA_L3MDEV encode type
tcp_nv: fix division by zero in tcpnv_acked()
drm/amdgpu: allow harvesting check for Polaris VCE
drm/amdgpu: return -ENOENT from uvd 6.0 early init for harvesting
ARM: add debug ".edata_real" symbol
MIPS: smp-cmp: Fix vpe_id build error
MAINTAINERS: Update Pistachio platform maintainers
MIPS: smp-cmp: Use right include for task_struct
signal: Fix name of SIGEMT in #if defined() check
MIPS: Update Goldfish RTC driver maintainer email address
MIPS: Update RINT emulation maintainer email address
MIPS: CPS: Fix use of current_cpu_data in preemptible code
x86/mcelog: Get rid of RCU remnants
watchdog/hardlockup/perf: Use atomics to track in-use cpu counter
watchdog/harclockup/perf: Revert
|
||
|
|
b24413180f |
License cleanup: add SPDX GPL-2.0 license identifier to files with no license
Many source files in the tree are missing licensing information, which makes it harder for compliance tools to determine the correct license. By default all files without license information are under the default license of the kernel, which is GPL version 2. Update the files which contain no license information with the 'GPL-2.0' SPDX license identifier. The SPDX identifier is a legally binding shorthand, which can be used instead of the full boiler plate text. This patch is based on work done by Thomas Gleixner and Kate Stewart and Philippe Ombredanne. How this work was done: Patches were generated and checked against linux-4.14-rc6 for a subset of the use cases: - file had no licensing information it it. - file was a */uapi/* one with no licensing information in it, - file was a */uapi/* one with existing licensing information, Further patches will be generated in subsequent months to fix up cases where non-standard license headers were used, and references to license had to be inferred by heuristics based on keywords. The analysis to determine which SPDX License Identifier to be applied to a file was done in a spreadsheet of side by side results from of the output of two independent scanners (ScanCode & Windriver) producing SPDX tag:value files created by Philippe Ombredanne. Philippe prepared the base worksheet, and did an initial spot review of a few 1000 files. The 4.13 kernel was the starting point of the analysis with 60,537 files assessed. Kate Stewart did a file by file comparison of the scanner results in the spreadsheet to determine which SPDX license identifier(s) to be applied to the file. She confirmed any determination that was not immediately clear with lawyers working with the Linux Foundation. Criteria used to select files for SPDX license identifier tagging was: - Files considered eligible had to be source code files. - Make and config files were included as candidates if they contained >5 lines of source - File already had some variant of a license header in it (even if <5 lines). All documentation files were explicitly excluded. The following heuristics were used to determine which SPDX license identifiers to apply. - when both scanners couldn't find any license traces, file was considered to have no license information in it, and the top level COPYING file license applied. For non */uapi/* files that summary was: SPDX license identifier # files ---------------------------------------------------|------- GPL-2.0 11139 and resulted in the first patch in this series. If that file was a */uapi/* path one, it was "GPL-2.0 WITH Linux-syscall-note" otherwise it was "GPL-2.0". Results of that was: SPDX license identifier # files ---------------------------------------------------|------- GPL-2.0 WITH Linux-syscall-note 930 and resulted in the second patch in this series. - if a file had some form of licensing information in it, and was one of the */uapi/* ones, it was denoted with the Linux-syscall-note if any GPL family license was found in the file or had no licensing in it (per prior point). Results summary: SPDX license identifier # files ---------------------------------------------------|------ GPL-2.0 WITH Linux-syscall-note 270 GPL-2.0+ WITH Linux-syscall-note 169 ((GPL-2.0 WITH Linux-syscall-note) OR BSD-2-Clause) 21 ((GPL-2.0 WITH Linux-syscall-note) OR BSD-3-Clause) 17 LGPL-2.1+ WITH Linux-syscall-note 15 GPL-1.0+ WITH Linux-syscall-note 14 ((GPL-2.0+ WITH Linux-syscall-note) OR BSD-3-Clause) 5 LGPL-2.0+ WITH Linux-syscall-note 4 LGPL-2.1 WITH Linux-syscall-note 3 ((GPL-2.0 WITH Linux-syscall-note) OR MIT) 3 ((GPL-2.0 WITH Linux-syscall-note) AND MIT) 1 and that resulted in the third patch in this series. - when the two scanners agreed on the detected license(s), that became the concluded license(s). - when there was disagreement between the two scanners (one detected a license but the other didn't, or they both detected different licenses) a manual inspection of the file occurred. - In most cases a manual inspection of the information in the file resulted in a clear resolution of the license that should apply (and which scanner probably needed to revisit its heuristics). - When it was not immediately clear, the license identifier was confirmed with lawyers working with the Linux Foundation. - If there was any question as to the appropriate license identifier, the file was flagged for further research and to be revisited later in time. In total, over 70 hours of logged manual review was done on the spreadsheet to determine the SPDX license identifiers to apply to the source files by Kate, Philippe, Thomas and, in some cases, confirmation by lawyers working with the Linux Foundation. Kate also obtained a third independent scan of the 4.13 code base from FOSSology, and compared selected files where the other two scanners disagreed against that SPDX file, to see if there was new insights. The Windriver scanner is based on an older version of FOSSology in part, so they are related. Thomas did random spot checks in about 500 files from the spreadsheets for the uapi headers and agreed with SPDX license identifier in the files he inspected. For the non-uapi files Thomas did random spot checks in about 15000 files. In initial set of patches against 4.14-rc6, 3 files were found to have copy/paste license identifier errors, and have been fixed to reflect the correct identifier. Additionally Philippe spent 10 hours this week doing a detailed manual inspection and review of the 12,461 patched files from the initial patch version early this week with: - a full scancode scan run, collecting the matched texts, detected license ids and scores - reviewing anything where there was a license detected (about 500+ files) to ensure that the applied SPDX license was correct - reviewing anything where there was no detection but the patch license was not GPL-2.0 WITH Linux-syscall-note to ensure that the applied SPDX license was correct This produced a worksheet with 20 files needing minor correction. This worksheet was then exported into 3 different .csv files for the different types of files to be modified. These .csv files were then reviewed by Greg. Thomas wrote a script to parse the csv files and add the proper SPDX tag to the file, in the format that the file expected. This script was further refined by Greg based on the output to detect more types of files automatically and to distinguish between header and source .c files (which need different comment types.) Finally Greg ran the script using the .csv files to generate the patches. Reviewed-by: Kate Stewart <kstewart@linuxfoundation.org> Reviewed-by: Philippe Ombredanne <pombredanne@nexb.com> Reviewed-by: Thomas Gleixner <tglx@linutronix.de> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org> |
||
|
|
4353083761 |
trace: Add snapshot of ipc_logging driver
This snapshot is taken as of msm-4.9 'commit <089d1cb5176d>
("Merge "spcom: ignore CONNECTED notification while closing
the channel"")'.
In addition, remove unnecessary out of memory prints.
CRs-Fixed: 2093992
Change-Id: Id6e4a3659cb43db704237d55aae5e95c9d74e0de
Signed-off-by: Chris Lew <clew@codeaurora.org>
|
||
|
|
517a4f6424 |
Merge remote-tracking branch 'remotes/origin/tmp-eec8df2' into msm-next
* remotes/origin/tmp-eec8df2: Linux 4.13-rc3 NFSv4.1: Fix a race where CB_NOTIFY_LOCK fails to wake a waiter lightnvm: pblk: advance bio according to lba index arm64: mmu: Place guard page after mapping of kernel image x86/boot: Disable the address-of-packed-member compiler warning drm/i915: Fix bad comparison in skl_compute_plane_wm. drm/i915: Force CPU synchronisation even if userspace requests ASYNC drm/i915: Only skip updating execobject.offset after error drm/i915: Only mark the execobject as pinned on success drm/i915: Remove assertion from raw __i915_vma_unpin() drm/i915/cnl: Fix loadgen select programming on ddi vswing sequence drm/i915: Fix scaler init during CRTC HW state readout drm/i915/selftests: Fix an error handling path in 'mock_gem_device()' drm/i915: Unbreak gpu reset vs. modeset locking xen: dont fiddle with event channel masking in suspend/resume xen: selfballoon: remove unnecessary static in frontswap_selfshrink() xen: Drop un-informative message during boot NFS: Optimize fallocate by refreshing mapping when needed. NFS: invalidate file size when taking a lock. gpu: host1x: Free the IOMMU domain when there is no device to attach Documentation: dw-mshc: deprecate num-slots mmc: dw_mmc: fix the wrong condition check of getting num-slots from DT genirq/cpuhotplug: Revert "Set force affinity flag on hotplug migration" drivers/perf: arm_pmu: Request PMU SPIs with IRQF_PER_CPU drm/i915: Fix cursor updates on some platforms drm/i915: Fix user ptr check size in eb_relocate_vma() powerpc/mm/hash: Free the subpage_prot_table correctly drm: exynos: mark pm functions as __maybe_unused drm/exynos: select CEC_CORE if CEC_NOTIFIER drm/exynos/hdmi: fix disable sequence drm/exynos: mic: add a bridge at probe drm/exynos/dsi: Remove error handling for bridge_node DT parsing drm/exynos: dsi: do not try to find bridge drm: exynos: hdmi: make of_device_ids const. drm: exynos: constify mixer_match_types and *_mxr_drv_data. exynos_drm: Clean up duplicated assignment in exynos_drm_driver NFS: Use raw NFS access mask in nfs4_opendata_access() dm, dax: Make sure dm_dax_flush() is called if device supports it dm verity fec: fix GFP flags used with mempool_alloc() dm zoned: use GFP_NOIO in I/O path KVM: LAPIC: Fix reentrancy issues with preempt notifiers tools/kvm_stat: add '-f help' to get the available event list tools/kvm_stat: use variables instead of hard paths in help output KVM: nVMX: Fix loss of L2's NMI blocking state KVM: nVMX: Fix posted intr delivery when vcpu is in guest mode x86: irq: Define a global vector for nested posted interrupts KVM: x86: do mask out upper bits of PAE CR3 KVM: make pid available for uevents without debugfs nvme: validate admin queue before unquiesce xfs: fix multi-AG deadlock in xfs_bunmapi arm64: sysreg: Fix unprotected macro argmuent in write_sysreg perf: qcom_l2: fix column exclusion check powerpc/Makefile: Fix ld version check with 64-bit LE-only toolchain powerpc/pseries: Fix of_node_put() underflow during reconfig remove powerpc/mm/radix: Workaround prefetch issue with KVM MD: fix warnning for UP case parisc: Extend disabled preemption in copy_user_page parisc: Prevent TLB speculation on flushed pages on CPUs that only support equivalent aliases ALSA: hda - Add mute led support for HP ProBook 440 G4 drm/amd/powerplay: fix AVFS voltage offset for Vega10 drm/amdgpu/gfx9: simplify and fix GRBM index selection drm/amdgpu: Fix blocking in RCU critical section(v2) nbd: clear disconnected on reconnect parisc: Suspend lockup detectors before system halt parisc: Show DIMM slot number which holds broken memory module dm zoned: remove test for impossible REQ_OP_FLUSH conditions dm raid: bump target version dm raid: avoid mddev->suspended access dm raid: fix activation check in validate_raid_redundancy() dm raid: remove WARN_ON() in raid10_md_layout_to_format() parisc: Add function to return DIMM slot of physical address parisc: Fix crash when calling PDC_PAT_MEM PDT firmware function nvme-pci: fix HMB size calculation nvme-fc: revise TRADDR parsing nvme-fc: address target disconnect race conditions in fcp io submit nvme: fabrics commands should use the fctype field for data direction nvme: also provide a UUID in the WWID sysfs attribute xfs: check that dir block entries don't off the end of the buffer xen/blkfront: always allocate grants first from per-queue persistent grants xen-blkfront: fix mq start/stop race dm bufio: fix error code in dm_bufio_write_dirty_buffers() dm integrity: test for corrupted disk format during table load dm integrity: WARN_ON if variables representing journal usage get out of sync virtio-net: fix module unloading virtio-balloon: coding format cleanup virtio-balloon: deflate via a page list virtio_blk: Use sysfs_match_string() helper KVM: s390: take srcu lock when getting/setting storage keys x86/efi: Fix reboot_mode when EFI runtime services are disabled sched/wait: Clean up some documentation warnings sched/core: Fix some documentation build warnings x86/boot: #undef memcpy() et al in string.c arm64/lib: copy_page: use consistent prefetch stride drm/nouveau/bar/gf100: fix access to upper half of BAR2 drm/nouveau/disp/nv50-: bump max chans to 21 drm/i915/gvt: Extend KBL platform support in GVT-g ACPI: NUMA: Fix typo in the full name of SRAT ACPI: NUMA: add missing include in acpi_numa.h blk-mq: map queues to all present CPUs uuid: remove uuid_be thunderbolt: use uuid_t instead of uuid_be HID: ortek: add one more buggy device xfs: fix quotacheck dquot id overflow infinite loop md/raid5: add thread_group worker async_tx_issue_pending_all block: disable runtime-pm for blk-mq xen-blkfront: Fix handling of non-supported operations btrfs: round down size diff when shrinking/growing device Btrfs: fix early ENOSPC due to delalloc btrfs: fix lockup in find_free_extent with read-only block groups ARM: 8687/1: signal: Fix unparseable iwmmxt_sigframe in uc_regspace[] ARM: 8686/1: iwmmxt: Add missing __user annotations to sigframe accessors ANDROID: netfilter: nf_socket: Use refcount_inc() instead of atomic_inc() kprobes/x86: Release insn_slot in failure path perf/x86/intel/uncore: Fix missing marker for skx_uncore_cha_extra_regs perf/x86/intel/uncore: Fix SKX CHA event extra regs perf/x86/intel/uncore: Remove invalid Skylake server CHA filter field perf/x86/intel/uncore: Fix Skylake server CHA LLC_LOOKUP event umask perf/x86/intel/uncore: Fix Skylake server PCU PMU event format perf/x86/intel/uncore: Fix Skylake UPI PMU event masks KVM: VMX: remove unused field KVM: PPC: Book3S HV: Fix host crash on changing HPT size KVM: PPC: Book3S HV: Enable TM before accessing TM registers drm/nouveau/kms: remove call to drm_crtc_vblank_off() during unload/suspend drm/nouveau/kms/nv50: update vblank state in response to modeset actions drm/nouveau/disp: add tv encoders to output resource mapping drm/nouveau/i2c/gf119-: add support for address-only transactions drm/rockchip: fix Kconfig dependencies parisc: regenerate defconfig files parisc: pdc_stable: constify attribute_group structures. parisc: Merge millicode routines via linker script parisc: Disable further stack checks when panic occurs during stack check nbd: only set sndtimeo if we have a timeout set nbd: take tx_lock before disconnecting nbd: allow multiple disconnects to be sent of: irq: fix of_irq_to_resource() error check md: simplify code with bio_io_error md/raid1: fix writebehind bio clone md: raid1-10: move raid1/raid10 common code into raid1-10.c md: raid1/raid10: initialize bvec table via bio_add_page() md: remove 'idx' from 'struct resync_pages' HID: usbhid: fix "always poll" quirk drm/dp: Don't trust drm_dp_downstream_id() drm/dp: Fix read pointer for drm_dp_downsteam_debug() ALSA: hda/realtek - No loopback on ALC225/ALC295 codec ALSA: hda/realtek - Update headset mode for ALC225 uuid: fix incorrect uuid_equal conversion in test_uuid_test xfs: check _alloc_read_agf buffer pointer before using xfs: set firstfsb to NULLFSBLOCK before feeding it to _bmapi_write xfs: check _btree_check_block value arm64/numa: Drop duplicate message scripts/dtc: dtx_diff - update include dts paths to match build ACPI / PM / EC: Flush all EC work in acpi_freeze_sync() ARM: NOMMU: Wire-up default DMA interface dma-coherent: introduce interface for default DMA pool ARM: kexec: fix failure to boot crash kernel ARM: kexec: avoid allocating crashkernel region outside lowmem perf: Convert to using %pOF instead of full_name arm64: Convert to using %pOF instead of full_name arm64: traps: disable irq in die() arm64: atomics: Remove '&' from '+&' asm constraint in lse atomics arm64: uaccess: Remove redundant __force from addr cast in __range_ok dm integrity: use plugging when writing the journal dm integrity: fix inefficient allocation of journal space Btrfs: fix dir item validation when replaying xattr deletes ACPI / EC: Add parameter to force disable the GPE on suspend jfs: preserve i_mode if __jfs_set_acl() fails jfs: Don't clear SGID when inheriting ACLs ALSA: fm801: Initialize chip after IRQ handler is registered crypto: authencesn - Fix digest_null crash crypto: brcm - remove BCM_PDC_MBOX dependency in Kconfig Documentation/bindings: crypto: remove the dma-mask property crypto: inside-secure - do not parse the dma mask from dt crypto: cavium/nitrox - Change in firmware path. crypto: brcm - Fix SHA3-512 algorithm failure drm/vmwgfx: constify pci_device_id. drm/vmwgfx: Fix gcc-7.1.1 warning drm/vmwgfx: Fix cursor hotspot issue with Wayland on Fedora drm/vmwgfx: Limit max desktop dimensions to 8Kx8K drm/vmwgfx: dma-buf: Constify ttm_place structures. drm/vmwgfx: fix comment mistake for vmw_cmd_dx_set_index_buffer() drm/vmwgfx: Use dma_pool_zalloc drm/vmwgfx: Fix handling of errors returned by 'vmw_cotable_alloc()' drm/vmwgfx: Fix NULL pointer comparison scsi: sg: fix static checker warning in sg_is_valid_dxfer scsi: smartpqi: limit transfer length to 1MB scsi: hpsa: limit transfer length to 1MB mmc: host: omap_hsmmc: remove unused platform callbacks ARM: OMAP2+: hsmmc.c: Remove dead code mmc: sunxi: Keep default timing phase settings for new timing mode ALSA: hda/realtek - Update headset mode for ALC298 drm/i915/gvt: Fix the vblank timer close issue after shutdown VMs in reverse HACK: ANDROID: Revert "usb: gadget: f_fs: Fix wrong check on reserved1 of OS_DESC_EXT_COMPAT" HACK: ANDROID: goldfish_sync_timeline: Rename fence to dma_fence ANDROID: hid: uhid: use ll_open_count for refcounting ANDROID: ppp: pppolac: pppopns: Add (u8 *) cast to skb_push() ANDROID: input: keychord: rename waitq.task_list to waitq.head ANDROID: arm64: fix dtb appended target builds ANDROID: fiq_debugger: Include <linux/sched/signal.h> ANDROID: cpufreq_interactive: Add missing includes ANDROID: uid_sys_stats: Remove obsolete cputime type and helpers ANDROID: sched_param: Include uapi/linux/sched/types.h> ANDROID: mmc: block: rename rqc to new_req ANDROID: USF: Fix MMC/UFS IO latency histograms ANDROID: sdcardfs: fault and page_mkwrite take only vmf ANDROID: sdcardfs: Fix sdcardfs_getattr() ANDROID: vfs: Fix permission2 ANDROID: xt_qtaguid: Fix socket lookup ANDROID: idle_notifier: Add generic idle notifiers ANDROID: task_mmu: fix get_user_pages_remote() call ANDROID: netfilter: xt_quota2: fix quota2_log() call ANDROID: ktime: Fix ktime references ANDROID: android-base.cfg: remove CONFIG_CGROUP_DEBUG ANDROID: sdcardfs: use mount_nodev and fix a issue in sdcardfs_kill_sb ANDROID: sdcardfs: remove dead function open_flags_to_access_mode() ANDROID: android-base.cfg: split out arm64-specific configs ANDROID: uid_sys_stats: check previous uid_entry before call find_or_register_uid ANDROID: sdcardfs: d_splice_alias can return error values ANDROID: Update init/do_mounts_dm.c to the latest ChromiumOS version. ANDROID: Kconfig: add depends for UID_SYS_STATS ANDROID: hid: uhid: implement refcount for open and close ANDROID: cpufreq: system panic when switch interactive governor frequently ANDROID: mnt: Fix next_descendent ANDROID: uid_sys_stats: defer io stats calulation for dead tasks ANDROID: sdcardfs: Check for NULL in revalidate ANDROID: Add CGROUP_BPF to android base config ANDROID: sdcardfs: Move top to its own struct ANDROID: usb: gadget: fix NULL pointer issue in mtp_read() ANDROID: usb: f_mtp: return error code if transfer error in receive_file_work function ANDROID: memory_state_time: fix undefined behavior with missing DT properties ANDROID: rfkill: fix unused function warning ANDROID: make PF_KEY SHA256 use RFC-compliant truncation. ANDROID: sdcardfs: fix sdcardfs_destroy_inode for the inode RCU approach ANDROID: android-base.cfg: remove NETFILTER_XT_MATCH_QUOTA2_LOG ANDROID: sdcardfs: Don't iput if we didn't igrab ANDROID: sdcardfs: Call lower fs's revalidate ANDROID: sdcardfs: Avoid setting GIDs outside of valid ranges ANDROID: sdcardfs: Copy meta-data from lower inode Android: sdcardfs: Don't do d_add for lower fs ANDROID: sdcardfs: Use filesystem specific hash ANDROID: Add untag hacks to inet_release function ANDROID: android-base.cfg: remove USB_OTG_WAKELOCK ANDROID: android-base.cfg: remove defunct options ANDROID: usb: gadget: f_audio_source: disable the CPU C-states upon playback ANDROID: usb: gadget: f_mtp: Set 0xFFFFFFFF in mtp header ContainerLength field ANDROID: net: pppolac/pppopns: Add back the msg_flags ANDROID: xt_qtaguid: don't check if embedded arrays are NULL ANDROID: uid_sys_stats: fix access of task_uid(task) ANDROID: uid_sys_stats: reduce update_io_stats overhead ANDROID: usb: gadget: fix MTP enumeration issue under super speed mode Android: sdcardfs: Don't complain in fixup_lower_ownership ANDROID: sdcardfs: ->iget fixes Android: sdcardfs: Change cache GID value ANDROID: sdcardfs: Directly pass lower file for mmap ANDROID: sdcardfs: update module info ANDROID: sdcardfs: use d_splice_alias ANDROID: sdcardfs: add read_iter/write_iter opeations ANDROID: sdcardfs: fix ->llseek to update upper and lower offset ANDROID: sdcardfs: copy lower inode attributes in ->ioctl ANDROID: sdcardfs: remove unnecessary call to do_munmap android: base-cfg: enable CONFIG_INET_DIAG_DESTROY ANDROID: android-base.cfg: properly sort the file ANDROID: binder: add hwbinder,vndbinder to BINDER_DEVICES. ANDROID: fix up missing android-base.cfg option ANDROID: remove base config rule for UID_CPUTIME ANDROID: ARM64: Allow to choose appended kernel image ANDROID: sdcardfs: Fix style issues in macros ANDROID: sdcardfs: Use seq_puts over seq_printf ANDROID: sdcardfs: Use to kstrout ANDROID: sdcardfs: Use pr_[...] instead of printk ANDROID: sdcardfs: remove unneeded null check ANDROID: sdcardfs: Fix style issues with comments ANDROID: sdcardfs: Fix formatting ANDROID: sdcardfs: correct order of descriptors ANDROID: fix the deadlock in xt_qtaguid when enable DDEBUG ANDROID: mmc: core: export emmc revision ANDROID: sdcardfs: Fix gid issue ANDROID: sdcardfs: Remove uninformative prints ANDROID: sdcardfs: move path_put outside of spinlock ANDROID: sdcardfs: Use case insensitive hash function ANDROID: sdcardfs: declare MODULE_ALIAS_FS ANDROID: sdcardfs: Get the blocksize from the lower fs ANDROID: sdcardfs: Use d_invalidate instead of drop_recurisve ANDROID: sdcardfs: Switch to internal case insensitive compare ANDROID: sdcardfs: Use spin_lock_nested ANDROID: sdcardfs: Replace get/put with d_lock ANDROID: sdcardfs: rate limit warning print ANDROID: sdcardfs: Fix case insensitive lookup ANDROID: sdcardfs: support direct-IO (DIO) operations ANDROID: sdcardfs: implement vm_ops->page_mkwrite ANDROID: sdcardfs: Don't bother deleting freelist ANDROID: sdcardfs: Add missing path_put ANDROID: sdcardfs: Fix incorrect hash ANDROID: export security_path_chown ANDROID: sdcardfs: Switch strcasecmp for internal call ANDROID: sdcardfs: switch to full_name_hash and qstr ANDROID: sdcardfs: Add GID Derivation to sdcardfs ANDROID: sdcardfs: Remove redundant operation ANDROID: sdcardfs: add support for user permission isolation ANDROID: sdcardfs: Refactor configfs interface ANDROID: sdcardfs: Allow non-owners to touch ANDROID: binder: add padding to binder_fd_array_object. ANDROID: binder: use group leader instead of open thread ANDROID: android-verity: do not compile as independent module ANDROID: power: align wakeup_sources format ANDROID: dm: android-verity: allow disable dm-verity for Treble VTS ANDROID: uid_sys_stats: change to use rt_mutex ANDROID: uid_sys_stats: account for fsync syscalls ANDROID: sched: add a counter to track fsync ANDROID: uid_sys_stats: fix negative write bytes. ANDROID: uid_sys_stats: allow writing same state ANDROID: uid_sys_stats: rename uid_cputime.c to uid_sys_stats.c ANDROID: uid_cputime: add per-uid IO usage accounting ANDROID: usb: gadget: f_accessory: Fix for UsbAccessory clean unbind. ANDROID: nf: IDLETIMER: Use fullsock when querying uid ANDROID: Replace spaces by '_' for some android filesystem tracepoints. ANDROID: nf: IDLETIMER: Fix use after free condition during work ANDROID: dm: android-verity: fix table_make_digest() error handling ANDROID: ext4 crypto: Disables zeroing on truncation when there's no key ANDROID: Refactor fs readpage/write tracepoints. ANDROID: goldfish_sync: 32 max cmds to save stack ANDROID: goldfish_sync: Fix sync_file_obj is NULL but dereferenced problem ANDROID: goldfish_sync: Isolate single module to fix compilation ANDROID: goldfish_sync: update defconfig for 4.9-compatible version ANDROID: goldfish_sync: upgrade to new fence sync api ANDROID: net: ipv6: remove unused variable ifindex in ANDROID: fs: Export vfs_rmdir2 ANDROID: fs: Export free_fs_struct and set_fs_pwd ANDROID: cpufreq: interactive: Use idle-end notifiers RFC: FROMLIST: cpufreq: Add android's 'interactive' governor ANDROID: sdcardfs: eliminate the offset argument to ->direct_IO ANDROID: sdcardfs: make it use new .rename i_op ANDROID: sdcardfs: Propagate dentry down to inode_change_ok() ANDROID: sdcardfs: get rid of 'parent' argument of ->d_compare() ANDROID: sdcardfs: add parent pointer into dentry name hash ANDROID: sdcardfs: use wrappers to access i_mutex ANDROID: mnt: remount should propagate to slaves of slaves ANDROID: sdcardfs: Fix locking issue with permision fix up ANDROID: sdcardfs: Switch ->d_inode to d_inode() ANDROID: sdcardfs: Change magic value ANDROID: sdcardfs: Use per mount permissions ANDROID: sdcardfs: Add gid and mask to private mount data ANDROID: sdcardfs: User new permission2 functions ANDROID: vfs: Add permission2 for filesystems with per mount permissions ANDROID: vfs: Add setattr2 for filesystems with per mount permissions ANDROID: vfs: Allow filesystems to access their private mount data ANDROID: mnt: Add filesystem private data to mount points ANDROID: sdcardfs: Move directory unlock before touch ANDROID: sdcardfs: fix external storage exporting incorrect uid ANDROID: sdcardfs: Added top to sdcardfs_inode_info ANDROID: sdcardfs: Switch package list to RCU ANDROID: sdcardfs: Fix locking for permission fix up ANDROID: sdcardfs: Check for other cases on path lookup ANDROID: sdcardfs: override umask on mkdir and create ANDROID: kernel/configs: base: Enable QUOTA related configs ANDROID: kernel/configs: recommended: Enable MEMORY_STATE_TIME ANDROID: kernel/configs: base: enable UID_CPUTIME ANDROID: kernel/configs: base: restrict access to perf events ANDROID: configs: base: enable configfs gadget functions ANDROID: configs: merge AOSP config fragments ANDROID: Implement memory_state_time, used by qcom,cpubw ANDROID: dm: rebase for 4.9 ANDROID: usb: otg-wakelock: Remove wakelock.h dependencies ANDROID: gpio_matrix: Remove wakelock.h dependencies ANDROID: fiq_debugger: Remove wakelock.h dependencies ANDROID: trace: net: use %pK for kernel pointers ANDROID: fs: FS tracepoints to track IO. ANDROID: MMC/UFS IO Latency Histograms. CHROMIUM: fix warning when releasing active sync point ANDROID: goldfish: disable GOLDFISH_SYNC ANDROID: goldfish: enable CONFIG_INET_DIAG_DESTROY ANDROID: build: fix build config kernel_dir ANDROID: dm verity: add minimum prefetch size ANDROID: build: add build server configs for goldfish ANDROID: video: goldfishfb: fix platform_no_drv_owner.cocci warnings ANDROID: arm64: rename ranchu defconfig to ranchu64 ANDROID: arch: x86: disable pic for Android toolchain ANDROID: goldfish: Add goldfish sync driver ANDROID: goldfish: add ranchu defconfigs ANDROID: goldfish_audio: Clear audio read buffer status after each read ANDROID: goldfish_events: no extra EV_SYN; register goldfish ANDROID: goldfish_fb: Set pixclock = 0 ANDROID: goldfish: Enable ACPI-based enumeration for goldfish audio ANDROID: goldfish: Enable ACPI-based enumeration for goldfish framebuffer ANDROID: video: goldfishfb: add devicetree bindings ANDROID: usb: gadget: function: cleanup: Add blank line after declaration ANDROID: usb: gadget: f_mtp: simplify ptp NULL pointer check ANDROID: usb: gadget: audio_source: fix comparison of distinct pointer types CHROMIUM: cgroups: relax permissions on moving tasks between cgroups ANDROID: dm: android-verity: Remove fec_header location constraint ANDROID: fiq_debugger: Pass task parameter to unwind_frame() ANDROID: input: keyreset: switch to orderly_reboot ANDROID: cpuset: Make cpusets restore on hotplug ANDROID: Don't show empty tag stats for unprivileged uids ANDROID: dm: android-verity: Allow android-verity to be compiled as an independent module ANDROID: dm-verity: adopt changes made to dm callbacks ANDROID: dm verity fec: pack the fec_header structure ANDROID: dm: android-verity: Verify header before fetching table ANDROID: dm: allow adb disable-verity only in userdebug ANDROID: dm: mount as linear target if eng build ANDROID: dm: use default verity public key ANDROID: dm: fix signature verification flag ANDROID: dm: use name_to_dev_t ANDROID: dm: rename dm-linear methods for dm-android-verity ANDROID: dm: Minor cleanup ANDROID: dm: Mounting root as linear device when verity disabled ANDROID: dm-android-verity: Rebase on top of 4.1 ANDROID: dm: Add android verity target ANDROID: dm: fix dm_substitute_devices() ANDROID: dm: Rebase on top of 4.9 CHROMIUM: dm: boot time specification of dm= ANDROID: usb: gadget: f_accessory: remove duplicate endpoint alloc ANDROID: sdcardfs: fix itnull.cocci warnings ANDROID: sdcardfs: Truncate packages_gid.list on overflow ANDROID: netfilter: xt_quota2: make quota2_log work well ANDROID: cpu: send KOBJ_ONLINE event when enabling cpus ANDROID: dm verity fec: add missing release from fec_ktype FROMLIST: security,perf: Allow further restriction of perf_event_open ANDROID: ARM64: Ignore Image-dtb from git point of view ANDROID: arm64: add option to build Image-dtb ANDROID: usb: gadget: f_midi: set fi->f to NULL when free f_midi function ANDROID: xt_qtaguid: Fix panic caused by processing non-full socket. ANDROID: fiq_debugger: Add fiq_debugger.disable option FROMLIST: wlcore: Disable filtering in AP role ANDROID: fiq_debugger: Add option to apply uart overlay by FIQ_DEBUGGER_UART_OVERLAY ANDROID: usb: dual-role: make stub functions inline ANDROID: xt_qtaguid: Fix panic caused by synack processing ANDROID: fuse: Add support for d_canonical_path ANDROID: vfs: change d_canonical_path to take two paths ANDROID: netfilter: xt_qtaguid: seq_printf fixes ANDROID: mmc: Add CONFIG_MMC_SIMULATE_MAX_SPEED ANDROID: dm verity fec: add sysfs attribute fec/corrected ANDROID: mm: Export do_munmap ANDROID: sdcardfs: remove unneeded __init and __exit ANDROID: sdcardfs: Remove unused code ANDROID: fs: Export d_absolute_path ANDROID: sdcardfs: remove effectless config option ANDROID: inotify: Fix erroneous update of bit count ANDROID: fs: sdcardfs: Declare LOOKUP_CASE_INSENSITIVE unconditionally ANDROID: trace: cpufreq: fix typo in min/max cpufreq ANDROID: sdcardfs: Add support for d_canonical_path ANDROID: vfs: add d_canonical_path for stacked filesystem support ANDROID: sdcardfs: Bring up to date with Android M permissions: ANDROID: Changed type-casting in packagelist management ANDROID: Port of sdcardfs to 4.4 ANDROID: Included sdcardfs source code for kernel 3.0 ANDROID: usb: gadget: Add support for MTP OS desc CHROMIUM: usb: gadget: f_accessory: add .raw_request callback CHROMIUM: usb: gadget: audio_source: add .free_func callback CHROMIUM: usb: gadget: f_mtp: fix usb_ss_ep_comp_descriptor CHROMIUM: usb: gadget: f_mtp: Add SuperSpeed support ANDROID: power: Provide dummy log_suspend_abort_reason() if SUSPEND is disabled ANDROID: PM / suspend: Add dependency on RTC_LIB ANDROID: net: pppolac/pppopns: Replace msg.msg_iov with iov_iter_kvec() ANDROID: mmc: sdio: Disable retuning in sdio_reset_comm() ANDROID: usb: gadget: f_mtp: don't use le16 for u8 field ANDROID: mmc: move to a SCHED_FIFO thread ANDROID: skip building drivers as modules ANDROID: wakeup: Add the guard condition for len in pm_get_active_wakeup_sources ANDROID: epoll: use freezable blocking call ANDROID: Fix for in kernel emergency remount when loop mounts are used ANDROID: kbuild: Makefile.clean: make Kbuild and Makefile optional ANDROID: kbuild: make it possible to specify the module output dir ANDROID: ext4: Add support for FIDTRIM, a best-effort ioctl for deep discard trim ANDROID: rtc-palmas: correct for bcd year ANDROID: w1: ds2482: Manage SLPZ pin sleep state ANDROID: fuse: Freeze client on suspend when request sent to userspace ANDROID: serial_core: Add wake_peer uart operation ANDROID: mm: add a field to store names for private anonymous memory ANDROID: pstore/ram: Add ramoops_console_write_buf api ANDROID: pstore: Update Documentation/android.txt ANDROID: initramfs: Add skip_initramfs command line option ANDROID: of: Fix build warnings ANDROID: of: fix CONFIG_CMDLINE_EXTEND ANDROID: ARM64: copy CONFIG_CMDLINE_EXTEND from ARM ANDROID: of: Support CONFIG_CMDLINE_EXTEND config option ANDROID: ARM: decompressor: Flush tlb before swiching domain 0 to client mode ANDROID: ARM64: add option to build Image.gz/dtb combo ANDROID: ARM: convert build of appended dtb zImage to list of dtbs ANDROID: ARM: add config option to build zImage/dtb combo ANDROID: ARM: Fix dtb list when DTB_IMAGE_NAMES is empty ANDROID: arm64: pass return address to dma_common_contiguous_remap ANDROID: arch: arm64: force -fno-pic ANDROID: arm64: process: dump memory around registers when displaying regs ANDROID: arm64: check for upper PAGE_SHIFT bits in pfn_valid() ANDROID: ARM: fault: assume no context when IRQs are disabled during data abort. ANDROID: ARM: Fix "Make low-level printk work" to use a separate config option ANDROID: ARM: add option to flush console before reboot ANDROID: ARM: Make low-level printk work ANDROID: Optionally flush entire dcache from v6_dma_flush_range ANDROID: process: Add display of memory around registers when displaying regs. ANDROID: security: Add proper checks for Android specific capability checks ANDROID: uid_cputime: skip power reporting per uid for now ANDROID: uid_cputime: Check for the range while removing range of UIDs. ANDROID: uid_cputime: Iterates over all the threads instead of processes. ANDROID: uid_cputime: fix cputime overflow ANDROID: uid_cputime: Avoids double accounting of process stime, utime and cpu_power in task exit. ANDROID: uid_cputime: Extends the cputime functionality to report power per uid ANDROID: proc: uid_cputime: fix show_uid_stat permission ANDROID: proc: uid_cputime: create uids from kuids ANDROID: proc: uid: Adds accounting for the cputimes per uid. ANDROID: fixup! proc: make oom adjustment files user read-only ANDROID: proc: make oom adjustment files user read-only ANDROID: proc: smaps: Allow smaps access for CAP_SYS_RESOURCE ANDROID: wakeup_reason: use vsnprintf instead of snsprintf for vargs. ANDROID: power: wakeup_reason: fix suspend time reporting ANDROID: wakeup: Add last wake up source logging for suspend abort reason. ANDROID: Power: Report suspend times from last_suspend_time ANDROID: Make suspend abort reason logging depend on CONFIG_PM_SLEEP ANDROID: power: Add check_wakeup_reason() to verify wakeup source irq ANDROID: power: Adds functionality to log the last suspend abort reason. ANDROID: power: Avoids bogus error messages for the suspend aborts. ANDROID: power: Add property CHARGE_COUNTER_EXT and 64-bit precision properties ANDROID: Power: Changes the permission to read only for sysfs file /sys/kernel/wakeup_reasons/last_resume_reason ANDROID: power: wakeup_reason: rename irq_count to irqcount ANDROID: Power: Add guard condition for maximum wakeup reasons ANDROID: POWER: fix compile warnings in log_wakeup_reason ANDROID: Power: add an API to log wakeup reasons ANDROID: PM / Suspend: Print wall time at suspend entry and exit ANDROID: power: power_supply: add POWER_SUPPLY_PROP_CHARGE_ENABLED ANDROID: power: power_supply: add POWER_SUPPLY_PROP_USB_OTG ANDROID: power: power_supply: move POWER_SUPPLY_PROP_USB_HC to type 'int' order ANDROID: power_supply: Add custom property for USB High Current mode ANDROID: trace: power: add trace_clock_set_parent ANDROID: trace: cpufreq: Add tracing for min/max cpufreq ANDROID: trace: fix compilation for 4.1 ANDROID: trace/events: fix gpu event timestamp formatting ANDROID: trace: add non-hierarchical function_graph option ANDROID: trace/events: add gpu trace events ANDROID: sync: add Documentation/sync.txt ANDROID: ARM: Call idle notifiers ANDROID: cpuidle: governor: menu: don't use loadavg ANDROID: sched: add sched blocked tracepoint which dumps out context of sleep. ANDROID: fiq_debugger: Build fixes for 4.1 ANDROID: fiq_debugger: Add fiq_watchdog_triggered api ANDROID: fiq_debugger: Call fiq_debugger_printf through a function pointer from cpu specific code ANDROID: fiq_debugger: add ARM64 support ANDROID: fiq_debugger: split arm support into fiq_debugger_arm.c ANDROID: fiq_debugger: use pt_regs for registers ANDROID: fiq_debugger: allow compiling without CONFIG_FIQ_GLUE ANDROID: fiq_debugger: rename debug->fiq_debugger ANDROID: fiq_debugger: move into drivers/staging/android/fiq_debugger/ ANDROID: ARM: fiq_glue: Add custom fiq return handler api. ANDROID: ARM: kgdb: ignore breakpoint instructions from user mode ANDROID: ARM: fiq_debugger: Update tty code for 3.9 ANDROID: ARM: fiq_debugger: Use kmsg_dumper to dump kernel logs ANDROID: ARM: fiq_debugger: Fix to compile on 3.7 ANDROID: ARM: fiq_debugger: fix uninitialised spin_lock. ANDROID: ARM: fiq_debugger: lock between tty and console writes ANDROID: ARM: fiq_debugger: add process context reboot command ANDROID: ARM: fiq_debugger: fix multiple consoles and make it a preferred console ANDROID: kdb: support new lines without carriage returns ANDROID: ARM: fiq_debugger: add support for kgdb ANDROID: ARM: fiq_debugger: add debug_putc ANDROID: ARM: fiq_debugger: add support for reboot commands ANDROID: ARM: fiq_debugger: fix compiling for v3.3 ANDROID: ARM: Add generic fiq serial debugger ANDROID: ARM: Add fiq_glue ANDROID: fix false disconnect due to a signal sent to the reading process ANDROID: usb: gadget: cleanup: fix unused variable and function warnings ANDROID: usb: gadget: build audio_source function only if SND is enabled ANDROID: usb: gadget: configfs: handle gadget reset request for android ANDROID: usb: gadget: create F_midi device ANDROID: usb: gadget: Add device attribute to determine gadget state ANDROID: usb: phy: fix dual role sysfs build if kernel modules are supported ANDROID: usb: phy: Dual role sysfs class definition ANDROID: usb: gadget: fix NULL ptr derefer while symlinking PTP func ANDROID: usb:gadget:Add "state" attribute to android_device ANDROID: usb: gadget: Do not disconnect unregistered dev ANDROID: usb: gadget: Relocate f_accessory ANDROID: usb: gadget: Accessory:Migrate to USB_FUNCTION API ANDROID: usb: gadget: Move gadget functions code ANDROID: usb:gadget:audio_source: Move to USB_FUNCTION API ANDROID: usb: gadget: Add function devices to the parent ANDROID: usb: gadget: f_audio_source:replace deprecated API ANDROID: usb: gadget: check for accessory device before disconnecting HIDs ANDROID: usb: gadget: Add Uevent to notify userspace ANDROID: usb: gadget: configfs: Add usb_function ptr to fi struct ANDROID: usb: gadget: mtp/ptp: Migrate functions to the USB_FUNCTION interface ANDROID: usb: gadget: f_audio_source: Fixed USB Audio Class Interface Descriptor ANDROID: usb: gadget: f_audio_source: change max ISO packet size ANDROID: usb: gadget: f_accessory: Enabled Zero Length Packet (ZLP) for acc_write ANDROID: drivers: usb: gadget: 64-bit related type fixes ANDROID: usb: gadget: f_accessory: move userspace interface to uapi ANDROID: usb: gadget: f_mtp: move userspace interface to uapi ANDROID: USB: remove duplicate out endpoint creation in MTP mode ANDROID: usb: gadget: Fix android gadget driver build ANDROID: usb: gadget: Fixes and hacks to make android usb gadget compile on 3.8 ANDROID: usb: otg: otg-wakelock: Fix build for 3.7 ANDROID: usb: gadget: accessory: Fix section mismatch (again) ANDROID: USB: gadget: f_audio_source: New gadget driver for audio output ANDROID: USB: gadget: f_accessory: Add support for HID input devices ANDROID: USB: gadget: Add ACCESSORY_SET_AUDIO_MODE control request and ioctl ANDROID: usb: gadget: accessory: Fix section mismatch ANDROID: usb: otg: otg-wakelock: Fix build for 3.4 ANDROID: usb: gadget: adb: Only enable the gadget when adbd is ready ANDROID: usb: gadget: adb: do not set error flag when dequeuing req ANDROID: usb: gadget: adb: allow freezing in adb_read ANDROID: usb: gadget: accessory: Add Android Accessory function ANDROID: usb: gadget: adb: Add ADB function ANDROID: usb: gadget: mtp: Add MTP/PTP function ANDROID: usb: otg: otg-wakelock: fix build for 3.3 ANDROID: usb: otg: Temporarily grab wakelock on charger and disconnect events ANDROID: USB: OTG: Take wakelock when VBUS present ANDROID: wlan: Add get_wake_irq functionality ANDROID: Add flags parameter to get_country_code template ANDROID: net: wireless: Add get_country_code functionality to platform ANDROID: network: wireless: Add get_mac_addr functionality to platform ANDROID: wlan: Create generic wlan platform data header ANDROID: net: wireless: Decrease scan entry expiration to avoid stall results ANDROID: bridge: Have tx_bytes count headers like rx_bytes. ANDROID: rfkill: Introduce CONFIG_RFKILL_PM and use instead of CONFIG_PM to power down ANDROID: tcp: fix tcp_default_init_rwnd() for 4.1 ANDROID: net: support marking accepting TCP sockets ANDROID: tcp: add a sysctl to config the tcp_default_init_rwnd ANDROID: xt_qtaguid: fix a race condition in if_tag_stat_update ANDROID: netfilter: xt_qtaguid/socket: build fixes for 4.4 ANDROID: netfilter: xt_qtaguid: xt_socket: build fixes ANDROID: net: xt_socket/nf_socket: fix refcount underflow and crash ANDROID: xt_qtaguid: use sock_gen_put() instead of xt_socket_put_sk() ANDROID: xt_qtaguid: Use sk_callback_lock read locks before reading sk->sk_socket ANDROID: xt_qtaguid: fix broken uid/gid range check ANDROID: netfilter: Build fixups - kuid/kguid changes & xt_socket_get/put_sk ANDROID: net: ipv6: autoconf routes into per-device tables ANDROID: nf: IDLETIMER: Fix broken uid field in the msg ANDROID: nf: IDLETIMER: Adds the uid field in the msg ANDROID: netfilter: fix seq_printf type mismatch warning ANDROID: nf: Remove compilation error caused by e8430cbed3ef15fdb1ac26cfd020e010aa5f1c35 ANDROID: nf: IDLETIMER: time-stamp and suspend/resume handling. ANDROID: xt_qtaguid: Fix boot panic ANDROID: net: kuid/kguid build fixes ANDROID: netfilter: ipv6: fix crash caused by ipv6_find_hdr() ANDROID: netfilter: xt_qtaguid: 64-bit warning fixes ANDROID: netfilter: xt_qtaguid: fix memory leak in seq_file handlers ANDROID: netfilter: xt_qtaguid: fix bad tcp_time_wait sock handling ANDROID: netfilter: xt_qtaguid: 3.10 fixes ANDROID: netfilter: xt_quota2: 3.10 fixes. ANDROID: netfilter: qtaguid: rate limit some of the printks ANDROID: netfilter: xt_qtaguid: Allow tracking loopback ANDROID: netfilter: xt_qtaguid: extend iface stat to report protocols ANDROID: netfilter: xt_qtaguid: remove AID_* dependency for access control ANDROID: netfilter: qtaguid: Don't BUG_ON if create_if_tag_stat fails ANDROID: netfilter: xt_qtaguid: fix error exit that would keep a spinlock. ANDROID: netfilter: xt_qtaguid: report only uid tags to non-privileged processes ANDROID: netfilter: xt_qtaguid: start tracking iface rx/tx at low level ANDROID: netfilter: xt_IDLETIMER: Add new netlink msg type ANDROID: netfilter: xt_qtaguid: fix ipv6 protocol lookup ANDROID: netfilter: qtaguid: initialize a local var to keep compiler happy. ANDROID: netfilter: fixup the quota2, and enable. ANDROID: netfilter: adding the original quota2 from xtables-addons ANDROID: netfilter: add xt_qtaguid matching module ANDROID: net: PPPoPNS and PPPoLAC build fixes for 4.4 ANDROID: Hack: net: PPPoPNS and PPPoLAC build fixes for 4.1 ANDROID: net: pppopns: pppolac: fix sendmsg function calls ANDROID: net: PPPoPNS: Remove length argument from data_ready ANDROID: net: move PPPoLAC and PPPoPNS headers to uapi ANDROID: Include if_pppolac.h and if_pppopns.h into header-y target ANDROID: net: PPPoPNS and PPPoLAC update to use PPP_MRU instead of PPP_MRU ANDROID: net: Reorder incoming packets in PPPoLAC and PPPoPNS. ANDROID: net: PPPoPNS and PPPoLAC fixes. ANDROID: net: add PPP on PPTP Network Server (PPPoPNS) driver. ANDROID: net: add PPP on L2TP Access Concentrator (PPPoLAC) driver. ANDROID: sysfs_net_ipv4: Add sysfs-based knobs for controlling TCP window size ANDROID: net: Only NET_ADMIN is allowed to fully control TUN interfaces. ANDROID: net: Replace AID_NET_RAW checks with capable(CAP_NET_RAW). ANDROID: security: Add AID_NET_RAW and AID_NET_ADMIN capability check in cap_capable(). ANDROID: Paranoid network. ANDROID: Add android_aid.h ANDROID: fs: block_dump: Don't display inode changes if block_dump < 2 ANDROID: mmc: core: Remove stray CONFIG_EXPERIMENTAL dependencies ANDROID: mmc: Add "ignore mmc pm notify" functionality ANDROID: mmc: sdio: Fix sdio_reset_comm for sync ANDROID: mmc: sdio: fix sdio_reset_comm() voltage selection ANDROID: mmc: sdio: Fix enable_hs and enable_wide in sdio_reset_comm() ANDROID: mmc: sdio: Add high speed support to sdio_reset_comm() ANDROID: mmc: sdio: Claim host in sdio_reset_comm() ANDROID: mmc: Add new API call 'sdio_reset_comm' for resetting communication with an SDIO device ANDROID: mmc: Add sdio_readb_ext() function ANDROID: mmc: Add concept of an 'embedded' SDIO device. ANDROID: mmc: sd: Add retries in re-detection ANDROID: mmc: sd: When resuming, try a little harder to init the card ANDROID: mmc: sd: Add new CONFIG_MMC_PARANOID_SD_INIT for enabling retries during SD detection ANDROID: mtd: nand: Allow NAND chip ids to be included standalone. ANDROID: gpio_input: convert from wakelocks to wakeup sources ANDROID: input: Made keyreset more robust ANDROID: input: Changed keyreset to act as a wrapper for keycombo. ANDROID: input: add keycombo, a general key combo driver. ANDROID: input: misc: keychord: move header to uapi ANDROID: input: misc: keychord: log when keychord triggered ANDROID: input: keychord: Add keychord driver ANDROID: input: Add keyreset driver. ANDROID: input: misc: gpio_event: remove early suspend ANDROID: Input: Generic GPIO Input device. ANDROID: Shrink ashmem directly through shmem_fallocate ANDROID: ashmem: Add shmem_set_file to mm/shmem.c ANDROID: Add android config documentation to boot framework. ALSA: hda - Add missing NVIDIA GPU codec IDs to patch table s390/mm: set change and reference bit on lazy key enablement s390: chp: handle CRW_ERC_INIT for channel-path status change s390/perf: fix problem state detection jfs: atomically read inode size Change-Id: I8054d17937f9ae86e07ad1cb02110c91fb82ac5d Signed-off-by: Runmin Wang <runminw@codeaurora.org> |
||
|
|
fc119a9a2c |
ANDROID: trace/events: add gpu trace events
Change-Id: I0607b9c776acf61cb796b8572cf8cfb8b2dc1377 Signed-off-by: Jamie Gennis <jgennis@google.com> |
||
|
|
122e0ddaad |
trace: rtb: add msm_rtb register tracing feature snapshot
This is a snapshot of the msm_rtb driver from kernel/trace taken as of msm-4.4 commit <9d9cf7636c0d82> (Merge "clk: msm: clock-gpu-cobalt: Update the GPU PLL FMAXes"). Change-Id: I8caff1efbebe1de0cd02c6d7ee7721ebec2d1de1 Signed-off-by: Bruce Levy <blevy@codeaurora.org> Signed-off-by: Bhargav Gurappadi <bhargavg1@codeaurora.org> [psodagud change include file from linux/sched.h to linux/sched/clock.h for using sched_clock API.] Signed-off-by: Prasad Sodagudi <psodagud@codeaurora.org> |
||
|
|
6b0b755142 |
perf/core: Rename CONFIG_[UK]PROBE_EVENT to CONFIG_[UK]PROBE_EVENTS
We have uses of CONFIG_UPROBE_EVENT and CONFIG_KPROBE_EVENT as well as CONFIG_UPROBE_EVENTS and CONFIG_KPROBE_EVENTS. Consistently use the plurals. Signed-off-by: Anton Blanchard <anton@samba.org> Cc: Andy Lutomirski <luto@kernel.org> Cc: Borislav Petkov <bp@alien8.de> Cc: Brian Gerst <brgerst@gmail.com> Cc: Denys Vlasenko <dvlasenk@redhat.com> Cc: H. Peter Anvin <hpa@zytor.com> Cc: Josh Poimboeuf <jpoimboe@redhat.com> Cc: Linus Torvalds <torvalds@linux-foundation.org> Cc: Peter Zijlstra <peterz@infradead.org> Cc: Thomas Gleixner <tglx@linutronix.de> Cc: acme@kernel.org Cc: alexander.shishkin@linux.intel.com Cc: davem@davemloft.net Cc: sparclinux@vger.kernel.org Link: http://lkml.kernel.org/r/20170216060050.20866-1-anton@ozlabs.org Signed-off-by: Ingo Molnar <mingo@kernel.org> |
||
|
|
ef6000b4c6 |
Disable the __builtin_return_address() warning globally after all
This affectively reverts commit
|
||
|
|
e7c15cd8a1 |
tracing: Added hardware latency tracer
The hardware latency tracer has been in the PREEMPT_RT patch for some time.
It is used to detect possible SMIs or any other hardware interruptions that
the kernel is unaware of. Note, NMIs may also be detected, but that may be
good to note as well.
The logic is pretty simple. It simply creates a thread that spins on a
single CPU for a specified amount of time (width) within a periodic window
(window). These numbers may be adjusted by their cooresponding names in
/sys/kernel/tracing/hwlat_detector/
The defaults are window = 1000000 us (1 second)
width = 500000 us (1/2 second)
The loop consists of:
t1 = trace_clock_local();
t2 = trace_clock_local();
Where trace_clock_local() is a variant of sched_clock().
The difference of t2 - t1 is recorded as the "inner" timestamp and also the
timestamp t1 - prev_t2 is recorded as the "outer" timestamp. If either of
these differences are greater than the time denoted in
/sys/kernel/tracing/tracing_thresh then it records the event.
When this tracer is started, and tracing_thresh is zero, it changes to the
default threshold of 10 us.
The hwlat tracer in the PREEMPT_RT patch was originally written by
Jon Masters. I have modified it quite a bit and turned it into a
tracer.
Based-on-code-by: Jon Masters <jcm@redhat.com>
Signed-off-by: Steven Rostedt <rostedt@goodmis.org>
|
||
|
|
377ccbb483 |
Makefile: Mute warning for __builtin_return_address(>0) for tracing only
With the latest gcc compilers, they give a warning if __builtin_return_address() parameter is greater than 0. That is because if it is used by a function called by a top level function (or in the case of the kernel, by assembly), it can try to access stack frames outside the stack and crash the system. The tracing system uses __builtin_return_address() of up to 2! But it is well aware of the dangers that it may have, and has even added precautions to protect against it (see the thunk code in arch/x86/entry/thunk*.S) Linus originally added KBUILD_CFLAGS that would suppress the warning for the entire kernel, as simply adding KBUILD_CFLAGS to the tracing directory wouldn't work. The tracing directory plays a bit with the CFLAGS and requires a little more logic. This adds that special logic to only suppress the warning for the tracing directory. If it is used anywhere else outside of tracing, the warning will still be triggered. Link: http://lkml.kernel.org/r/20160728223043.51996267@grimm.local.home Tested-by: Linus Torvalds <torvalds@linux-foundation.org> Signed-off-by: Steven Rostedt <rostedt@goodmis.org> |
||
|
|
7ef224d1d0 |
tracing: Add 'hist' event trigger command
'hist' triggers allow users to continually aggregate trace events, which can then be viewed afterwards by simply reading a 'hist' file containing the aggregation in a human-readable format. The basic idea is very simple and boils down to a mechanism whereby trace events, rather than being exhaustively dumped in raw form and viewed directly, are automatically 'compressed' into meaningful tables completely defined by the user. This is done strictly via single-line command-line commands and without the aid of any kind of programming language or interpreter. A surprising number of typical use cases can be accomplished by users via this simple mechanism. In fact, a large number of the tasks that users typically do using the more complicated script-based tracing tools, at least during the initial stages of an investigation, can be accomplished by simply specifying a set of keys and values to be used in the creation of a hash table. The Linux kernel trace event subsystem happens to provide an extensive list of keys and values ready-made for such a purpose in the form of the event format files associated with each trace event. By simply consulting the format file for field names of interest and by plugging them into the hist trigger command, users can create an endless number of useful aggregations to help with investigating various properties of the system. See Documentation/trace/events.txt for examples. hist triggers are implemented on top of the existing event trigger infrastructure, and as such are consistent with the existing triggers from a user's perspective as well. The basic syntax follows the existing trigger syntax. Users start an aggregation by writing a 'hist' trigger to the event of interest's trigger file: # echo hist:keys=xxx [ if filter] > event/trigger Once a hist trigger has been set up, by default it continually aggregates every matching event into a hash table using the event key and a value field named 'hitcount'. To view the aggregation at any point in time, simply read the 'hist' file in the same directory as the 'trigger' file: # cat event/hist The detailed syntax provides additional options for user control, and is described exhaustively in Documentation/trace/events.txt and in the virtual tracing/README file in the tracing subsystem. Link: http://lkml.kernel.org/r/72d263b5e1853fe9c314953b65833c3aa75479f2.1457029949.git.tom.zanussi@linux.intel.com Signed-off-by: Tom Zanussi <tom.zanussi@linux.intel.com> Tested-by: Masami Hiramatsu <masami.hiramatsu.pt@hitachi.com> Reviewed-by: Namhyung Kim <namhyung@kernel.org> Signed-off-by: Steven Rostedt <rostedt@goodmis.org> |
||
|
|
08d43a5fa0 |
tracing: Add lock-free tracing_map
Add tracing_map, a special-purpose lock-free map for tracing. tracing_map is designed to aggregate or 'sum' one or more values associated with a specific object of type tracing_map_elt, which is associated by the map to a given key. It provides various hooks allowing per-tracer customization and is separated out into a separate file in order to allow it to be shared between multiple tracers, but isn't meant to be generally used outside of that context. The tracing_map implementation was inspired by lock-free map algorithms originated by Dr. Cliff Click: http://www.azulsystems.com/blog/cliff/2007-03-26-non-blocking-hashtable http://www.azulsystems.com/events/javaone_2007/2007_LockFreeHash.pdf Link: http://lkml.kernel.org/r/b43d68d1add33582a396f553c8ef705a33a6a748.1449767187.git.tom.zanussi@linux.intel.com Signed-off-by: Tom Zanussi <tom.zanussi@linux.intel.com> Tested-by: Masami Hiramatsu <masami.hiramatsu.pt@hitachi.com> Reviewed-by: Namhyung Kim <namhyung@kernel.org> Signed-off-by: Steven Rostedt <rostedt@goodmis.org> |
||
|
|
e1abf2cc8d |
bpf: Fix the build on BPF_SYSCALL=y && !CONFIG_TRACING kernels, make it more configurable
So bpf_tracing.o depends on CONFIG_BPF_SYSCALL - but that's not its only
dependency, it also depends on the tracing infrastructure and on kprobes,
without which it will fail to build with:
In file included from kernel/trace/bpf_trace.c:14:0:
kernel/trace/trace.h: In function ‘trace_test_and_set_recursion’:
kernel/trace/trace.h:491:28: error: ‘struct task_struct’ has no member named ‘trace_recursion’
unsigned int val = current->trace_recursion;
[...]
It took quite some time to trigger this build failure, because right now
BPF_SYSCALL is very obscure, depends on CONFIG_EXPERT. So also make BPF_SYSCALL
more configurable, not just under CONFIG_EXPERT.
If BPF_SYSCALL, tracing and kprobes are enabled then enable the bpf_tracing
gateway as well.
We might want to make this an interactive option later on, although
I'd not complicate it unnecessarily: enabling BPF_SYSCALL is enough of
an indicator that the user wants BPF support.
Cc: Alexei Starovoitov <ast@plumgrid.com>
Cc: Andrew Morton <akpm@linux-foundation.org>
Cc: Arnaldo Carvalho de Melo <acme@infradead.org>
Cc: Arnaldo Carvalho de Melo <acme@redhat.com>
Cc: Daniel Borkmann <daniel@iogearbox.net>
Cc: David S. Miller <davem@davemloft.net>
Cc: Jiri Olsa <jolsa@redhat.com>
Cc: Linus Torvalds <torvalds@linux-foundation.org>
Cc: Masami Hiramatsu <masami.hiramatsu.pt@hitachi.com>
Cc: Namhyung Kim <namhyung@kernel.org>
Cc: Peter Zijlstra <a.p.zijlstra@chello.nl>
Cc: Peter Zijlstra <peterz@infradead.org>
Cc: Steven Rostedt <rostedt@goodmis.org>
Cc: linux-kernel@vger.kernel.org
Signed-off-by: Ingo Molnar <mingo@kernel.org>
|
||
|
|
2541517c32 |
tracing, perf: Implement BPF programs attached to kprobes
BPF programs, attached to kprobes, provide a safe way to execute
user-defined BPF byte-code programs without being able to crash or
hang the kernel in any way. The BPF engine makes sure that such
programs have a finite execution time and that they cannot break
out of their sandbox.
The user interface is to attach to a kprobe via the perf syscall:
struct perf_event_attr attr = {
.type = PERF_TYPE_TRACEPOINT,
.config = event_id,
...
};
event_fd = perf_event_open(&attr,...);
ioctl(event_fd, PERF_EVENT_IOC_SET_BPF, prog_fd);
'prog_fd' is a file descriptor associated with BPF program
previously loaded.
'event_id' is an ID of the kprobe created.
Closing 'event_fd':
close(event_fd);
... automatically detaches BPF program from it.
BPF programs can call in-kernel helper functions to:
- lookup/update/delete elements in maps
- probe_read - wraper of probe_kernel_read() used to access any
kernel data structures
BPF programs receive 'struct pt_regs *' as an input ('struct pt_regs' is
architecture dependent) and return 0 to ignore the event and 1 to store
kprobe event into the ring buffer.
Note, kprobes are a fundamentally _not_ a stable kernel ABI,
so BPF programs attached to kprobes must be recompiled for
every kernel version and user must supply correct LINUX_VERSION_CODE
in attr.kern_version during bpf_prog_load() call.
Signed-off-by: Alexei Starovoitov <ast@plumgrid.com>
Reviewed-by: Steven Rostedt <rostedt@goodmis.org>
Reviewed-by: Masami Hiramatsu <masami.hiramatsu.pt@hitachi.com>
Cc: Andrew Morton <akpm@linux-foundation.org>
Cc: Arnaldo Carvalho de Melo <acme@infradead.org>
Cc: Arnaldo Carvalho de Melo <acme@redhat.com>
Cc: Daniel Borkmann <daniel@iogearbox.net>
Cc: David S. Miller <davem@davemloft.net>
Cc: Jiri Olsa <jolsa@redhat.com>
Cc: Linus Torvalds <torvalds@linux-foundation.org>
Cc: Namhyung Kim <namhyung@kernel.org>
Cc: Peter Zijlstra <a.p.zijlstra@chello.nl>
Cc: Peter Zijlstra <peterz@infradead.org>
Link: http://lkml.kernel.org/r/1427312966-8434-4-git-send-email-ast@plumgrid.com
Signed-off-by: Ingo Molnar <mingo@kernel.org>
|
||
|
|
b3d6524ff7 |
Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/s390/linux
Pull s390 updates from Martin Schwidefsky: - The remaining patches for the z13 machine support: kernel build option for z13, the cache synonym avoidance, SMT support, compare-and-delay for spinloops and the CES5S crypto adapater. - The ftrace support for function tracing with the gcc hotpatch option. This touches common code Makefiles, Steven is ok with the changes. - The hypfs file system gets an extension to access diagnose 0x0c data in user space for performance analysis for Linux running under z/VM. - The iucv hvc console gets wildcard spport for the user id filtering. - The cacheinfo code is converted to use the generic infrastructure. - Cleanup and bug fixes. * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/s390/linux: (42 commits) s390/process: free vx save area when releasing tasks s390/hypfs: Eliminate hypfs interval s390/hypfs: Add diagnose 0c support s390/cacheinfo: don't use smp_processor_id() in preemptible context s390/zcrypt: fixed domain scanning problem (again) s390/smp: increase maximum value of NR_CPUS to 512 s390/jump label: use different nop instruction s390/jump label: add sanity checks s390/mm: correct missing space when reporting user process faults s390/dasd: cleanup profiling s390/dasd: add locking for global_profile access s390/ftrace: hotpatch support for function tracing ftrace: let notrace function attribute disable hotpatching if necessary ftrace: allow architectures to specify ftrace compile options s390: reintroduce diag 44 calls for cpu_relax() s390/zcrypt: Add support for new crypto express (CEX5S) adapter. s390/zcrypt: Number of supported ap domains is not retrievable. s390/spinlock: add compare-and-delay to lock wait loops s390/tape: remove redundant if statement s390/hvc_iucv: add simple wildcard matches to the iucv allow filter ... |
||
|
|
c0a80c0c27 |
ftrace: allow architectures to specify ftrace compile options
If the kernel is compiled with function tracer support the -pg compile option is passed to gcc to generate extra code into the prologue of each function. This patch replaces the "open-coded" -pg compile flag with a CC_FLAGS_FTRACE makefile variable which architectures can override if a different option should be used for code generation. Acked-by: Steven Rostedt <rostedt@goodmis.org> Signed-off-by: Heiko Carstens <heiko.carstens@de.ibm.com> Signed-off-by: Martin Schwidefsky <schwidefsky@de.ibm.com> |
||
|
|
798bc6d8d5 |
tracing / PM: Replace CONFIG_PM_RUNTIME with CONFIG_PM
After commit
|
||
|
|
12306276fa |
tracing: Move the trace_seq_* functions into its own trace_seq.c file
The trace_seq_*() functions are a nice utility that allows users to manipulate buffers with printf() like formats. It has its own trace_seq.h header in include/linux and should be in its own file. Being tied with trace_output.c is rather awkward. Signed-off-by: Steven Rostedt <rostedt@goodmis.org> |
||
|
|
81dc9f0ef2 |
tracing: Add tracepoint benchmark tracepoint
In order to help benchmark the time tracepoints take, a new config
option is added called CONFIG_TRACEPOINT_BENCHMARK. When this option
is set a tracepoint is created called "benchmark:benchmark_event".
When the tracepoint is enabled, it kicks off a kernel thread that
goes into an infinite loop (calling cond_sched() to let other tasks
run), and calls the tracepoint. Each iteration will record the time
it took to write to the tracepoint and the next iteration that
data will be passed to the tracepoint itself. That is, the tracepoint
will report the time it took to do the previous tracepoint.
The string written to the tracepoint is a static string of 128 bytes
to keep the time the same. The initial string is simply a write of
"START". The second string records the cold cache time of the first
write which is not added to the rest of the calculations.
As it is a tight loop, it benchmarks as hot cache. That's fine because
we care most about hot paths that are probably in cache already.
An example of the output:
START
first=3672 [COLD CACHED]
last=632 first=3672 max=632 min=632 avg=316 std=446 std^2=199712
last=278 first=3672 max=632 min=278 avg=303 std=316 std^2=100337
last=277 first=3672 max=632 min=277 avg=296 std=258 std^2=67064
last=273 first=3672 max=632 min=273 avg=292 std=224 std^2=50411
last=273 first=3672 max=632 min=273 avg=288 std=200 std^2=40389
last=281 first=3672 max=632 min=273 avg=287 std=183 std^2=33666
Signed-off-by: Steven Rostedt <rostedt@goodmis.org>
|
||
|
|
85f2b08268 |
tracing: Add basic event trigger framework
Add a 'trigger' file for each trace event, enabling 'trace event
triggers' to be set for trace events.
'trace event triggers' are patterned after the existing 'ftrace
function triggers' implementation except that triggers are written to
per-event 'trigger' files instead of to a single file such as the
'set_ftrace_filter' used for ftrace function triggers.
The implementation is meant to be entirely separate from ftrace
function triggers, in order to keep the respective implementations
relatively simple and to allow them to diverge.
The event trigger functionality is built on top of SOFT_DISABLE
functionality. It adds a TRIGGER_MODE bit to the ftrace_event_file
flags which is checked when any trace event fires. Triggers set for a
particular event need to be checked regardless of whether that event
is actually enabled or not - getting an event to fire even if it's not
enabled is what's already implemented by SOFT_DISABLE mode, so trigger
mode directly reuses that. Event trigger essentially inherit the soft
disable logic in __ftrace_event_enable_disable() while adding a bit of
logic and trigger reference counting via tm_ref on top of that in a
new trace_event_trigger_enable_disable() function. Because the base
__ftrace_event_enable_disable() code now needs to be invoked from
outside trace_events.c, a wrapper is also added for those usages.
The triggers for an event are actually invoked via a new function,
event_triggers_call(), and code is also added to invoke them for
ftrace_raw_event calls as well as syscall events.
The main part of the patch creates a new trace_events_trigger.c file
to contain the trace event triggers implementation.
The standard open, read, and release file operations are implemented
here.
The open() implementation sets up for the various open modes of the
'trigger' file. It creates and attaches the trigger iterator and sets
up the command parser. If opened for reading set up the trigger
seq_ops.
The read() implementation parses the event trigger written to the
'trigger' file, looks up the trigger command, and passes it along to
that event_command's func() implementation for command-specific
processing.
The release() implementation does whatever cleanup is needed to
release the 'trigger' file, like releasing the parser and trigger
iterator, etc.
A couple of functions for event command registration and
unregistration are added, along with a list to add them to and a mutex
to protect them, as well as an (initially empty) registration function
to add the set of commands that will be added by future commits, and
call to it from the trace event initialization code.
also added are a couple trigger-specific data structures needed for
these implementations such as a trigger iterator and a struct for
trigger-specific data.
A couple structs consisting mostly of function meant to be implemented
in command-specific ways, event_command and event_trigger_ops, are
used by the generic event trigger command implementations. They're
being put into trace.h alongside the other trace_event data structures
and functions, in the expectation that they'll be needed in several
trace_event-related files such as trace_events_trigger.c and
trace_events.c.
The event_command.func() function is meant to be called by the trigger
parsing code in order to add a trigger instance to the corresponding
event. It essentially coordinates adding a live trigger instance to
the event, and arming the triggering the event.
Every event_command func() implementation essentially does the
same thing for any command:
- choose ops - use the value of param to choose either a number or
count version of event_trigger_ops specific to the command
- do the register or unregister of those ops
- associate a filter, if specified, with the triggering event
The reg() and unreg() ops allow command-specific implementations for
event_trigger_op registration and unregistration, and the
get_trigger_ops() op allows command-specific event_trigger_ops
selection to be parameterized. When a trigger instance is added, the
reg() op essentially adds that trigger to the triggering event and
arms it, while unreg() does the opposite. The set_filter() function
is used to associate a filter with the trigger - if the command
doesn't specify a set_filter() implementation, the command will ignore
filters.
Each command has an associated trigger_type, which serves double duty,
both as a unique identifier for the command as well as a value that
can be used for setting a trigger mode bit during trigger invocation.
The signature of func() adds a pointer to the event_command struct,
used to invoke those functions, along with a command_data param that
can be passed to the reg/unreg functions. This allows func()
implementations to use command-specific blobs and supports code
re-use.
The event_trigger_ops.func() command corrsponds to the trigger 'probe'
function that gets called when the triggering event is actually
invoked. The other functions are used to list the trigger when
needed, along with a couple mundane book-keeping functions.
This also moves event_file_data() into trace.h so it can be used
outside of trace_events.c.
Link: http://lkml.kernel.org/r/316d95061accdee070aac8e5750afba0192fa5b9.1382622043.git.tom.zanussi@linux.intel.com
Signed-off-by: Tom Zanussi <tom.zanussi@linux.intel.com>
Idea-by: Steve Rostedt <rostedt@goodmis.org>
Signed-off-by: Steven Rostedt <rostedt@goodmis.org>
|
||
|
|
ea632e9f12 |
trace: Stop compiling in trace_clock unconditionally
Commit |
||
|
|
47239c4d8d |
ftrace: Only compile ftrace selftest if selftests are enabled
No need to compile in the ftrace selftest helper file if selftests are not being executed. Signed-off-by: Steven Rostedt <rostedt@goodmis.org> |
||
|
|
654443e20d |
Merge branch 'perf-uprobes-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip
Pull user-space probe instrumentation from Ingo Molnar: "The uprobes code originates from SystemTap and has been used for years in Fedora and RHEL kernels. This version is much rewritten, reviews from PeterZ, Oleg and myself shaped the end result. This tree includes uprobes support in 'perf probe' - but SystemTap (and other tools) can take advantage of user probe points as well. Sample usage of uprobes via perf, for example to profile malloc() calls without modifying user-space binaries. First boot a new kernel with CONFIG_UPROBE_EVENT=y enabled. If you don't know which function you want to probe you can pick one from 'perf top' or can get a list all functions that can be probed within libc (binaries can be specified as well): $ perf probe -F -x /lib/libc.so.6 To probe libc's malloc(): $ perf probe -x /lib64/libc.so.6 malloc Added new event: probe_libc:malloc (on 0x7eac0) You can now use it in all perf tools, such as: perf record -e probe_libc:malloc -aR sleep 1 Make use of it to create a call graph (as the flat profile is going to look very boring): $ perf record -e probe_libc:malloc -gR make [ perf record: Woken up 173 times to write data ] [ perf record: Captured and wrote 44.190 MB perf.data (~1930712 $ perf report | less 32.03% git libc-2.15.so [.] malloc | --- malloc 29.49% cc1 libc-2.15.so [.] malloc | --- malloc | |--0.95%-- 0x208eb1000000000 | |--0.63%-- htab_traverse_noresize 11.04% as libc-2.15.so [.] malloc | --- malloc | 7.15% ld libc-2.15.so [.] malloc | --- malloc | 5.07% sh libc-2.15.so [.] malloc | --- malloc | 4.99% python-config libc-2.15.so [.] malloc | --- malloc | 4.54% make libc-2.15.so [.] malloc | --- malloc | |--7.34%-- glob | | | |--93.18%-- 0x41588f | | | --6.82%-- glob | 0x41588f ... Or: $ perf report -g flat | less # Overhead Command Shared Object Symbol # ........ ............. ............. .......... # 32.03% git libc-2.15.so [.] malloc 27.19% malloc 29.49% cc1 libc-2.15.so [.] malloc 24.77% malloc 11.04% as libc-2.15.so [.] malloc 11.02% malloc 7.15% ld libc-2.15.so [.] malloc 6.57% malloc ... The core uprobes design is fairly straightforward: uprobes probe points register themselves at (inode:offset) addresses of libraries/binaries, after which all existing (or new) vmas that map that address will have a software breakpoint injected at that address. vmas are COW-ed to preserve original content. The probe points are kept in an rbtree. If user-space executes the probed inode:offset instruction address then an event is generated which can be recovered from the regular perf event channels and mmap-ed ring-buffer. Multiple probes at the same address are supported, they create a dynamic callback list of event consumers. The basic model is further complicated by the XOL speedup: the original instruction that is probed is copied (in an architecture specific fashion) and executed out of line when the probe triggers. The XOL area is a single vma per process, with a fixed number of entries (which limits probe execution parallelism). The API: uprobes are installed/removed via /sys/kernel/debug/tracing/uprobe_events, the API is integrated to align with the kprobes interface as much as possible, but is separate to it. Injecting a probe point is privileged operation, which can be relaxed by setting perf_paranoid to -1. You can use multiple probes as well and mix them with kprobes and regular PMU events or tracepoints, when instrumenting a task." Fix up trivial conflicts in mm/memory.c due to previous cleanup of unmap_single_vma(). * 'perf-uprobes-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip: (21 commits) perf probe: Detect probe target when m/x options are absent perf probe: Provide perf interface for uprobes tracing: Fix kconfig warning due to a typo tracing: Provide trace events interface for uprobes tracing: Extract out common code for kprobes/uprobes trace events tracing: Modify is_delete, is_return from int to bool uprobes/core: Decrement uprobe count before the pages are unmapped uprobes/core: Make background page replacement logic account for rss_stat counters uprobes/core: Optimize probe hits with the help of a counter uprobes/core: Allocate XOL slots for uprobes use uprobes/core: Handle breakpoint and singlestep exceptions uprobes/core: Rename bkpt to swbp uprobes/core: Make order of function parameters consistent across functions uprobes/core: Make macro names consistent uprobes: Update copyright notices uprobes/core: Move insn to arch specific structure uprobes/core: Remove uprobe_opcode_sz uprobes/core: Make instruction tables volatile uprobes: Move to kernel/events/ uprobes/core: Clean up, refactor and improve the code ... |
||
|
|
f3f096cfed |
tracing: Provide trace events interface for uprobes
Implements trace_event support for uprobes. In its current form
it can be used to put probes at a specified offset in a file and
dump the required registers when the code flow reaches the
probed address.
The following example shows how to dump the instruction pointer
and %ax a register at the probed text address. Here we are
trying to probe zfree in /bin/zsh:
# cd /sys/kernel/debug/tracing/
# cat /proc/`pgrep zsh`/maps | grep /bin/zsh | grep r-xp
00400000-0048a000 r-xp 00000000 08:03 130904 /bin/zsh
# objdump -T /bin/zsh | grep -w zfree
0000000000446420 g DF .text 0000000000000012 Base
zfree # echo 'p /bin/zsh:0x46420 %ip %ax' > uprobe_events
# cat uprobe_events
p:uprobes/p_zsh_0x46420 /bin/zsh:0x0000000000046420
# echo 1 > events/uprobes/enable
# sleep 20
# echo 0 > events/uprobes/enable
# cat trace
# tracer: nop
#
# TASK-PID CPU# TIMESTAMP FUNCTION
# | | | | |
zsh-24842 [006] 258544.995456: p_zsh_0x46420: (0x446420) arg1=446421 arg2=79
zsh-24842 [007] 258545.000270: p_zsh_0x46420: (0x446420) arg1=446421 arg2=79
zsh-24842 [002] 258545.043929: p_zsh_0x46420: (0x446420) arg1=446421 arg2=79
zsh-24842 [004] 258547.046129: p_zsh_0x46420: (0x446420) arg1=446421 arg2=79
Signed-off-by: Srikar Dronamraju <srikar@linux.vnet.ibm.com>
Acked-by: Steven Rostedt <rostedt@goodmis.org>
Acked-by: Masami Hiramatsu <masami.hiramatsu.pt@hitachi.com>
Cc: Linus Torvalds <torvalds@linux-foundation.org>
Cc: Ananth N Mavinakayanahalli <ananth@in.ibm.com>
Cc: Jim Keniston <jkenisto@linux.vnet.ibm.com>
Cc: Linux-mm <linux-mm@kvack.org>
Cc: Oleg Nesterov <oleg@redhat.com>
Cc: Andi Kleen <andi@firstfloor.org>
Cc: Christoph Hellwig <hch@infradead.org>
Cc: Arnaldo Carvalho de Melo <acme@infradead.org>
Cc: Anton Arapov <anton@redhat.com>
Cc: Peter Zijlstra <peterz@infradead.org>
Link: http://lkml.kernel.org/r/20120411103043.GB29437@linux.vnet.ibm.com
Signed-off-by: Ingo Molnar <mingo@kernel.org>
|
||
|
|
8ab83f5647 |
tracing: Extract out common code for kprobes/uprobes trace events
Move parts of trace_kprobe.c that can be shared with upcoming trace_uprobe.c. Common code to kernel/trace/trace_probe.h and kernel/trace/trace_probe.c. There are no functional changes. Signed-off-by: Srikar Dronamraju <srikar@linux.vnet.ibm.com> Acked-by: Steven Rostedt <rostedt@goodmis.org> Acked-by: Masami Hiramatsu <masami.hiramatsu.pt@hitachi.com> Cc: Linus Torvalds <torvalds@linux-foundation.org> Cc: Ananth N Mavinakayanahalli <ananth@in.ibm.com> Cc: Jim Keniston <jkenisto@linux.vnet.ibm.com> Cc: Linux-mm <linux-mm@kvack.org> Cc: Oleg Nesterov <oleg@redhat.com> Cc: Andi Kleen <andi@firstfloor.org> Cc: Christoph Hellwig <hch@infradead.org> Cc: Arnaldo Carvalho de Melo <acme@infradead.org> Cc: Anton Arapov <anton@redhat.com> Cc: Peter Zijlstra <peterz@infradead.org> Link: http://lkml.kernel.org/r/20120409091144.8343.76218.sendpatchset@srdronam.in.ibm.com Signed-off-by: Ingo Molnar <mingo@kernel.org> |
||
|
|
d3283fb45c |
trace: Remove unused workqueue tracer
This tracer was temporarily removed in
|
||
|
|
7115e3fcf4 |
Merge branch 'perf-core-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip
* 'perf-core-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip: (121 commits)
perf symbols: Increase symbol KSYM_NAME_LEN size
perf hists browser: Refuse 'a' hotkey on non symbolic views
perf ui browser: Use libslang to read keys
perf tools: Fix tracing info recording
perf hists browser: Elide DSO column when it is set to just one DSO, ditto for threads
perf hists: Don't consider filtered entries when calculating column widths
perf hists: Don't decay total_period for filtered entries
perf hists browser: Honour symbol_conf.show_{nr_samples,total_period}
perf hists browser: Do not exit on tab key with single event
perf annotate browser: Don't change selection line when returning from callq
perf tools: handle endianness of feature bitmap
perf tools: Add prelink suggestion to dso update message
perf script: Fix unknown feature comment
perf hists browser: Apply the dso and thread filters when merging new batches
perf hists: Move the dso and thread filters from hist_browser
perf ui browser: Honour the xterm colors
perf top tui: Give color hints just on the percentage, like on --stdio
perf ui browser: Make the colors configurable and change the defaults
perf tui: Remove unneeded call to newtCls on startup
perf hists: Don't format the percentage on hist_entry__snprintf
...
Fix up conflicts in arch/x86/kernel/kprobes.c manually.
Ingo's tree did the insane "add volatile to const array", which just
doesn't make sense ("volatile const"?). But we could remove the const
*and* make the array volatile to make doubly sure that gcc doesn't
optimize it away..
Also fix up kernel/trace/ring_buffer.c non-data-conflicts manually: the
reader_lock has been turned into a raw lock by the core locking merge,
and there was a new user of it introduced in this perf core merge. Make
sure that new use also uses the raw accessor functions.
|
||
|
|
2a5306cc5f |
PM / Tracing: build rpm-traces.c only if CONFIG_PM_RUNTIME is set
Do not build kernel/trace/rpm-traces.c if CONFIG_PM_RUNTIME is not set, which avoids a build failure. [rjw: Added the changelog and modified the subject slightly.] Signed-off-by: Ming Lei <ming.lei@canonical.com> Signed-off-by: Rafael J. Wysocki <rjw@sisk.pl> |
||
|
|
53b615ccca |
PM / Runtime: Introduce trace points for tracing rpm_* functions
This patch introduces 3 trace points to prepare for tracing rpm_idle/rpm_suspend/rpm_resume functions, so we can use these trace points to replace the current dev_dbg(). Signed-off-by: Ming Lei <ming.lei@canonical.com> Acked-by: Steven Rostedt <rostedt@goodmis.org> Signed-off-by: Rafael J. Wysocki <rjw@sisk.pl> |
||
|
|
1d0e78e380 |
tracing/filter: Add startup tests for events filter
Adding automated tests running as late_initcall. Tests are compiled in with CONFIG_FTRACE_STARTUP_TEST option. Adding test event "ftrace_test_filter" used to simulate filter processing during event occurance. String filters are compiled and tested against several test events with different values. Also testing that evaluation of explicit predicates is ommited due to the lazy filter evaluation. Signed-off-by: Jiri Olsa <jolsa@redhat.com> Link: http://lkml.kernel.org/r/1313072754-4620-11-git-send-email-jolsa@redhat.com Signed-off-by: Steven Rostedt <rostedt@goodmis.org> |
||
|
|
870915e047 |
tracing: Fix TRACE_EVENT power tracepoint creation
DEFINE_TRACE should also exist when CONFIG_EVENT_TRACING=n. Otherwise, setting only TRACEPOINTS=y is broken. Acked-by: Arjan van de Ven <arjan@linux.intel.com> Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers@efficios.com> LKML-Reference: <20101028153117.GA4051@Krystal> Signed-off-by: Steven Rostedt <rostedt@goodmis.org> |
||
|
|
4aed2fd8e3 |
Merge branch 'perf-core-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip
* 'perf-core-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip: (162 commits) tracing/kprobes: unregister_trace_probe needs to be called under mutex perf: expose event__process function perf events: Fix mmap offset determination perf, powerpc: fsl_emb: Restore setting perf_sample_data.period perf, powerpc: Convert the FSL driver to use local64_t perf tools: Don't keep unreferenced maps when unmaps are detected perf session: Invalidate last_match when removing threads from rb_tree perf session: Free the ref_reloc_sym memory at the right place x86,mmiotrace: Add support for tracing STOS instruction perf, sched migration: Librarize task states and event headers helpers perf, sched migration: Librarize the GUI class perf, sched migration: Make the GUI class client agnostic perf, sched migration: Make it vertically scrollable perf, sched migration: Parameterize cpu height and spacing perf, sched migration: Fix key bindings perf, sched migration: Ignore unhandled task states perf, sched migration: Handle ignored migrate out events perf: New migration tool overview tracing: Drop cpparg() macro perf: Use tracepoint_synchronize_unregister() to flush any pending tracepoint call ... Fix up trivial conflicts in Makefile and drivers/cpufreq/cpufreq.c |
||
|
|
955b61e597 |
ftrace,kdb: Extend kdb to be able to dump the ftrace buffer
Add in a helper function to allow the kdb shell to dump the ftrace buffer. Modify trace.c to expose the capability to iterate over the ftrace buffer in a read only capacity. Signed-off-by: Jason Wessel <jason.wessel@windriver.com> Acked-by: Steven Rostedt <rostedt@goodmis.org> CC: Frederic Weisbecker <fweisbec@gmail.com> |
||
|
|
f376bf5ffb |
tracing: Remove sysprof ftrace plugin
The sysprof ftrace plugin doesn't seem to be seriously used somewhere. There is a branch in the sysprof tree that makes an interface to it, but the real sysprof tool uses either its own module or perf events. Drop the sysprof ftrace plugin then, as it's mostly useless. Signed-off-by: Frederic Weisbecker <fweisbec@gmail.com> Acked-by: Soeren Sandmann <sandmann@daimi.au.dk> Cc: Peter Zijlstra <a.p.zijlstra@chello.nl> Cc: Ingo Molnar <mingo@elte.hu> Cc: Steven Rostedt <rostedt@goodmis.org> Cc: Li Zefan <lizf@cn.fujitsu.com> |
||
|
|
5d550467b9 |
tracing: Remove ksym tracer
The ksym (breakpoint) ftrace plugin has been superseded by perf tools that are much more poweful to use the cpu breakpoints. This tracer doesn't bring more feature. It has been deprecated for a while now, lets remove it. Signed-off-by: Frederic Weisbecker <fweisbec@gmail.com> Cc: Steven Rostedt <rostedt@goodmis.org> Cc: Prasad <prasad@linux.vnet.ibm.com> Cc: Ingo Molnar <mingo@elte.hu> |
||
|
|
039ca4e74a |
tracing: Remove kmemtrace ftrace plugin
We have been resisting new ftrace plugins and removing existing ones, and kmemtrace has been superseded by kmem trace events and perf-kmem, so we remove it. Signed-off-by: Li Zefan <lizf@cn.fujitsu.com> Acked-by: Pekka Enberg <penberg@cs.helsinki.fi> Acked-by: Eduard - Gabriel Munteanu <eduard.munteanu@linux360.ro> Cc: Ingo Molnar <mingo@elte.hu> Cc: Steven Rostedt <rostedt@goodmis.org> [ remove kmemtrace from the makefile, handle slob too ] Signed-off-by: Frederic Weisbecker <fweisbec@gmail.com> |
||
|
|
30dbb20e68 |
tracing: Remove boot tracer
The boot tracer is useless. It simply logs the initcalls but in fact these initcalls are also logged through printk while using the initcall_debug kernel parameter. Nobody seem to be using it so far. Then just remove it. Signed-off-by: WANG Cong <xiyou.wangcong@gmail.com> Cc: Chase Douglas <chase.douglas@canonical.com> Cc: Steven Rostedt <rostedt@goodmis.org> Cc: Ingo Molnar <mingo@elte.hu> Cc: Peter Zijlstra <a.p.zijlstra@chello.nl> Cc: Li Zefan <lizf@cn.fujitsu.com> LKML-Reference: <20100526105753.GA5677@cr0.nay.redhat.com> [ remove the hooks in main.c, and the headers ] Signed-off-by: Frederic Weisbecker <fweisbec@gmail.com> |
||
|
|
faa4602e47 |
x86, perf, bts, mm: Delete the never used BTS-ptrace code
Support for the PMU's BTS features has been upstreamed in v2.6.32, but we still have the old and disabled ptrace-BTS, as Linus noticed it not so long ago. It's buggy: TIF_DEBUGCTLMSR is trampling all over that MSR without regard for other uses (perf) and doesn't provide the flexibility needed for perf either. Its users are ptrace-block-step and ptrace-bts, since ptrace-bts was never used and ptrace-block-step can be implemented using a much simpler approach. So axe all 3000 lines of it. That includes the *locked_memory*() APIs in mm/mlock.c as well. Reported-by: Linus Torvalds <torvalds@linux-foundation.org> Signed-off-by: Peter Zijlstra <a.p.zijlstra@chello.nl> Cc: Roland McGrath <roland@redhat.com> Cc: Oleg Nesterov <oleg@redhat.com> Cc: Markus Metzger <markus.t.metzger@intel.com> Cc: Steven Rostedt <rostedt@goodmis.org> Cc: Andrew Morton <akpm@linux-foundation.org> LKML-Reference: <20100325135413.938004390@chello.nl> Signed-off-by: Ingo Molnar <mingo@elte.hu> |
||
|
|
97d5a22005 |
perf: Drop the obsolete profile naming for trace events
Drop the obsolete "profile" naming used by perf for trace events. Perf can now do more than simple events counting, so generalize the API naming. Signed-off-by: Frederic Weisbecker <fweisbec@gmail.com> Cc: Ingo Molnar <mingo@elte.hu> Cc: Peter Zijlstra <peterz@infradead.org> Cc: Paul Mackerras <paulus@samba.org> Cc: Steven Rostedt <rostedt@goodmis.org> Cc: Masami Hiramatsu <mhiramat@redhat.com> Cc: Jason Baron <jbaron@redhat.com> |
||
|
|
07b139c8c8 |
perf events: Remove CONFIG_EVENT_PROFILE
Quoted from Ingo: | This reminds me - i think we should eliminate CONFIG_EVENT_PROFILE - | it's an unnecessary Kconfig complication. If both PERF_EVENTS and | EVENT_TRACING is enabled we should expose generic tracepoints. | | Nor is it limited to event 'profiling', so it has become a misnomer as | well. Signed-off-by: Li Zefan <lizf@cn.fujitsu.com> Cc: Frederic Weisbecker <fweisbec@gmail.com> Cc: Steven Rostedt <rostedt@goodmis.org> Cc: Peter Zijlstra <peterz@infradead.org> Cc: Paul Mackerras <paulus@samba.org> LKML-Reference: <4B2F1557.2050705@cn.fujitsu.com> Signed-off-by: Ingo Molnar <mingo@elte.hu> |
||
|
|
96200591a3 |
Merge branch 'tracing/hw-breakpoints' into perf/core
Conflicts:
arch/x86/kernel/kprobes.c
kernel/trace/Makefile
Merge reason: hw-breakpoints perf integration is looking
good in testing and in reviews, plus conflicts
are mounting up - so merge & resolve.
Signed-off-by: Ingo Molnar <mingo@elte.hu>
|