Merge branch 'sid'
- Drop ABI maintenance patches - Apply usbip config change in debian/config/config
This commit is contained in:
commit
623cfd4d39
|
@ -60,6 +60,221 @@ linux (4.15~rc5-1~exp1) experimental; urgency=medium
|
|||
|
||||
-- Ben Hutchings <ben@decadent.org.uk> Wed, 27 Dec 2017 02:48:14 +0000
|
||||
|
||||
linux (4.14.15-1) UNRELEASED; urgency=medium
|
||||
|
||||
* New upstream stable update:
|
||||
https://www.kernel.org/pub/linux/kernel/v4.x/ChangeLog-4.14.14
|
||||
- dm bufio: fix shrinker scans when (nr_to_scan < retain_target)
|
||||
- can: gs_usb: fix return value of the "set_bittiming" callback
|
||||
- IB/srpt: Disable RDMA access by the initiator
|
||||
- IB/srpt: Fix ACL lookup during login
|
||||
- [mips*] Validate PR_SET_FP_MODE prctl(2) requests against the ABI of the
|
||||
task
|
||||
- [mips*] Factor out NT_PRFPREG regset access helpers
|
||||
- [mips*] Guard against any partial write attempt with PTRACE_SETREGSET
|
||||
- [mips*] Consistently handle buffer counter with PTRACE_SETREGSET
|
||||
- [mips*] Fix an FCSR access API regression with NT_PRFPREG and MSA
|
||||
- [mips*] Also verify sizeof `elf_fpreg_t' with PTRACE_SETREGSET
|
||||
- [mips*] Disallow outsized PTRACE_SETREGSET NT_PRFPREG regset accesses
|
||||
- cgroup: fix css_task_iter crash on CSS_TASK_ITER_PROC
|
||||
- [x86] kvm: vmx: Scrub hardware GPRs at VM-exit (partial mitigation of
|
||||
CVE-2017-5715, CVE-2017-5753)
|
||||
- [x86] platform: wmi: Call acpi_wmi_init() later
|
||||
- iw_cxgb4: only call the cq comp_handler when the cq is armed
|
||||
- iw_cxgb4: atomically flush the qp
|
||||
- iw_cxgb4: only clear the ARMED bit if a notification is needed
|
||||
- iw_cxgb4: reflect the original WR opcode in drain cqes
|
||||
- iw_cxgb4: when flushing, complete all wrs in a chain
|
||||
- [x86] acpi: Handle SCI interrupts above legacy space gracefully
|
||||
- ALSA: pcm: Remove incorrect snd_BUG_ON() usages
|
||||
- ALSA: pcm: Workaround for weird PulseAudio behavior on rewind error
|
||||
- ALSA: pcm: Add missing error checks in OSS emulation plugin builder
|
||||
- ALSA: pcm: Abort properly at pending signal in OSS read/write loops
|
||||
- ALSA: pcm: Allow aborting mutex lock at OSS read/write loops
|
||||
- ALSA: aloop: Release cable upon open error path
|
||||
- ALSA: aloop: Fix inconsistent format due to incomplete rule
|
||||
- ALSA: aloop: Fix racy hw constraints adjustment
|
||||
- [x86] acpi: Reduce code duplication in mp_override_legacy_irq()
|
||||
- 8021q: fix a memory leak for VLAN 0 device
|
||||
- ip6_tunnel: disable dst caching if tunnel is dual-stack
|
||||
- net: core: fix module type in sock_diag_bind
|
||||
- RDS: Heap OOB write in rds_message_alloc_sgs() (CVE-2018-5332)
|
||||
- RDS: null pointer dereference in rds_atomic_free_op (CVE-2018-5333)
|
||||
- net: fec: restore dev_id in the cases of probe error
|
||||
- net: fec: defer probe if regulator is not ready
|
||||
- net: fec: free/restore resource in related probe error pathes
|
||||
- sctp: do not retransmit upon FragNeeded if PMTU discovery is disabled
|
||||
- sctp: fix the handling of ICMP Frag Needed for too small MTUs
|
||||
- [arm64, armhf] net: stmmac: enable EEE in MII, GMII or RGMII only
|
||||
- ipv6: fix possible mem leaks in ipv6_make_skb()
|
||||
- net/sched: Fix update of lastuse in act modules implementing
|
||||
stats_update
|
||||
- ipv6: sr: fix TLVs not being copied using setsockopt
|
||||
- sfp: fix sfp-bus oops when removing socket/upstream
|
||||
- membarrier: Disable preemption when calling smp_call_function_many()
|
||||
- crypto: algapi - fix NULL dereference in crypto_remove_spawns()
|
||||
- rbd: reacquire lock should update lock owner client id
|
||||
- rbd: set max_segments to USHRT_MAX
|
||||
- iwlwifi: pcie: fix DMA memory mapping / unmapping
|
||||
- [x86] microcode/intel: Extend BDW late-loading with a revision check
|
||||
- [x86] KVM: Add memory barrier on vmcs field lookup
|
||||
- [powerpc*] KVM: Book3S PR: Fix WIMG handling under pHyp
|
||||
- [powerpc*] KVM: Book3S HV: Drop prepare_done from struct kvm_resize_hpt
|
||||
- [powerpc*] KVM: Book3S HV: Fix use after free in case of multiple resize
|
||||
requests
|
||||
- [powerpc*] KVM: Book3S HV: Always flush TLB in kvmppc_alloc_reset_hpt()
|
||||
- [x86] drm/vmwgfx: Don't cache framebuffer maps
|
||||
- [x86] drm/vmwgfx: Potential off by one in vmw_view_add()
|
||||
- [x86] drm/i915/gvt: Clear the shadow page table entry after post-sync
|
||||
- [x86] drm/i915: Whitelist SLICE_COMMON_ECO_CHICKEN1 on Geminilake.
|
||||
- [x86] drm/i915: Move init_clock_gating() back to where it was
|
||||
- [x86] drm/i915: Fix init_clock_gating for resume
|
||||
- bpf: prevent out-of-bounds speculation (partial mitigation of CVE-2017-5753)
|
||||
- bpf, array: fix overflow in max_entries and undefined behavior in
|
||||
index_mask
|
||||
- bpf: arsh is not supported in 32 bit alu thus reject it
|
||||
- [arm64, armhf] usb: misc: usb3503: make sure reset is low for at least
|
||||
100us
|
||||
- USB: fix usbmon BUG trigger
|
||||
- USB: UDC core: fix double-free in usb_add_gadget_udc_release
|
||||
- usbip: remove kernel addresses from usb device and urb debug msgs
|
||||
- usbip: fix vudc_rx: harden CMD_SUBMIT path to handle malicious input
|
||||
- usbip: vudc_tx: fix v_send_ret_submit() vulnerability to null xfer
|
||||
buffer
|
||||
- staging: android: ashmem: fix a race condition in ASHMEM_SET_SIZE ioctl
|
||||
(CVE-2017-13216)
|
||||
- mux: core: fix double get_device()
|
||||
- kdump: write correct address of mem_section into vmcoreinfo
|
||||
- apparmor: fix ptrace label match when matching stacked labels
|
||||
- [x86] pti: Unbreak EFI old_memmap
|
||||
- [x86] Documentation: Add PTI description
|
||||
- [x86] cpufeatures: Add X86_BUG_SPECTRE_V[12]
|
||||
- sysfs/cpu: Add vulnerability folder
|
||||
- [x86] cpu: Implement CPU vulnerabilites sysfs functions
|
||||
- [x86] tboot: Unbreak tboot with PTI enabled
|
||||
- [x86] mm/pti: Remove dead logic in pti_user_pagetable_walk*()
|
||||
- [x86] cpu/AMD: Make LFENCE a serializing instruction
|
||||
- [x86] cpu/AMD: Use LFENCE_RDTSC in preference to MFENCE_RDTSC
|
||||
- [x86] alternatives: Fix optimize_nops() checking
|
||||
- [x86] pti: Make unpoison of pgd for trusted boot work for real
|
||||
- [x86] retpoline: Add initial retpoline support (partial mitigation of
|
||||
CVE-2017-5715)
|
||||
- [x86] spectre: Add boot time option to select Spectre v2 mitigation
|
||||
- [x86] retpoline/crypto: Convert crypto assembler indirect jumps
|
||||
- [x86] retpoline/entry: Convert entry assembler indirect jumps
|
||||
- [x86] retpoline/ftrace: Convert ftrace assembler indirect jumps
|
||||
- [x86] retpoline/hyperv: Convert assembler indirect jumps
|
||||
- [x86] retpoline/xen: Convert Xen hypercall indirect jumps
|
||||
- [x86] retpoline/checksum32: Convert assembler indirect jumps
|
||||
- [x86] retpoline/irq32: Convert assembler indirect jumps
|
||||
- [x86] retpoline: Fill return stack buffer on vmexit
|
||||
- [x86] pti: Fix !PCID and sanitize defines
|
||||
- [x86] perf: Disable intel_bts when PTI
|
||||
https://www.kernel.org/pub/linux/kernel/v4.x/ChangeLog-4.14.15
|
||||
- tools/objtool/Makefile: don't assume sync-check.sh is executable
|
||||
- objtool: Fix seg fault with clang-compiled objects
|
||||
- objtool: Fix Clang enum conversion warning
|
||||
- objtool: Fix seg fault caused by missing parameter
|
||||
- [powerpc*] pseries: Add H_GET_CPU_CHARACTERISTICS flags & wrapper
|
||||
- [powerpc*] 64: Add macros for annotating the destination of rfid/hrfid
|
||||
- [powerpc*] 64s: Simple RFI macro conversions
|
||||
- [powerpc*] 64: Convert the syscall exit path to use RFI_TO_USER/KERNEL
|
||||
- [powerpc*] 64: Convert fast_exception_return to use RFI_TO_USER/KERNEL
|
||||
- [powerpc*] 64s: Convert slb_miss_common to use RFI_TO_USER/KERNEL
|
||||
- [powerpc*] 64s: Add support for RFI flush of L1-D cache
|
||||
- [powerpc*] 64s: Support disabling RFI flush with no_rfi_flush and nopti
|
||||
- [powerpc*] pseries: Query hypervisor for RFI flush settings
|
||||
- [powerpc*] powernv: Check device-tree for RFI flush settings
|
||||
- futex: Avoid violating the 10th rule of futex
|
||||
- futex: Prevent overflow by strengthen input validation
|
||||
- ALSA: seq: Make ioctls race-free (CVE-2018-1000004)
|
||||
- ALSA: pcm: Remove yet superfluous WARN_ON()
|
||||
- ALSA: hda - Apply headphone noise quirk for another Dell XPS 13 variant
|
||||
- ALSA: hda - Apply the existing quirk to iMac 14,1
|
||||
- IB/hfi1: Prevent a NULL dereference
|
||||
- RDMA/mlx5: Fix out-of-bound access while querying AH
|
||||
- timers: Unconditionally check deferrable base
|
||||
- af_key: fix buffer overread in verify_address_len()
|
||||
- af_key: fix buffer overread in parse_exthdrs()
|
||||
- iser-target: Fix possible use-after-free in connection establishment
|
||||
error
|
||||
- delayacct: Account blkio completion on the correct task
|
||||
- objtool: Fix seg fault with gold linker
|
||||
- [armhf] mmc: sdhci-esdhc-imx: Fix i.MX53 eSDHCv3 clock
|
||||
- [x86] kasan: Panic if there is not enough memory to boot
|
||||
- [x86] retpoline: Fill RSB on context switch for affected CPUs
|
||||
- [x86] retpoline: Add LFENCE to the retpoline/RSB filling RSB macros
|
||||
- objtool: Improve error message for bad file argument
|
||||
- [x86] cpufeature: Move processor tracing out of scattered features
|
||||
- module: Add retpoline tag to VERMAGIC
|
||||
- [x86] intel_rdt/cqm: Prevent use after free
|
||||
- [x86] mm/pkeys: Fix fill_sig_info_pkey
|
||||
- [x86] idt: Mark IDT tables __initconst
|
||||
- [x86] tsc: Future-proof native_calibrate_tsc()
|
||||
- [x86] tsc: Fix erroneous TSC rate on Skylake Xeon
|
||||
- pipe: avoid round_pipe_size() nr_pages overflow on 32-bit
|
||||
- [x86] apic/vector: Fix off by one in error path
|
||||
- [x86] mm: Clean up register saving in the __enc_copy() assembly code
|
||||
- [x86] mm: Use a struct to reduce parameters for SME PGD mapping
|
||||
- [x86] mm: Centralize PMD flags in sme_encrypt_kernel()
|
||||
- [x86] mm: Prepare sme_encrypt_kernel() for PAGE aligned encryption
|
||||
- [armhf] OMAP3: hwmod_data: add missing module_offs for MMC3
|
||||
- [x86] mm: Encrypt the initrd earlier for BSP microcode update
|
||||
- Input: ALPS - fix multi-touch decoding on SS4 plus touchpads
|
||||
- Input: synaptics-rmi4 - prevent UAF reported by KASAN
|
||||
- [armhf] Input: twl6040-vibra - fix child-node lookup
|
||||
- [armhf] Input: twl4030-vibra - fix sibling-node lookup
|
||||
- tracing: Fix converting enum's from the map in trace_event_eval_update()
|
||||
- phy: work around 'phys' references to usb-nop-xceiv devices
|
||||
- [arm64] dts: marvell: armada-cp110: Fix clock resources for various node
|
||||
- [armhf] sunxi_defconfig: Enable CMA
|
||||
- [armel] dts: kirkwood: fix pin-muxing of MPP7 on OpenBlocks A7
|
||||
- can: peak: fix potential bug in packet fragmentation
|
||||
- can: af_can: can_rcv(): replace WARN_ONCE by pr_warn_once
|
||||
- can: af_can: canfd_rcv(): replace WARN_ONCE by pr_warn_once
|
||||
- i2c: core-smbus: prevent stack corruption on read I2C_BLOCK_DATA
|
||||
- proc: fix coredump vs read /proc/*/stat race
|
||||
- libata: apply MAX_SEC_1024 to all LITEON EP1 series devices
|
||||
- workqueue: avoid hard lockups in show_workqueue_state()
|
||||
- [x86] drm/vmwgfx: fix memory corruption with legacy/sou connectors
|
||||
- dm btree: fix serious bug in btree_split_beneath()
|
||||
- dm thin metadata: THIN_MAX_CONCURRENT_LOCKS should be 6
|
||||
- dm integrity: don't store cipher request on the stack
|
||||
- dm crypt: fix crash by adding missing check for auth key size
|
||||
- dm crypt: wipe kernel key copy after IV initialization
|
||||
- dm crypt: fix error return code in crypt_ctr()
|
||||
- [x86] x86: Use __nostackprotect for sme_encrypt_kernel
|
||||
- [alpha] PCI: Fix noname IRQ level detection
|
||||
- [mips*] CM: Drop WARN_ON(vp != 0)
|
||||
- [arm*] KVM: Check pagesize when allocating a hugepage at Stage 2
|
||||
- [arm64] KVM: Fix SMCCC handling of unimplemented SMC/HVC calls
|
||||
- [x86] mce: Make machine check speculation protected
|
||||
- retpoline: Introduce start/end markers of indirect thunk
|
||||
- [x86] kprobes: Blacklist indirect thunk functions for kprobes
|
||||
- [x86] kprobes: Disable optimizing on the function jumps to indirect
|
||||
thunk
|
||||
- [x86] retpoline: Optimize inline assembler for vmexit_fill_RSB
|
||||
- [x86] mm: Rework wbinvd, hlt operation in stop_this_cpu()
|
||||
- mm, page_vma_mapped: Drop faulty pointer arithmetics in check_pte()
|
||||
- [arm64, armhf] net: mvpp2: do not disable GMAC padding
|
||||
- [mips]: AR7: ensure the port type's FCR value is used
|
||||
|
||||
[ Salvatore Bonaccorso ]
|
||||
* loop: fix concurrent lo_open/lo_release (CVE-2018-5344)
|
||||
* Revert "module: Add retpoline tag to VERMAGIC"
|
||||
* [rt] Update to 4.14.15-rt11
|
||||
* nfsd: auth: Fix gid sorting when rootsquash enabled (CVE-2018-1000028)
|
||||
|
||||
[ Ben Hutchings ]
|
||||
* bpf: Avoid ABI change in 4.14.14
|
||||
* usbip: Reduce USBIP_VHCI_HC_PORTS to 15, the maximum allowed for SuperSpeed
|
||||
hubs (Closes: #878866)
|
||||
|
||||
[ Riku Voipio ]
|
||||
* [arm64] build in reset drivers
|
||||
|
||||
-- Salvatore Bonaccorso <carnil@debian.org> Tue, 16 Jan 2018 20:50:23 +0100
|
||||
|
||||
linux (4.14.13-1) unstable; urgency=medium
|
||||
|
||||
* New upstream stable update:
|
||||
|
|
|
@ -780,12 +780,6 @@ CONFIG_QCOM_Q6V5_PIL=m
|
|||
## file: drivers/reset/Kconfig
|
||||
##
|
||||
CONFIG_RESET_CONTROLLER=y
|
||||
CONFIG_RESET_MESON=y
|
||||
|
||||
##
|
||||
## file: drivers/reset/hisilicon/Kconfig
|
||||
##
|
||||
CONFIG_COMMON_RESET_HI6220=m
|
||||
|
||||
##
|
||||
## file: drivers/rpmsg/Kconfig
|
||||
|
|
|
@ -5088,7 +5088,7 @@ CONFIG_UCSI_ACPI=m
|
|||
##
|
||||
CONFIG_USBIP_CORE=m
|
||||
CONFIG_USBIP_VHCI_HCD=m
|
||||
CONFIG_USBIP_VHCI_HC_PORTS=31
|
||||
CONFIG_USBIP_VHCI_HC_PORTS=15
|
||||
CONFIG_USBIP_VHCI_NR_HCS=8
|
||||
CONFIG_USBIP_HOST=m
|
||||
CONFIG_USBIP_VUDC=m
|
||||
|
|
|
@ -1,57 +0,0 @@
|
|||
From: Hannes Reinecke <hare@suse.de>
|
||||
Date: Wed, 10 Jan 2018 08:34:02 +0100
|
||||
Subject: Disable asynchronous aborts for SATA devices
|
||||
Origin: https://marc.info/?l=linux-scsi&m=151557324907914
|
||||
|
||||
Handling CD-ROM devices from libsas is decidedly odd, as libata
|
||||
relies on SCSI EH to be started to figure out that no medium is
|
||||
present.
|
||||
So we cannot do asynchronous aborts for SATA devices.
|
||||
|
||||
Fixes: 909657615d9 ("scsi: libsas: allow async aborts")
|
||||
Cc: <stable@vger.kernel.org> # 4.12+
|
||||
Signed-off-by: Hannes Reinecke <hare@suse.com>
|
||||
Reviewed-by: Christoph Hellwig <hch@lst.de>
|
||||
Tested-by: Yves-Alexis Perez <corsac@debian.org>
|
||||
---
|
||||
drivers/scsi/libsas/sas_scsi_host.c | 17 +++++++++++++++--
|
||||
1 file changed, 15 insertions(+), 2 deletions(-)
|
||||
|
||||
diff --git a/drivers/scsi/libsas/sas_scsi_host.c b/drivers/scsi/libsas/sas_scsi_host.c
|
||||
index 58476b728c57..c9406852c3e9 100644
|
||||
--- a/drivers/scsi/libsas/sas_scsi_host.c
|
||||
+++ b/drivers/scsi/libsas/sas_scsi_host.c
|
||||
@@ -486,15 +486,28 @@ static int sas_queue_reset(struct domain_device *dev, int reset_type,
|
||||
|
||||
int sas_eh_abort_handler(struct scsi_cmnd *cmd)
|
||||
{
|
||||
- int res;
|
||||
+ int res = TMF_RESP_FUNC_FAILED;
|
||||
struct sas_task *task = TO_SAS_TASK(cmd);
|
||||
struct Scsi_Host *host = cmd->device->host;
|
||||
+ struct domain_device *dev = cmd_to_domain_dev(cmd);
|
||||
struct sas_internal *i = to_sas_internal(host->transportt);
|
||||
+ unsigned long flags;
|
||||
|
||||
if (!i->dft->lldd_abort_task)
|
||||
return FAILED;
|
||||
|
||||
- res = i->dft->lldd_abort_task(task);
|
||||
+ spin_lock_irqsave(host->host_lock, flags);
|
||||
+ /* We cannot do async aborts for SATA devices */
|
||||
+ if (dev_is_sata(dev) && !host->host_eh_scheduled) {
|
||||
+ spin_unlock_irqrestore(host->host_lock, flags);
|
||||
+ return FAILED;
|
||||
+ }
|
||||
+ spin_unlock_irqrestore(host->host_lock, flags);
|
||||
+
|
||||
+ if (task)
|
||||
+ res = i->dft->lldd_abort_task(task);
|
||||
+ else
|
||||
+ SAS_DPRINTK("no task to abort\n");
|
||||
if (res == TMF_RESP_FUNC_SUCC || res == TMF_RESP_FUNC_COMPLETE)
|
||||
return SUCCESS;
|
||||
|
||||
--
|
||||
2.11.0
|
||||
|
46
debian/patches/bugfix/all/nfsd-auth-Fix-gid-sorting-when-rootsquash-enabled.patch
vendored
Normal file
46
debian/patches/bugfix/all/nfsd-auth-Fix-gid-sorting-when-rootsquash-enabled.patch
vendored
Normal file
|
@ -0,0 +1,46 @@
|
|||
From: Ben Hutchings <ben.hutchings@codethink.co.uk>
|
||||
Date: Mon, 22 Jan 2018 20:11:06 +0000
|
||||
Subject: nfsd: auth: Fix gid sorting when rootsquash enabled
|
||||
Origin: https://git.kernel.org/linus/1995266727fa8143897e89b55f5d3c79aa828420
|
||||
Bug-Debian-Security: https://security-tracker.debian.org/tracker/CVE-2018-1000028
|
||||
|
||||
Commit bdcf0a423ea1 ("kernel: make groups_sort calling a responsibility
|
||||
group_info allocators") appears to break nfsd rootsquash in a pretty
|
||||
major way.
|
||||
|
||||
It adds a call to groups_sort() inside the loop that copies/squashes
|
||||
gids, which means the valid gids are sorted along with the following
|
||||
garbage. The net result is that the highest numbered valid gids are
|
||||
replaced with any lower-valued garbage gids, possibly including 0.
|
||||
|
||||
We should sort only once, after filling in all the gids.
|
||||
|
||||
Fixes: bdcf0a423ea1 ("kernel: make groups_sort calling a responsibility ...")
|
||||
Signed-off-by: Ben Hutchings <ben.hutchings@codethink.co.uk>
|
||||
Acked-by: J. Bruce Fields <bfields@redhat.com>
|
||||
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
|
||||
---
|
||||
fs/nfsd/auth.c | 6 +++---
|
||||
1 file changed, 3 insertions(+), 3 deletions(-)
|
||||
|
||||
diff --git a/fs/nfsd/auth.c b/fs/nfsd/auth.c
|
||||
index f650e475d8f0..fdf2aad73470 100644
|
||||
--- a/fs/nfsd/auth.c
|
||||
+++ b/fs/nfsd/auth.c
|
||||
@@ -60,10 +60,10 @@ int nfsd_setuser(struct svc_rqst *rqstp, struct svc_export *exp)
|
||||
gi->gid[i] = exp->ex_anon_gid;
|
||||
else
|
||||
gi->gid[i] = rqgi->gid[i];
|
||||
-
|
||||
- /* Each thread allocates its own gi, no race */
|
||||
- groups_sort(gi);
|
||||
}
|
||||
+
|
||||
+ /* Each thread allocates its own gi, no race */
|
||||
+ groups_sort(gi);
|
||||
} else {
|
||||
gi = get_group_info(rqgi);
|
||||
}
|
||||
--
|
||||
2.11.0
|
||||
|
|
@ -1,7 +1,7 @@
|
|||
From: Thomas Gleixner <tglx@linutronix.de>
|
||||
Date: Wed, 20 Dec 2017 17:12:50 +0100
|
||||
Subject: [PATCH 01/29] timers: Use static keys for migrate_enable/nohz_active
|
||||
Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.14/older/patches-4.14.8-rt9.tar.xz
|
||||
Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.14/older/patches-4.14.15-rt11.tar.xz
|
||||
|
||||
The members migrate_enable and nohz_active in the timer/hrtimer per CPU
|
||||
bases have been introduced to avoid accessing global variables for these
|
||||
|
@ -19,11 +19,11 @@ Signed-off-by: Anna-Maria Gleixner <anna-maria@linutronix.de>
|
|||
Signed-off-by: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
|
||||
---
|
||||
include/linux/hrtimer.h | 4 --
|
||||
kernel/time/hrtimer.c | 17 ++------
|
||||
kernel/time/tick-internal.h | 19 ++++++---
|
||||
kernel/time/hrtimer.c | 17 ++-------
|
||||
kernel/time/tick-internal.h | 19 ++++++----
|
||||
kernel/time/tick-sched.c | 2 -
|
||||
kernel/time/timer.c | 85 ++++++++++++++++++++++----------------------
|
||||
5 files changed, 62 insertions(+), 65 deletions(-)
|
||||
kernel/time/timer.c | 83 ++++++++++++++++++++++----------------------
|
||||
5 files changed, 61 insertions(+), 64 deletions(-)
|
||||
|
||||
--- a/include/linux/hrtimer.h
|
||||
+++ b/include/linux/hrtimer.h
|
||||
|
@ -115,7 +115,7 @@ Signed-off-by: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
|
|||
DECLARE_PER_CPU(struct hrtimer_cpu_base, hrtimer_bases);
|
||||
--- a/kernel/time/tick-sched.c
|
||||
+++ b/kernel/time/tick-sched.c
|
||||
@@ -1103,7 +1103,7 @@ static inline void tick_nohz_activate(st
|
||||
@@ -1131,7 +1131,7 @@ static inline void tick_nohz_activate(st
|
||||
ts->nohz_mode = mode;
|
||||
/* One update is enough */
|
||||
if (!test_and_set_bit(0, &tick_nohz_active))
|
||||
|
@ -271,12 +271,3 @@ Signed-off-by: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
|
|||
|
||||
|
||||
/*
|
||||
@@ -1656,7 +1659,7 @@ void run_local_timers(void)
|
||||
hrtimer_run_queues();
|
||||
/* Raise the softirq only if required. */
|
||||
if (time_before(jiffies, base->clk)) {
|
||||
- if (!IS_ENABLED(CONFIG_NO_HZ_COMMON) || !base->nohz_active)
|
||||
+ if (!is_timers_nohz_active())
|
||||
return;
|
||||
/* CPU is awake, so check the deferrable base. */
|
||||
base++;
|
||||
|
|
|
@ -2,7 +2,7 @@ From: Tom Zanussi <tom.zanussi@linux.intel.com>
|
|||
Date: Thu, 21 Dec 2017 10:02:23 -0600
|
||||
Subject: [PATCH 01/37] tracing: Move hist trigger Documentation to
|
||||
histogram.txt
|
||||
Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.14/older/patches-4.14.8-rt9.tar.xz
|
||||
Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.14/older/patches-4.14.15-rt11.tar.xz
|
||||
|
||||
The hist trigger Documentation takes up a large part of events.txt -
|
||||
since it will be getting even larger, move it to a separate file.
|
||||
|
|
|
@ -2,7 +2,7 @@ From: Steven Rostedt <rostedt@goodmis.org>
|
|||
Date: Fri, 22 Sep 2017 14:58:15 -0500
|
||||
Subject: [PATCH 01/42] tracing: Steve's unofficial trace_recursive_lock()
|
||||
patch
|
||||
Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.14/older/patches-4.14.8-rt9.tar.xz
|
||||
Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.14/older/patches-4.14.15-rt11.tar.xz
|
||||
|
||||
On Tue, 5 Sep 2017 16:57:52 -0500
|
||||
Tom Zanussi <tom.zanussi@linux.intel.com> wrote:
|
||||
|
@ -38,7 +38,7 @@ Signed-off-by: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
|
|||
|
||||
--- a/kernel/trace/ring_buffer.c
|
||||
+++ b/kernel/trace/ring_buffer.c
|
||||
@@ -2538,61 +2538,29 @@ rb_wakeups(struct ring_buffer *buffer, s
|
||||
@@ -2542,61 +2542,29 @@ rb_wakeups(struct ring_buffer *buffer, s
|
||||
* The lock and unlock are done within a preempt disable section.
|
||||
* The current_context per_cpu variable can only be modified
|
||||
* by the current task between lock and unlock. But it can
|
||||
|
@ -115,7 +115,7 @@ Signed-off-by: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
|
|||
|
||||
return 0;
|
||||
}
|
||||
@@ -2600,7 +2568,9 @@ trace_recursive_lock(struct ring_buffer_
|
||||
@@ -2604,7 +2572,9 @@ trace_recursive_lock(struct ring_buffer_
|
||||
static __always_inline void
|
||||
trace_recursive_unlock(struct ring_buffer_per_cpu *cpu_buffer)
|
||||
{
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
From: Thomas Gleixner <tglx@linutronix.de>
|
||||
Date: Wed, 20 Dec 2017 17:12:51 +0100
|
||||
Subject: [PATCH 02/29] hrtimer: Correct blantanly wrong comment
|
||||
Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.14/older/patches-4.14.8-rt9.tar.xz
|
||||
Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.14/older/patches-4.14.15-rt11.tar.xz
|
||||
|
||||
The protection of a hrtimer which runs its callback against migration to a
|
||||
different CPU has nothing to do with hard interrupt context.
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
From: Tom Zanussi <tom.zanussi@linux.intel.com>
|
||||
Date: Thu, 21 Dec 2017 10:02:24 -0600
|
||||
Subject: [PATCH 02/37] tracing: Add Documentation for log2 modifier
|
||||
Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.14/older/patches-4.14.8-rt9.tar.xz
|
||||
Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.14/older/patches-4.14.15-rt11.tar.xz
|
||||
|
||||
Add a line for the log2 modifier, to keep it aligned with
|
||||
tracing/README.
|
||||
|
|
|
@ -2,7 +2,7 @@ From: "Steven Rostedt (VMware)" <rostedt@goodmis.org>
|
|||
Date: Fri, 22 Sep 2017 14:58:16 -0500
|
||||
Subject: [PATCH 02/42] tracing: Reverse the order of trace_types_lock and
|
||||
event_mutex
|
||||
Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.14/older/patches-4.14.8-rt9.tar.xz
|
||||
Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.14/older/patches-4.14.15-rt11.tar.xz
|
||||
|
||||
In order to make future changes where we need to call
|
||||
tracing_set_clock() from within an event command, the order of
|
||||
|
@ -20,7 +20,7 @@ Signed-off-by: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
|
|||
|
||||
--- a/kernel/trace/trace.c
|
||||
+++ b/kernel/trace/trace.c
|
||||
@@ -7687,6 +7687,7 @@ static int instance_mkdir(const char *na
|
||||
@@ -7671,6 +7671,7 @@ static int instance_mkdir(const char *na
|
||||
struct trace_array *tr;
|
||||
int ret;
|
||||
|
||||
|
@ -28,7 +28,7 @@ Signed-off-by: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
|
|||
mutex_lock(&trace_types_lock);
|
||||
|
||||
ret = -EEXIST;
|
||||
@@ -7742,6 +7743,7 @@ static int instance_mkdir(const char *na
|
||||
@@ -7726,6 +7727,7 @@ static int instance_mkdir(const char *na
|
||||
list_add(&tr->list, &ftrace_trace_arrays);
|
||||
|
||||
mutex_unlock(&trace_types_lock);
|
||||
|
@ -36,7 +36,7 @@ Signed-off-by: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
|
|||
|
||||
return 0;
|
||||
|
||||
@@ -7753,6 +7755,7 @@ static int instance_mkdir(const char *na
|
||||
@@ -7737,6 +7739,7 @@ static int instance_mkdir(const char *na
|
||||
|
||||
out_unlock:
|
||||
mutex_unlock(&trace_types_lock);
|
||||
|
@ -44,7 +44,7 @@ Signed-off-by: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
|
|||
|
||||
return ret;
|
||||
|
||||
@@ -7765,6 +7768,7 @@ static int instance_rmdir(const char *na
|
||||
@@ -7749,6 +7752,7 @@ static int instance_rmdir(const char *na
|
||||
int ret;
|
||||
int i;
|
||||
|
||||
|
@ -52,7 +52,7 @@ Signed-off-by: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
|
|||
mutex_lock(&trace_types_lock);
|
||||
|
||||
ret = -ENODEV;
|
||||
@@ -7810,6 +7814,7 @@ static int instance_rmdir(const char *na
|
||||
@@ -7794,6 +7798,7 @@ static int instance_rmdir(const char *na
|
||||
|
||||
out_unlock:
|
||||
mutex_unlock(&trace_types_lock);
|
||||
|
@ -82,7 +82,7 @@ Signed-off-by: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
|
|||
|
||||
if (!system)
|
||||
return -ENODEV;
|
||||
@@ -2294,15 +2294,15 @@ static void __add_event_to_tracers(struc
|
||||
@@ -2308,15 +2308,15 @@ static void __add_event_to_tracers(struc
|
||||
int trace_add_event_call(struct trace_event_call *call)
|
||||
{
|
||||
int ret;
|
||||
|
@ -100,7 +100,7 @@ Signed-off-by: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
|
|||
return ret;
|
||||
}
|
||||
|
||||
@@ -2356,13 +2356,13 @@ int trace_remove_event_call(struct trace
|
||||
@@ -2370,13 +2370,13 @@ int trace_remove_event_call(struct trace
|
||||
{
|
||||
int ret;
|
||||
|
||||
|
@ -116,7 +116,7 @@ Signed-off-by: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
|
|||
|
||||
return ret;
|
||||
}
|
||||
@@ -2424,8 +2424,8 @@ static int trace_module_notify(struct no
|
||||
@@ -2438,8 +2438,8 @@ static int trace_module_notify(struct no
|
||||
{
|
||||
struct module *mod = data;
|
||||
|
||||
|
@ -126,7 +126,7 @@ Signed-off-by: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
|
|||
switch (val) {
|
||||
case MODULE_STATE_COMING:
|
||||
trace_module_add_events(mod);
|
||||
@@ -2434,8 +2434,8 @@ static int trace_module_notify(struct no
|
||||
@@ -2448,8 +2448,8 @@ static int trace_module_notify(struct no
|
||||
trace_module_remove_events(mod);
|
||||
break;
|
||||
}
|
||||
|
@ -136,7 +136,7 @@ Signed-off-by: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
|
|||
|
||||
return 0;
|
||||
}
|
||||
@@ -2950,24 +2950,24 @@ create_event_toplevel_files(struct dentr
|
||||
@@ -2964,24 +2964,24 @@ create_event_toplevel_files(struct dentr
|
||||
* creates the event hierachry in the @parent/events directory.
|
||||
*
|
||||
* Returns 0 on success.
|
||||
|
@ -166,7 +166,7 @@ Signed-off-by: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
|
|||
return ret;
|
||||
}
|
||||
|
||||
@@ -2996,9 +2996,10 @@ early_event_add_tracer(struct dentry *pa
|
||||
@@ -3010,9 +3010,10 @@ early_event_add_tracer(struct dentry *pa
|
||||
return ret;
|
||||
}
|
||||
|
||||
|
@ -178,7 +178,7 @@ Signed-off-by: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
|
|||
|
||||
/* Disable any event triggers and associated soft-disabled events */
|
||||
clear_event_triggers(tr);
|
||||
@@ -3019,8 +3020,6 @@ int event_trace_del_tracer(struct trace_
|
||||
@@ -3033,8 +3034,6 @@ int event_trace_del_tracer(struct trace_
|
||||
|
||||
tr->event_dir = NULL;
|
||||
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
From: Anna-Maria Gleixner <anna-maria@linutronix.de>
|
||||
Date: Wed, 20 Dec 2017 17:12:52 +0100
|
||||
Subject: [PATCH 03/29] hrtimer: Fix kerneldoc for struct hrtimer_cpu_base
|
||||
Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.14/older/patches-4.14.8-rt9.tar.xz
|
||||
Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.14/older/patches-4.14.15-rt11.tar.xz
|
||||
|
||||
The sequence '/**' marks the start of a struct description. Add the
|
||||
missing second asterisk. While at it adapt the ordering of the struct
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
From: Vedang Patel <vedang.patel@intel.com>
|
||||
Date: Thu, 21 Dec 2017 10:02:25 -0600
|
||||
Subject: [PATCH 03/37] tracing: Add support to detect and avoid duplicates
|
||||
Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.14/older/patches-4.14.8-rt9.tar.xz
|
||||
Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.14/older/patches-4.14.15-rt11.tar.xz
|
||||
|
||||
A duplicate in the tracing_map hash table is when 2 different entries
|
||||
have the same key and, as a result, the key_hash. This is possible due
|
||||
|
|
|
@ -2,7 +2,7 @@ From: Anna-Maria Gleixner <anna-maria@linutronix.de>
|
|||
Date: Wed, 20 Dec 2017 17:12:53 +0100
|
||||
Subject: [PATCH 04/29] hrtimer: Cleanup clock argument in
|
||||
schedule_hrtimeout_range_clock()
|
||||
Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.14/older/patches-4.14.8-rt9.tar.xz
|
||||
Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.14/older/patches-4.14.15-rt11.tar.xz
|
||||
|
||||
schedule_hrtimeout_range_clock() uses an integer for the clock id
|
||||
instead of the predefined type "clockid_t". The ID of the clock is
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
From: Vedang Patel <vedang.patel@intel.com>
|
||||
Date: Thu, 21 Dec 2017 10:02:26 -0600
|
||||
Subject: [PATCH 04/37] tracing: Remove code which merges duplicates
|
||||
Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.14/older/patches-4.14.8-rt9.tar.xz
|
||||
Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.14/older/patches-4.14.15-rt11.tar.xz
|
||||
|
||||
We now have the logic to detect and remove duplicates in the
|
||||
tracing_map hash table. The code which merges duplicates in the
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
From: Tom Zanussi <tom.zanussi@linux.intel.com>
|
||||
Date: Fri, 22 Sep 2017 14:58:18 -0500
|
||||
Subject: [PATCH 04/42] tracing: Remove lookups from tracing_map hitcount
|
||||
Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.14/older/patches-4.14.8-rt9.tar.xz
|
||||
Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.14/older/patches-4.14.15-rt11.tar.xz
|
||||
|
||||
Lookups inflate the hitcount, making it essentially useless. Only
|
||||
inserts and updates should really affect the hitcount anyway, so
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
From: Anna-Maria Gleixner <anna-maria@linutronix.de>
|
||||
Date: Wed, 20 Dec 2017 17:12:54 +0100
|
||||
Subject: [PATCH 05/29] hrtimer: Fix hrtimer function description
|
||||
Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.14/older/patches-4.14.8-rt9.tar.xz
|
||||
Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.14/older/patches-4.14.15-rt11.tar.xz
|
||||
|
||||
The hrtimer_start[_range_ns]() starts a timer reliable on this CPU only
|
||||
when HRTIMER_MODE_PINNED is set. Furthermore the HRTIMER_MODE_PINNED mode
|
||||
|
|
|
@ -2,7 +2,7 @@ From: Tom Zanussi <tom.zanussi@linux.intel.com>
|
|||
Date: Thu, 21 Dec 2017 10:02:27 -0600
|
||||
Subject: [PATCH 05/37] ring-buffer: Add interface for setting absolute time
|
||||
stamps
|
||||
Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.14/older/patches-4.14.8-rt9.tar.xz
|
||||
Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.14/older/patches-4.14.15-rt11.tar.xz
|
||||
|
||||
Define a new function, tracing_set_time_stamp_abs(), which can be used
|
||||
to enable or disable the use of absolute timestamps rather than time
|
||||
|
@ -34,7 +34,7 @@ Signed-off-by: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
|
|||
|
||||
--- a/kernel/trace/ring_buffer.c
|
||||
+++ b/kernel/trace/ring_buffer.c
|
||||
@@ -485,6 +485,7 @@ struct ring_buffer {
|
||||
@@ -489,6 +489,7 @@ struct ring_buffer {
|
||||
u64 (*clock)(void);
|
||||
|
||||
struct rb_irq_work irq_work;
|
||||
|
@ -42,7 +42,7 @@ Signed-off-by: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
|
|||
};
|
||||
|
||||
struct ring_buffer_iter {
|
||||
@@ -1379,6 +1380,16 @@ void ring_buffer_set_clock(struct ring_b
|
||||
@@ -1383,6 +1384,16 @@ void ring_buffer_set_clock(struct ring_b
|
||||
buffer->clock = clock;
|
||||
}
|
||||
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
From: Tom Zanussi <tom.zanussi@linux.intel.com>
|
||||
Date: Fri, 22 Sep 2017 14:58:19 -0500
|
||||
Subject: [PATCH 05/42] tracing: Increase tracing map KEYS_MAX size
|
||||
Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.14/older/patches-4.14.8-rt9.tar.xz
|
||||
Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.14/older/patches-4.14.15-rt11.tar.xz
|
||||
|
||||
The current default for the number of subkeys in a compound key is 2,
|
||||
which is too restrictive. Increase it to a more realistic value of 3.
|
||||
|
|
|
@ -2,7 +2,7 @@ From: Anna-Maria Gleixner <anna-maria@linutronix.de>
|
|||
Date: Wed, 20 Dec 2017 17:12:55 +0100
|
||||
Subject: [PATCH 06/29] hrtimer: Ensure POSIX compliance (relative
|
||||
CLOCK_REALTIME hrtimers)
|
||||
Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.14/older/patches-4.14.8-rt9.tar.xz
|
||||
Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.14/older/patches-4.14.15-rt11.tar.xz
|
||||
|
||||
POSIX specification defines, that relative CLOCK_REALTIME timers are not
|
||||
affected by clock modifications. Those timers have to use CLOCK_MONOTONIC
|
||||
|
|
|
@ -2,7 +2,7 @@ From: Tom Zanussi <tom.zanussi@linux.intel.com>
|
|||
Date: Thu, 21 Dec 2017 10:02:28 -0600
|
||||
Subject: [PATCH 06/37] ring-buffer: Redefine the unimplemented
|
||||
RINGBUF_TYPE_TIME_STAMP
|
||||
Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.14/older/patches-4.14.8-rt9.tar.xz
|
||||
Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.14/older/patches-4.14.15-rt11.tar.xz
|
||||
|
||||
RINGBUF_TYPE_TIME_STAMP is defined but not used, and from what I can
|
||||
gather was reserved for something like an absolute timestamp feature
|
||||
|
@ -144,7 +144,7 @@ Signed-off-by: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
|
|||
/* Flag when events were overwritten */
|
||||
#define RB_MISSED_EVENTS (1 << 31)
|
||||
/* Missed count stored at end */
|
||||
@@ -2221,12 +2247,15 @@ rb_move_tail(struct ring_buffer_per_cpu
|
||||
@@ -2225,12 +2251,15 @@ rb_move_tail(struct ring_buffer_per_cpu
|
||||
|
||||
/* Slow path, do not inline */
|
||||
static noinline struct ring_buffer_event *
|
||||
|
@ -164,7 +164,7 @@ Signed-off-by: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
|
|||
event->time_delta = delta & TS_MASK;
|
||||
event->array[0] = delta >> TS_SHIFT;
|
||||
} else {
|
||||
@@ -2269,7 +2298,9 @@ rb_update_event(struct ring_buffer_per_c
|
||||
@@ -2273,7 +2302,9 @@ rb_update_event(struct ring_buffer_per_c
|
||||
* add it to the start of the resevered space.
|
||||
*/
|
||||
if (unlikely(info->add_timestamp)) {
|
||||
|
@ -175,7 +175,7 @@ Signed-off-by: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
|
|||
length -= RB_LEN_TIME_EXTEND;
|
||||
delta = 0;
|
||||
}
|
||||
@@ -2457,7 +2488,7 @@ static __always_inline void rb_end_commi
|
||||
@@ -2461,7 +2492,7 @@ static __always_inline void rb_end_commi
|
||||
|
||||
static inline void rb_event_discard(struct ring_buffer_event *event)
|
||||
{
|
||||
|
@ -184,7 +184,7 @@ Signed-off-by: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
|
|||
event = skip_time_extend(event);
|
||||
|
||||
/* array[0] holds the actual length for the discarded event */
|
||||
@@ -2501,10 +2532,11 @@ rb_update_write_stamp(struct ring_buffer
|
||||
@@ -2505,10 +2536,11 @@ rb_update_write_stamp(struct ring_buffer
|
||||
cpu_buffer->write_stamp =
|
||||
cpu_buffer->commit_page->page->time_stamp;
|
||||
else if (event->type_len == RINGBUF_TYPE_TIME_EXTEND) {
|
||||
|
@ -199,7 +199,7 @@ Signed-off-by: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
|
|||
} else
|
||||
cpu_buffer->write_stamp += event->time_delta;
|
||||
}
|
||||
@@ -2657,7 +2689,7 @@ static struct ring_buffer_event *
|
||||
@@ -2661,7 +2693,7 @@ static struct ring_buffer_event *
|
||||
* If this is the first commit on the page, then it has the same
|
||||
* timestamp as the page itself.
|
||||
*/
|
||||
|
@ -208,7 +208,7 @@ Signed-off-by: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
|
|||
info->delta = 0;
|
||||
|
||||
/* See if we shot pass the end of this buffer page */
|
||||
@@ -2735,8 +2767,11 @@ rb_reserve_next_event(struct ring_buffer
|
||||
@@ -2739,8 +2771,11 @@ rb_reserve_next_event(struct ring_buffer
|
||||
/* make sure this diff is calculated here */
|
||||
barrier();
|
||||
|
||||
|
@ -222,7 +222,7 @@ Signed-off-by: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
|
|||
info.delta = diff;
|
||||
if (unlikely(test_time_stamp(info.delta)))
|
||||
rb_handle_timestamp(cpu_buffer, &info);
|
||||
@@ -3418,14 +3453,13 @@ rb_update_read_stamp(struct ring_buffer_
|
||||
@@ -3422,14 +3457,13 @@ rb_update_read_stamp(struct ring_buffer_
|
||||
return;
|
||||
|
||||
case RINGBUF_TYPE_TIME_EXTEND:
|
||||
|
@ -240,7 +240,7 @@ Signed-off-by: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
|
|||
return;
|
||||
|
||||
case RINGBUF_TYPE_DATA:
|
||||
@@ -3449,14 +3483,13 @@ rb_update_iter_read_stamp(struct ring_bu
|
||||
@@ -3453,14 +3487,13 @@ rb_update_iter_read_stamp(struct ring_bu
|
||||
return;
|
||||
|
||||
case RINGBUF_TYPE_TIME_EXTEND:
|
||||
|
@ -258,7 +258,7 @@ Signed-off-by: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
|
|||
return;
|
||||
|
||||
case RINGBUF_TYPE_DATA:
|
||||
@@ -3680,6 +3713,8 @@ rb_buffer_peek(struct ring_buffer_per_cp
|
||||
@@ -3684,6 +3717,8 @@ rb_buffer_peek(struct ring_buffer_per_cp
|
||||
struct buffer_page *reader;
|
||||
int nr_loops = 0;
|
||||
|
||||
|
@ -267,7 +267,7 @@ Signed-off-by: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
|
|||
again:
|
||||
/*
|
||||
* We repeat when a time extend is encountered.
|
||||
@@ -3716,12 +3751,17 @@ rb_buffer_peek(struct ring_buffer_per_cp
|
||||
@@ -3720,12 +3755,17 @@ rb_buffer_peek(struct ring_buffer_per_cp
|
||||
goto again;
|
||||
|
||||
case RINGBUF_TYPE_TIME_STAMP:
|
||||
|
@ -287,7 +287,7 @@ Signed-off-by: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
|
|||
*ts = cpu_buffer->read_stamp + event->time_delta;
|
||||
ring_buffer_normalize_time_stamp(cpu_buffer->buffer,
|
||||
cpu_buffer->cpu, ts);
|
||||
@@ -3746,6 +3786,9 @@ rb_iter_peek(struct ring_buffer_iter *it
|
||||
@@ -3750,6 +3790,9 @@ rb_iter_peek(struct ring_buffer_iter *it
|
||||
struct ring_buffer_event *event;
|
||||
int nr_loops = 0;
|
||||
|
||||
|
@ -297,7 +297,7 @@ Signed-off-by: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
|
|||
cpu_buffer = iter->cpu_buffer;
|
||||
buffer = cpu_buffer->buffer;
|
||||
|
||||
@@ -3798,12 +3841,17 @@ rb_iter_peek(struct ring_buffer_iter *it
|
||||
@@ -3802,12 +3845,17 @@ rb_iter_peek(struct ring_buffer_iter *it
|
||||
goto again;
|
||||
|
||||
case RINGBUF_TYPE_TIME_STAMP:
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
From: Tom Zanussi <tom.zanussi@linux.intel.com>
|
||||
Date: Fri, 22 Sep 2017 14:58:20 -0500
|
||||
Subject: [PATCH 06/42] tracing: Make traceprobe parsing code reusable
|
||||
Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.14/older/patches-4.14.8-rt9.tar.xz
|
||||
Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.14/older/patches-4.14.15-rt11.tar.xz
|
||||
|
||||
traceprobe_probes_write() and traceprobe_command() actually contain
|
||||
nothing that ties them to kprobes - the code is generically useful for
|
||||
|
@ -25,7 +25,7 @@ Signed-off-by: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
|
|||
|
||||
--- a/kernel/trace/trace.c
|
||||
+++ b/kernel/trace/trace.c
|
||||
@@ -8281,6 +8281,92 @@ void ftrace_dump(enum ftrace_dump_mode o
|
||||
@@ -8265,6 +8265,92 @@ void ftrace_dump(enum ftrace_dump_mode o
|
||||
}
|
||||
EXPORT_SYMBOL_GPL(ftrace_dump);
|
||||
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
From: Anna-Maria Gleixner <anna-maria@linutronix.de>
|
||||
Date: Wed, 20 Dec 2017 17:12:56 +0100
|
||||
Subject: [PATCH 07/29] hrtimer: Cleanup hrtimer_mode enum
|
||||
Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.14/older/patches-4.14.8-rt9.tar.xz
|
||||
Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.14/older/patches-4.14.15-rt11.tar.xz
|
||||
|
||||
It's not obvious that the HRTIMER_MODE variants are bit combinations
|
||||
because all modes are hard coded constants.
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
From: Tom Zanussi <tom.zanussi@linux.intel.com>
|
||||
Date: Thu, 21 Dec 2017 10:02:29 -0600
|
||||
Subject: [PATCH 07/37] tracing: Add timestamp_mode trace file
|
||||
Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.14/older/patches-4.14.8-rt9.tar.xz
|
||||
Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.14/older/patches-4.14.15-rt11.tar.xz
|
||||
|
||||
Add a new option flag indicating whether or not the ring buffer is in
|
||||
'absolute timestamp' mode.
|
||||
|
@ -122,7 +122,7 @@ Signed-off-by: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
|
|||
#ifdef CONFIG_TRACER_SNAPSHOT
|
||||
static const struct file_operations snapshot_fops = {
|
||||
.open = tracing_snapshot_open,
|
||||
@@ -7892,6 +7936,9 @@ init_tracer_tracefs(struct trace_array *
|
||||
@@ -7887,6 +7931,9 @@ init_tracer_tracefs(struct trace_array *
|
||||
trace_create_file("tracing_on", 0644, d_tracer,
|
||||
tr, &rb_simple_fops);
|
||||
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
From: Tom Zanussi <tom.zanussi@linux.intel.com>
|
||||
Date: Fri, 22 Sep 2017 14:58:21 -0500
|
||||
Subject: [PATCH 07/42] tracing: Clean up hist_field_flags enum
|
||||
Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.14/older/patches-4.14.8-rt9.tar.xz
|
||||
Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.14/older/patches-4.14.15-rt11.tar.xz
|
||||
|
||||
As we add more flags, specifying explicit integers for the flag values
|
||||
becomes more unwieldy and error-prone - switch them over to left-shift
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
From: Tom Zanussi <tom.zanussi@linux.intel.com>
|
||||
Date: Fri, 22 Sep 2017 14:58:22 -0500
|
||||
Subject: [PATCH 08/42] tracing: Add hist_field_name() accessor
|
||||
Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.14/older/patches-4.14.8-rt9.tar.xz
|
||||
Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.14/older/patches-4.14.15-rt11.tar.xz
|
||||
|
||||
In preparation for hist_fields that won't be strictly based on
|
||||
trace_event_fields, add a new hist_field_name() accessor to allow that
|
||||
|
|
|
@ -2,7 +2,7 @@ From: Tom Zanussi <tom.zanussi@linux.intel.com>
|
|||
Date: Thu, 21 Dec 2017 10:02:30 -0600
|
||||
Subject: [PATCH 08/37] tracing: Give event triggers access to
|
||||
ring_buffer_event
|
||||
Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.14/older/patches-4.14.8-rt9.tar.xz
|
||||
Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.14/older/patches-4.14.15-rt11.tar.xz
|
||||
|
||||
The ring_buffer event can provide a timestamp that may be useful to
|
||||
various triggers - pass it into the handlers for that purpose.
|
||||
|
|
|
@ -2,7 +2,7 @@ From: Anna-Maria Gleixner <anna-maria@linutronix.de>
|
|||
Date: Wed, 20 Dec 2017 17:12:57 +0100
|
||||
Subject: [PATCH 08/29] tracing/hrtimer: Take all clock bases and modes into
|
||||
account
|
||||
Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.14/older/patches-4.14.8-rt9.tar.xz
|
||||
Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.14/older/patches-4.14.15-rt11.tar.xz
|
||||
|
||||
So far only CLOCK_MONOTONIC and CLOCK_REALTIME were taken into account as
|
||||
well as HRTIMER_MODE_ABS/REL in hrtimer_init tracepoint. The query for
|
||||
|
|
|
@ -2,7 +2,7 @@ From: Tom Zanussi <tom.zanussi@linux.intel.com>
|
|||
Date: Thu, 21 Dec 2017 10:02:31 -0600
|
||||
Subject: [PATCH 09/37] tracing: Add ring buffer event param to hist field
|
||||
functions
|
||||
Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.14/older/patches-4.14.8-rt9.tar.xz
|
||||
Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.14/older/patches-4.14.15-rt11.tar.xz
|
||||
|
||||
Some events such as timestamps require access to a ring_buffer_event
|
||||
struct; add a param so that hist field functions can access that.
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
From: Tom Zanussi <tom.zanussi@linux.intel.com>
|
||||
Date: Fri, 22 Sep 2017 14:58:23 -0500
|
||||
Subject: [PATCH 09/42] tracing: Reimplement log2
|
||||
Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.14/older/patches-4.14.8-rt9.tar.xz
|
||||
Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.14/older/patches-4.14.15-rt11.tar.xz
|
||||
|
||||
log2 as currently implemented applies only to u64 trace_event_field
|
||||
derived fields, and assumes that anything it's applied to is a u64
|
||||
|
|
|
@ -2,7 +2,7 @@ From: Anna-Maria Gleixner <anna-maria@linutronix.de>
|
|||
Date: Wed, 20 Dec 2017 17:12:58 +0100
|
||||
Subject: [PATCH 09/29] tracing/hrtimer: Print hrtimer mode in hrtimer_start
|
||||
tracepoint
|
||||
Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.14/older/patches-4.14.8-rt9.tar.xz
|
||||
Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.14/older/patches-4.14.15-rt11.tar.xz
|
||||
|
||||
The hrtimer_start tracepoint lacks the mode information. The mode is
|
||||
important because consecutive starts can switch from ABS to REL or from
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
From: Anna-Maria Gleixner <anna-maria@linutronix.de>
|
||||
Date: Wed, 20 Dec 2017 17:12:59 +0100
|
||||
Subject: [PATCH 10/29] hrtimer: Switch for loop to _ffs() evaluation
|
||||
Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.14/older/patches-4.14.8-rt9.tar.xz
|
||||
Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.14/older/patches-4.14.15-rt11.tar.xz
|
||||
|
||||
Looping over all clock bases to find active bits is suboptimal if not all
|
||||
bases are active.
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
From: Tom Zanussi <tom.zanussi@linux.intel.com>
|
||||
Date: Thu, 21 Dec 2017 10:02:32 -0600
|
||||
Subject: [PATCH 10/37] tracing: Break out hist trigger assignment parsing
|
||||
Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.14/older/patches-4.14.8-rt9.tar.xz
|
||||
Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.14/older/patches-4.14.15-rt11.tar.xz
|
||||
|
||||
This will make it easier to add variables, and makes the parsing code
|
||||
cleaner regardless.
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
From: Anna-Maria Gleixner <anna-maria@linutronix.de>
|
||||
Date: Wed, 20 Dec 2017 17:13:00 +0100
|
||||
Subject: [PATCH 11/29] hrtimer: Store running timer in hrtimer_clock_base
|
||||
Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.14/older/patches-4.14.8-rt9.tar.xz
|
||||
Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.14/older/patches-4.14.15-rt11.tar.xz
|
||||
|
||||
The pointer to the currently running timer is stored in hrtimer_cpu_base
|
||||
before the base lock is dropped and the callback is invoked.
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
From: Tom Zanussi <tom.zanussi@linux.intel.com>
|
||||
Date: Thu, 21 Dec 2017 10:02:33 -0600
|
||||
Subject: [PATCH 11/37] tracing: Add hist trigger timestamp support
|
||||
Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.14/older/patches-4.14.8-rt9.tar.xz
|
||||
Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.14/older/patches-4.14.15-rt11.tar.xz
|
||||
|
||||
Add support for a timestamp event field. This is actually a 'pseudo-'
|
||||
event field in that it behaves like it's part of the event record, but
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
From: Anna-Maria Gleixner <anna-maria@linutronix.de>
|
||||
Date: Wed, 20 Dec 2017 17:13:01 +0100
|
||||
Subject: [PATCH 12/29] hrtimer: Make room in struct hrtimer_cpu_base
|
||||
Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.14/older/patches-4.14.8-rt9.tar.xz
|
||||
Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.14/older/patches-4.14.15-rt11.tar.xz
|
||||
|
||||
The upcoming softirq based hrtimers support requires an additional field in
|
||||
the hrtimer_cpu_base struct, which would grow the struct size beyond a
|
||||
|
|
|
@ -2,7 +2,7 @@ From: Tom Zanussi <tom.zanussi@linux.intel.com>
|
|||
Date: Thu, 21 Dec 2017 10:02:34 -0600
|
||||
Subject: [PATCH 12/37] tracing: Add per-element variable support to
|
||||
tracing_map
|
||||
Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.14/older/patches-4.14.8-rt9.tar.xz
|
||||
Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.14/older/patches-4.14.15-rt11.tar.xz
|
||||
|
||||
In order to allow information to be passed between trace events, add
|
||||
support for per-element variables to tracing_map. This provides a
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
From: Anna-Maria Gleixner <anna-maria@linutronix.de>
|
||||
Date: Wed, 20 Dec 2017 17:13:02 +0100
|
||||
Subject: [PATCH 13/29] hrtimer: Reduce conditional code (hres_active)
|
||||
Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.14/older/patches-4.14.8-rt9.tar.xz
|
||||
Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.14/older/patches-4.14.15-rt11.tar.xz
|
||||
|
||||
The hrtimer_cpu_base struct has the CONFIG_HIGH_RES_TIMERS conditional
|
||||
struct member hres_active. All related functions to this member are
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
From: Tom Zanussi <tom.zanussi@linux.intel.com>
|
||||
Date: Thu, 21 Dec 2017 10:02:35 -0600
|
||||
Subject: [PATCH 13/37] tracing: Add hist_data member to hist_field
|
||||
Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.14/older/patches-4.14.8-rt9.tar.xz
|
||||
Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.14/older/patches-4.14.15-rt11.tar.xz
|
||||
|
||||
Allow hist_data access via hist_field. Some users of hist_fields
|
||||
require or will require more access to the associated hist_data.
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
From: Anna-Maria Gleixner <anna-maria@linutronix.de>
|
||||
Date: Wed, 20 Dec 2017 17:13:03 +0100
|
||||
Subject: [PATCH 14/29] hrtimer: Use accesor functions instead of direct access
|
||||
Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.14/older/patches-4.14.8-rt9.tar.xz
|
||||
Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.14/older/patches-4.14.15-rt11.tar.xz
|
||||
|
||||
__hrtimer_hres_active() is now available unconditionally. Replace the
|
||||
direct access to hrtimer_cpu_base.hres_active.
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
From: Tom Zanussi <tom.zanussi@linux.intel.com>
|
||||
Date: Thu, 21 Dec 2017 10:02:36 -0600
|
||||
Subject: [PATCH 14/37] tracing: Add usecs modifier for hist trigger timestamps
|
||||
Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.14/older/patches-4.14.8-rt9.tar.xz
|
||||
Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.14/older/patches-4.14.15-rt11.tar.xz
|
||||
|
||||
Appending .usecs onto a common_timestamp field will cause the
|
||||
timestamp value to be in microseconds instead of the default
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
From: Anna-Maria Gleixner <anna-maria@linutronix.de>
|
||||
Date: Wed, 20 Dec 2017 17:13:04 +0100
|
||||
Subject: [PATCH 15/29] hrtimer: Make the remote enqueue check unconditional
|
||||
Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.14/older/patches-4.14.8-rt9.tar.xz
|
||||
Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.14/older/patches-4.14.15-rt11.tar.xz
|
||||
|
||||
hrtimer_cpu_base.expires_next is used to cache the next event armed in the
|
||||
timer hardware. The value is used to check whether an hrtimer can be
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
From: Tom Zanussi <tom.zanussi@linux.intel.com>
|
||||
Date: Thu, 21 Dec 2017 10:02:37 -0600
|
||||
Subject: [PATCH 15/37] tracing: Add variable support to hist triggers
|
||||
Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.14/older/patches-4.14.8-rt9.tar.xz
|
||||
Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.14/older/patches-4.14.15-rt11.tar.xz
|
||||
|
||||
Add support for saving the value of a current event's event field by
|
||||
assigning it to a variable that can be read by a subsequent event.
|
||||
|
|
|
@ -2,7 +2,7 @@ From: Anna-Maria Gleixner <anna-maria@linutronix.de>
|
|||
Date: Wed, 20 Dec 2017 17:13:05 +0100
|
||||
Subject: [PATCH 16/29] hrtimer: Make hrtimer_cpu_base.next_timer handling
|
||||
unconditional
|
||||
Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.14/older/patches-4.14.8-rt9.tar.xz
|
||||
Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.14/older/patches-4.14.15-rt11.tar.xz
|
||||
|
||||
hrtimer_cpu_base.next_timer stores the pointer to the next expiring timer
|
||||
in a cpu base.
|
||||
|
|
|
@ -2,7 +2,7 @@ From: Tom Zanussi <tom.zanussi@linux.intel.com>
|
|||
Date: Thu, 21 Dec 2017 10:02:38 -0600
|
||||
Subject: [PATCH 16/37] tracing: Account for variables in named trigger
|
||||
compatibility
|
||||
Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.14/older/patches-4.14.8-rt9.tar.xz
|
||||
Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.14/older/patches-4.14.15-rt11.tar.xz
|
||||
|
||||
Named triggers must also have the same set of variables in order to be
|
||||
considered compatible - update the trigger match test to account for
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
From: Anna-Maria Gleixner <anna-maria@linutronix.de>
|
||||
Date: Wed, 20 Dec 2017 17:13:06 +0100
|
||||
Subject: [PATCH 17/29] hrtimer: Make hrtimer_reprogramm() unconditional
|
||||
Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.14/older/patches-4.14.8-rt9.tar.xz
|
||||
Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.14/older/patches-4.14.15-rt11.tar.xz
|
||||
|
||||
hrtimer_reprogram() needs to be available unconditionally for softirq based
|
||||
hrtimers. Move the function and all required struct members out of the
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
From: Tom Zanussi <tom.zanussi@linux.intel.com>
|
||||
Date: Thu, 21 Dec 2017 10:02:39 -0600
|
||||
Subject: [PATCH 17/37] tracing: Move get_hist_field_flags()
|
||||
Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.14/older/patches-4.14.8-rt9.tar.xz
|
||||
Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.14/older/patches-4.14.15-rt11.tar.xz
|
||||
|
||||
Move get_hist_field_flags() to make it more easily accessible for new
|
||||
code (and keep the move separate from new functionality).
|
||||
|
|
|
@ -2,7 +2,7 @@ From: Anna-Maria Gleixner <anna-maria@linutronix.de>
|
|||
Date: Wed, 20 Dec 2017 17:13:07 +0100
|
||||
Subject: [PATCH 18/29] hrtimer: Make hrtimer_force_reprogramm()
|
||||
unconditionally available
|
||||
Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.14/older/patches-4.14.8-rt9.tar.xz
|
||||
Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.14/older/patches-4.14.15-rt11.tar.xz
|
||||
|
||||
hrtimer_force_reprogram() needs to be available unconditionally for softirq
|
||||
based hrtimers. Move the function and all required struct members out of
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
From: Tom Zanussi <tom.zanussi@linux.intel.com>
|
||||
Date: Thu, 21 Dec 2017 10:02:40 -0600
|
||||
Subject: [PATCH 18/37] tracing: Add simple expression support to hist triggers
|
||||
Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.14/older/patches-4.14.8-rt9.tar.xz
|
||||
Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.14/older/patches-4.14.15-rt11.tar.xz
|
||||
|
||||
Add support for simple addition, subtraction, and unary expressions
|
||||
(-(expr) and expr, where expr = b-a, a+b, a+b+c) to hist triggers, in
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
From: Anna-Maria Gleixner <anna-maria@linutronix.de>
|
||||
Date: Wed, 20 Dec 2017 17:13:08 +0100
|
||||
Subject: [PATCH 19/29] hrtimer: Unify handling of hrtimer remove
|
||||
Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.14/older/patches-4.14.8-rt9.tar.xz
|
||||
Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.14/older/patches-4.14.15-rt11.tar.xz
|
||||
|
||||
When the first hrtimer on the current CPU is removed,
|
||||
hrtimer_force_reprogram() is invoked but only when
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
From: Tom Zanussi <tom.zanussi@linux.intel.com>
|
||||
Date: Thu, 21 Dec 2017 10:02:41 -0600
|
||||
Subject: [PATCH 19/37] tracing: Generalize per-element hist trigger data
|
||||
Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.14/older/patches-4.14.8-rt9.tar.xz
|
||||
Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.14/older/patches-4.14.15-rt11.tar.xz
|
||||
|
||||
Up until now, hist triggers only needed per-element support for saving
|
||||
'comm' data, which was saved directly as a private data pointer.
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
From: Anna-Maria Gleixner <anna-maria@linutronix.de>
|
||||
Date: Wed, 20 Dec 2017 17:13:09 +0100
|
||||
Subject: [PATCH 20/29] hrtimer: Unify handling of remote enqueue
|
||||
Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.14/older/patches-4.14.8-rt9.tar.xz
|
||||
Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.14/older/patches-4.14.15-rt11.tar.xz
|
||||
|
||||
hrtimer_reprogram() is conditionally invoked from hrtimer_start_range_ns()
|
||||
when hrtimer_cpu_base.hres_active is true.
|
||||
|
|
|
@ -2,7 +2,7 @@ From: Tom Zanussi <tom.zanussi@linux.intel.com>
|
|||
Date: Thu, 21 Dec 2017 10:02:42 -0600
|
||||
Subject: [PATCH 20/37] tracing: Pass tracing_map_elt to hist_field accessor
|
||||
functions
|
||||
Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.14/older/patches-4.14.8-rt9.tar.xz
|
||||
Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.14/older/patches-4.14.15-rt11.tar.xz
|
||||
|
||||
Some accessor functions, such as for variable references, require
|
||||
access to a corrsponding tracing_map_elt.
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
From: Anna-Maria Gleixner <anna-maria@linutronix.de>
|
||||
Date: Wed, 20 Dec 2017 17:13:10 +0100
|
||||
Subject: [PATCH 21/29] hrtimer: Make remote enqueue decision less restrictive
|
||||
Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.14/older/patches-4.14.8-rt9.tar.xz
|
||||
Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.14/older/patches-4.14.15-rt11.tar.xz
|
||||
|
||||
The current decision whether a timer can be queued on a remote CPU checks
|
||||
for timer->expiry <= remote_cpu_base.expires_next.
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
From: Tom Zanussi <tom.zanussi@linux.intel.com>
|
||||
Date: Thu, 21 Dec 2017 10:02:43 -0600
|
||||
Subject: [PATCH 21/37] tracing: Add hist_field 'type' field
|
||||
Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.14/older/patches-4.14.8-rt9.tar.xz
|
||||
Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.14/older/patches-4.14.15-rt11.tar.xz
|
||||
|
||||
Future support for synthetic events requires hist_field 'type'
|
||||
information, so add a field for that.
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
From: Anna-Maria Gleixner <anna-maria@linutronix.de>
|
||||
Date: Wed, 20 Dec 2017 17:13:11 +0100
|
||||
Subject: [PATCH 22/29] hrtimer: Remove base argument from hrtimer_reprogram()
|
||||
Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.14/older/patches-4.14.8-rt9.tar.xz
|
||||
Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.14/older/patches-4.14.15-rt11.tar.xz
|
||||
|
||||
hrtimer_reprogram() must have access to the hrtimer_clock_base of the new
|
||||
first expiring timer to access hrtimer_clock_base.offset for adjusting the
|
||||
|
|
|
@ -2,7 +2,7 @@ From: Tom Zanussi <tom.zanussi@linux.intel.com>
|
|||
Date: Thu, 21 Dec 2017 10:02:44 -0600
|
||||
Subject: [PATCH 22/37] tracing: Add variable reference handling to hist
|
||||
triggers
|
||||
Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.14/older/patches-4.14.8-rt9.tar.xz
|
||||
Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.14/older/patches-4.14.15-rt11.tar.xz
|
||||
|
||||
Add the necessary infrastructure to allow the variables defined on one
|
||||
event to be referenced in another. This allows variables set by a
|
||||
|
@ -33,7 +33,7 @@ Signed-off-by: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
|
|||
|
||||
--- a/kernel/trace/trace.c
|
||||
+++ b/kernel/trace/trace.c
|
||||
@@ -7793,6 +7793,7 @@ static int instance_mkdir(const char *na
|
||||
@@ -7788,6 +7788,7 @@ static int instance_mkdir(const char *na
|
||||
|
||||
INIT_LIST_HEAD(&tr->systems);
|
||||
INIT_LIST_HEAD(&tr->events);
|
||||
|
@ -41,7 +41,7 @@ Signed-off-by: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
|
|||
|
||||
if (allocate_trace_buffers(tr, trace_buf_size) < 0)
|
||||
goto out_free_tr;
|
||||
@@ -8543,6 +8544,7 @@ ssize_t trace_parse_run_command(struct f
|
||||
@@ -8538,6 +8539,7 @@ ssize_t trace_parse_run_command(struct f
|
||||
|
||||
INIT_LIST_HEAD(&global_trace.systems);
|
||||
INIT_LIST_HEAD(&global_trace.events);
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
From: Anna-Maria Gleixner <anna-maria@linutronix.de>
|
||||
Date: Wed, 20 Dec 2017 17:13:12 +0100
|
||||
Subject: [PATCH 23/29] hrtimer: Split hrtimer_start_range_ns()
|
||||
Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.14/older/patches-4.14.8-rt9.tar.xz
|
||||
Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.14/older/patches-4.14.15-rt11.tar.xz
|
||||
|
||||
Preparatory patch for softirq based hrtimers to avoid code duplication. No
|
||||
functional change.
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
From: Tom Zanussi <tom.zanussi@linux.intel.com>
|
||||
Date: Thu, 21 Dec 2017 10:02:45 -0600
|
||||
Subject: [PATCH 23/37] tracing: Add hist trigger action hook
|
||||
Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.14/older/patches-4.14.8-rt9.tar.xz
|
||||
Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.14/older/patches-4.14.15-rt11.tar.xz
|
||||
|
||||
Add a hook for executing extra actions whenever a histogram entry is
|
||||
added or updated.
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
From: Anna-Maria Gleixner <anna-maria@linutronix.de>
|
||||
Date: Wed, 20 Dec 2017 17:13:13 +0100
|
||||
Subject: [PATCH 24/29] hrtimer: Split __hrtimer_get_next_event()
|
||||
Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.14/older/patches-4.14.8-rt9.tar.xz
|
||||
Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.14/older/patches-4.14.15-rt11.tar.xz
|
||||
|
||||
Preparatory patch for softirq based hrtimers to avoid code duplication. No
|
||||
functional change.
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
From: Tom Zanussi <tom.zanussi@linux.intel.com>
|
||||
Date: Thu, 21 Dec 2017 10:02:46 -0600
|
||||
Subject: [PATCH 24/37] tracing: Add support for 'synthetic' events
|
||||
Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.14/older/patches-4.14.8-rt9.tar.xz
|
||||
Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.14/older/patches-4.14.15-rt11.tar.xz
|
||||
|
||||
Synthetic events are user-defined events generated from hist trigger
|
||||
variables saved from one or more other events.
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
From: Anna-Maria Gleixner <anna-maria@linutronix.de>
|
||||
Date: Wed, 20 Dec 2017 17:13:14 +0100
|
||||
Subject: [PATCH 25/29] hrtimer: Use irqsave/irqrestore around __run_hrtimer()
|
||||
Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.14/older/patches-4.14.8-rt9.tar.xz
|
||||
Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.14/older/patches-4.14.15-rt11.tar.xz
|
||||
|
||||
__run_hrtimer() is called with the hrtimer_cpu_base.lock held and
|
||||
interrupts disabled. Before invoking the timer callback the base lock is
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
From: Tom Zanussi <tom.zanussi@linux.intel.com>
|
||||
Date: Thu, 21 Dec 2017 10:02:47 -0600
|
||||
Subject: [PATCH 25/37] tracing: Add support for 'field variables'
|
||||
Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.14/older/patches-4.14.8-rt9.tar.xz
|
||||
Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.14/older/patches-4.14.15-rt11.tar.xz
|
||||
|
||||
Users should be able to directly specify event fields in hist trigger
|
||||
'actions' rather than being forced to explicitly create a variable for
|
||||
|
|
|
@ -2,7 +2,7 @@ From: Anna-Maria Gleixner <anna-maria@linutronix.de>
|
|||
Date: Wed, 20 Dec 2017 17:13:15 +0100
|
||||
Subject: [PATCH 26/29] hrtimer: Add clock bases and hrtimer mode for soft irq
|
||||
context
|
||||
Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.14/older/patches-4.14.8-rt9.tar.xz
|
||||
Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.14/older/patches-4.14.15-rt11.tar.xz
|
||||
|
||||
hrtimer callback functions are always executed in hard interrupt
|
||||
context. Users of hrtimer which need their timer function to be executed
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
From: Tom Zanussi <tom.zanussi@linux.intel.com>
|
||||
Date: Thu, 21 Dec 2017 10:02:48 -0600
|
||||
Subject: [PATCH 26/37] tracing: Add 'onmatch' hist trigger action support
|
||||
Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.14/older/patches-4.14.8-rt9.tar.xz
|
||||
Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.14/older/patches-4.14.15-rt11.tar.xz
|
||||
|
||||
Add an 'onmatch(matching.event).<synthetic_event_name>(param list)'
|
||||
hist trigger action which is invoked with the set of variables or
|
||||
|
|
|
@ -2,7 +2,7 @@ From: Anna-Maria Gleixner <anna-maria@linutronix.de>
|
|||
Date: Wed, 20 Dec 2017 17:13:16 +0100
|
||||
Subject: [PATCH 27/29] hrtimer: Prepare handling of hard and softirq based
|
||||
hrtimers
|
||||
Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.14/older/patches-4.14.8-rt9.tar.xz
|
||||
Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.14/older/patches-4.14.15-rt11.tar.xz
|
||||
|
||||
The softirq based hrtimer can utilize most of the existing hrtimers
|
||||
functions, but need to operate on a different data set.
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
From: Tom Zanussi <tom.zanussi@linux.intel.com>
|
||||
Date: Thu, 21 Dec 2017 10:02:49 -0600
|
||||
Subject: [PATCH 27/37] tracing: Add 'onmax' hist trigger action support
|
||||
Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.14/older/patches-4.14.8-rt9.tar.xz
|
||||
Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.14/older/patches-4.14.15-rt11.tar.xz
|
||||
|
||||
Add an 'onmax(var).save(field,...)' hist trigger action which is
|
||||
invoked whenever an event exceeds the current maximum.
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
From: Anna-Maria Gleixner <anna-maria@linutronix.de>
|
||||
Date: Wed, 20 Dec 2017 17:13:17 +0100
|
||||
Subject: [PATCH 28/29] hrtimer: Implement support for softirq based hrtimers
|
||||
Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.14/older/patches-4.14.8-rt9.tar.xz
|
||||
Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.14/older/patches-4.14.15-rt11.tar.xz
|
||||
|
||||
hrtimer callbacks are always invoked in hard interrupt context. Several
|
||||
users in tree require soft interrupt context for their callbacks and
|
||||
|
|
|
@ -2,7 +2,7 @@ From: Tom Zanussi <tom.zanussi@linux.intel.com>
|
|||
Date: Thu, 21 Dec 2017 10:02:50 -0600
|
||||
Subject: [PATCH 28/37] tracing: Allow whitespace to surround hist trigger
|
||||
filter
|
||||
Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.14/older/patches-4.14.8-rt9.tar.xz
|
||||
Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.14/older/patches-4.14.15-rt11.tar.xz
|
||||
|
||||
The existing code only allows for one space before and after the 'if'
|
||||
specifying the filter for a hist trigger. Add code to make that more
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
From: Anna-Maria Gleixner <anna-maria@linutronix.de>
|
||||
Date: Wed, 20 Dec 2017 17:13:18 +0100
|
||||
Subject: [PATCH 29/29] hrtimer: Implement SOFT/HARD clock base selection
|
||||
Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.14/older/patches-4.14.8-rt9.tar.xz
|
||||
Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.14/older/patches-4.14.15-rt11.tar.xz
|
||||
|
||||
All prerequisites to handle hrtimers for expiry in either hard or soft
|
||||
interrupt context are in place.
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
From: Tom Zanussi <tom.zanussi@linux.intel.com>
|
||||
Date: Thu, 21 Dec 2017 10:02:51 -0600
|
||||
Subject: [PATCH 29/37] tracing: Add cpu field for hist triggers
|
||||
Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.14/older/patches-4.14.8-rt9.tar.xz
|
||||
Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.14/older/patches-4.14.15-rt11.tar.xz
|
||||
|
||||
A common key to use in a histogram is the cpuid - add a new cpu
|
||||
'synthetic' field named 'cpu' for that purpose.
|
||||
|
|
|
@ -2,7 +2,7 @@ From: Thomas Gleixner <tglx@linutronix.de>
|
|||
Date: Thu, 23 Nov 2017 16:39:11 +0100
|
||||
Subject: [PATCH 30/36] can/bcm: Replace hrtimer_tasklet with softirq based
|
||||
hrtimer
|
||||
Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.14/older/patches-4.14.8-rt9.tar.xz
|
||||
Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.14/older/patches-4.14.15-rt11.tar.xz
|
||||
|
||||
Switch the timer to HRTIMER_MODE_SOFT, which executed the timer
|
||||
callback in softirq context and remove the hrtimer_tasklet.
|
||||
|
|
|
@ -2,7 +2,7 @@ From: Tom Zanussi <tom.zanussi@linux.intel.com>
|
|||
Date: Thu, 21 Dec 2017 10:02:52 -0600
|
||||
Subject: [PATCH 30/37] tracing: Add hist trigger support for variable
|
||||
reference aliases
|
||||
Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.14/older/patches-4.14.8-rt9.tar.xz
|
||||
Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.14/older/patches-4.14.15-rt11.tar.xz
|
||||
|
||||
Add support for alias=$somevar where alias can be used as
|
||||
onmatch.xxx($alias).
|
||||
|
|
|
@ -2,7 +2,7 @@ From: Thomas Gleixner <tglx@linutronix.de>
|
|||
Date: Thu, 23 Nov 2017 16:39:12 +0100
|
||||
Subject: [PATCH 31/36] mac80211_hwsim: Replace hrtimer tasklet with softirq
|
||||
hrtimer
|
||||
Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.14/older/patches-4.14.8-rt9.tar.xz
|
||||
Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.14/older/patches-4.14.15-rt11.tar.xz
|
||||
|
||||
Switch the timer to HRTIMER_MODE_SOFT, which executed the timer
|
||||
callback in softirq context and remove the hrtimer_tasklet.
|
||||
|
|
|
@ -2,7 +2,7 @@ From: Tom Zanussi <tom.zanussi@linux.intel.com>
|
|||
Date: Thu, 21 Dec 2017 10:02:53 -0600
|
||||
Subject: [PATCH 31/37] tracing: Add 'last error' error facility for hist
|
||||
triggers
|
||||
Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.14/older/patches-4.14.8-rt9.tar.xz
|
||||
Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.14/older/patches-4.14.15-rt11.tar.xz
|
||||
|
||||
With the addition of variables and actions, it's become necessary to
|
||||
provide more detailed error information to users about syntax errors.
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
From: Tom Zanussi <tom.zanussi@linux.intel.com>
|
||||
Date: Thu, 21 Dec 2017 10:02:54 -0600
|
||||
Subject: [PATCH 32/37] tracing: Add inter-event hist trigger Documentation
|
||||
Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.14/older/patches-4.14.8-rt9.tar.xz
|
||||
Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.14/older/patches-4.14.15-rt11.tar.xz
|
||||
|
||||
Add background and details on inter-event hist triggers, including
|
||||
hist variables, synthetic events, and actions.
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
From: Thomas Gleixner <tglx@linutronix.de>
|
||||
Date: Thu, 23 Nov 2017 16:39:13 +0100
|
||||
Subject: [PATCH 32/36] xfrm: Replace hrtimer tasklet with softirq hrtimer
|
||||
Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.14/older/patches-4.14.8-rt9.tar.xz
|
||||
Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.14/older/patches-4.14.15-rt11.tar.xz
|
||||
|
||||
Switch the timer to HRTIMER_MODE_SOFT, which executed the timer
|
||||
callback in softirq context and remove the hrtimer_tasklet.
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
From: Thomas Gleixner <tglx@linutronix.de>
|
||||
Date: Thu, 23 Nov 2017 16:39:14 +0100
|
||||
Subject: [PATCH 33/36] softirq: Remove tasklet_hrtimer
|
||||
Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.14/older/patches-4.14.8-rt9.tar.xz
|
||||
Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.14/older/patches-4.14.15-rt11.tar.xz
|
||||
|
||||
There are no more tasklet_hrtimer users of this interface.
|
||||
Remove it.
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
From: Tom Zanussi <tom.zanussi@linux.intel.com>
|
||||
Date: Thu, 21 Dec 2017 10:02:55 -0600
|
||||
Subject: [PATCH 33/37] tracing: Make tracing_set_clock() non-static
|
||||
Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.14/older/patches-4.14.8-rt9.tar.xz
|
||||
Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.14/older/patches-4.14.15-rt11.tar.xz
|
||||
|
||||
Allow tracing code outside of trace.c to access tracing_set_clock().
|
||||
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
From: Thomas Gleixner <tglx@linutronix.de>
|
||||
Date: Thu, 23 Nov 2017 16:39:15 +0100
|
||||
Subject: [PATCH 34/36] ALSA/dummy: Replace tasklet with softirq hrtimer
|
||||
Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.14/older/patches-4.14.8-rt9.tar.xz
|
||||
Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.14/older/patches-4.14.15-rt11.tar.xz
|
||||
|
||||
The tasklet is used to defer the execution of snd_pcm_period_elapsed() to
|
||||
the softirq context. Using the HRTIMER_MODE_SOFT mode invokes the timer
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
From: Tom Zanussi <tom.zanussi@linux.intel.com>
|
||||
Date: Thu, 21 Dec 2017 10:02:56 -0600
|
||||
Subject: [PATCH 34/37] tracing: Add a clock attribute for hist triggers
|
||||
Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.14/older/patches-4.14.8-rt9.tar.xz
|
||||
Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.14/older/patches-4.14.15-rt11.tar.xz
|
||||
|
||||
The default clock if timestamps are used in a histogram is "global".
|
||||
If timestamps aren't used, the clock is irrelevant.
|
||||
|
|
|
@ -2,7 +2,7 @@ From: Tom Zanussi <tom.zanussi@linux.intel.com>
|
|||
Date: Thu, 21 Dec 2017 10:02:57 -0600
|
||||
Subject: [PATCH 35/37] tracing: Increase trace_recursive_lock() limit for
|
||||
synthetic events
|
||||
Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.14/older/patches-4.14.8-rt9.tar.xz
|
||||
Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.14/older/patches-4.14.15-rt11.tar.xz
|
||||
|
||||
Synthetic event generation needs to happen while the current event is
|
||||
still in progress, so add 1 to the trace_recursive_lock() recursion
|
||||
|
@ -20,7 +20,7 @@ Signed-off-by: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
|
|||
|
||||
--- a/kernel/trace/ring_buffer.c
|
||||
+++ b/kernel/trace/ring_buffer.c
|
||||
@@ -2589,16 +2589,16 @@ rb_wakeups(struct ring_buffer *buffer, s
|
||||
@@ -2593,16 +2593,16 @@ rb_wakeups(struct ring_buffer *buffer, s
|
||||
* IRQ context
|
||||
* NMI context
|
||||
*
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
From: Thomas Gleixner <tglx@linutronix.de>
|
||||
Date: Thu, 23 Nov 2017 16:39:16 +0100
|
||||
Subject: [PATCH 35/36] usb/gadget/NCM: Replace tasklet with softirq hrtimer
|
||||
Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.14/older/patches-4.14.8-rt9.tar.xz
|
||||
Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.14/older/patches-4.14.15-rt11.tar.xz
|
||||
|
||||
The tx_tasklet tasklet is used in invoke the hrtimer (task_timer) in
|
||||
softirq context. This can be also achieved without the tasklet but
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
From: Thomas Gleixner <tglx@linutronix.de>
|
||||
Date: Thu, 23 Nov 2017 16:39:17 +0100
|
||||
Subject: [PATCH 36/36] net/mvpp2: Replace tasklet with softirq hrtimer
|
||||
Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.14/older/patches-4.14.8-rt9.tar.xz
|
||||
Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.14/older/patches-4.14.15-rt11.tar.xz
|
||||
|
||||
The tx_done_tasklet tasklet is used in invoke the hrtimer
|
||||
(mvpp2_hr_timer_cb) in softirq context. This can be also achieved without
|
||||
|
@ -30,7 +30,7 @@ Signed-off-by: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
|
|||
};
|
||||
|
||||
struct mvpp2_queue_vector {
|
||||
@@ -5979,46 +5978,34 @@ static void mvpp2_link_event(struct net_
|
||||
@@ -5970,46 +5969,34 @@ static void mvpp2_link_event(struct net_
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -93,7 +93,7 @@ Signed-off-by: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
|
|||
return HRTIMER_NORESTART;
|
||||
}
|
||||
|
||||
@@ -6507,7 +6494,12 @@ static int mvpp2_tx(struct sk_buff *skb,
|
||||
@@ -6498,7 +6485,12 @@ static int mvpp2_tx(struct sk_buff *skb,
|
||||
txq_pcpu->count > 0) {
|
||||
struct mvpp2_port_pcpu *port_pcpu = this_cpu_ptr(port->pcpu);
|
||||
|
||||
|
@ -107,7 +107,7 @@ Signed-off-by: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
|
|||
}
|
||||
|
||||
return NETDEV_TX_OK;
|
||||
@@ -6896,7 +6888,6 @@ static int mvpp2_stop(struct net_device
|
||||
@@ -6887,7 +6879,6 @@ static int mvpp2_stop(struct net_device
|
||||
|
||||
hrtimer_cancel(&port_pcpu->tx_done_timer);
|
||||
port_pcpu->timer_scheduled = false;
|
||||
|
@ -115,7 +115,7 @@ Signed-off-by: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
|
|||
}
|
||||
}
|
||||
mvpp2_cleanup_rxqs(port);
|
||||
@@ -7664,13 +7655,10 @@ static int mvpp2_port_probe(struct platf
|
||||
@@ -7655,13 +7646,10 @@ static int mvpp2_port_probe(struct platf
|
||||
port_pcpu = per_cpu_ptr(port->pcpu, cpu);
|
||||
|
||||
hrtimer_init(&port_pcpu->tx_done_timer, CLOCK_MONOTONIC,
|
||||
|
|
|
@ -2,7 +2,7 @@ From: Tom Zanussi <tom.zanussi@linux.intel.com>
|
|||
Date: Thu, 21 Dec 2017 10:02:58 -0600
|
||||
Subject: [PATCH 36/37] tracing: Add inter-event blurb to HIST_TRIGGERS config
|
||||
option
|
||||
Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.14/older/patches-4.14.8-rt9.tar.xz
|
||||
Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.14/older/patches-4.14.15-rt11.tar.xz
|
||||
|
||||
So that users know that inter-event tracing is supported as part of
|
||||
the HIST_TRIGGERS option, include text to that effect in the help
|
||||
|
|
|
@ -2,7 +2,7 @@ From: Rajvi Jingar <rajvi.jingar@intel.com>
|
|||
Date: Thu, 21 Dec 2017 10:02:59 -0600
|
||||
Subject: [PATCH 37/37] selftests: ftrace: Add inter-event hist triggers
|
||||
testcases
|
||||
Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.14/older/patches-4.14.8-rt9.tar.xz
|
||||
Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.14/older/patches-4.14.15-rt11.tar.xz
|
||||
|
||||
This adds inter-event hist triggers testcases which covers following:
|
||||
- create/remove synthetic event
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
From: "Yadi.hu" <yadi.hu@windriver.com>
|
||||
Date: Wed, 10 Dec 2014 10:32:09 +0800
|
||||
Subject: ARM: enable irq in translation/section permission fault handlers
|
||||
Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.14/older/patches-4.14.8-rt9.tar.xz
|
||||
Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.14/older/patches-4.14.15-rt11.tar.xz
|
||||
|
||||
Probably happens on all ARM, with
|
||||
CONFIG_PREEMPT_RT_FULL
|
||||
|
|
|
@ -2,7 +2,7 @@ From: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
|
|||
Date: Thu, 21 Sep 2017 15:35:57 +0200
|
||||
Subject: Bluetooth: avoid recursive locking in
|
||||
hci_send_to_channel()
|
||||
Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.14/older/patches-4.14.8-rt9.tar.xz
|
||||
Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.14/older/patches-4.14.15-rt11.tar.xz
|
||||
|
||||
Mart reported a deadlock in -RT in the call path:
|
||||
hci_send_monitor_ctrl_event() -> hci_send_to_channel()
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
From: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
|
||||
Date: Thu, 21 Mar 2013 19:01:05 +0100
|
||||
Subject: printk: Drop the logbuf_lock more often
|
||||
Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.14/older/patches-4.14.8-rt9.tar.xz
|
||||
Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.14/older/patches-4.14.15-rt11.tar.xz
|
||||
|
||||
The lock is hold with irgs off. The latency drops 500us+ on my arm bugs
|
||||
with a "full" buffer after executing "dmesg" on the shell.
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
From: Josh Cartwright <joshc@ni.com>
|
||||
Date: Thu, 11 Feb 2016 11:54:01 -0600
|
||||
Subject: KVM: arm/arm64: downgrade preempt_disable()d region to migrate_disable()
|
||||
Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.14/older/patches-4.14.8-rt9.tar.xz
|
||||
Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.14/older/patches-4.14.15-rt11.tar.xz
|
||||
|
||||
kvm_arch_vcpu_ioctl_run() disables the use of preemption when updating
|
||||
the vgic and timer states to prevent the calling task from migrating to
|
||||
|
|
|
@ -5,7 +5,7 @@ Cc: Anna Schumaker <anna.schumaker@netapp.com>,
|
|||
linux-nfs@vger.kernel.org, linux-kernel@vger.kernel.org,
|
||||
tglx@linutronix.de
|
||||
Subject: NFSv4: replace seqcount_t with a seqlock_t
|
||||
Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.14/older/patches-4.14.8-rt9.tar.xz
|
||||
Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.14/older/patches-4.14.15-rt11.tar.xz
|
||||
|
||||
The raw_write_seqcount_begin() in nfs4_reclaim_open_state() bugs me
|
||||
because it maps to preempt_disable() in -RT which I can't have at this
|
||||
|
|
|
@ -2,7 +2,7 @@ From: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
|
|||
Date: Thu, 21 Sep 2017 14:25:13 +0200
|
||||
Subject: [PATCH] RCU: we need to skip that warning but only on sleeping
|
||||
locks
|
||||
Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.14/older/patches-4.14.8-rt9.tar.xz
|
||||
Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.14/older/patches-4.14.15-rt11.tar.xz
|
||||
|
||||
This check is okay for upstream. On RT we trigger this while blocking on
|
||||
sleeping lock. In this case, it is okay to schedule() within a RCU
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
From: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
|
||||
Date: Thu, 23 Nov 2017 17:51:51 +0100
|
||||
Subject: [PATCH] Revert "fs: jbd2: pull your plug when waiting for space"
|
||||
Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.14/older/patches-4.14.8-rt9.tar.xz
|
||||
Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.14/older/patches-4.14.15-rt11.tar.xz
|
||||
|
||||
This reverts commit "fs: jbd2: pull your plug when waiting for space".
|
||||
This was a duct-tape fix which shouldn't be needed since commit
|
||||
|
|
|
@ -2,7 +2,7 @@ From: "Steven Rostedt (VMware)" <rostedt@goodmis.org>
|
|||
Date: Wed, 22 Nov 2017 07:31:19 -0500
|
||||
Subject: [PATCH] Revert "memcontrol: Prevent scheduling while atomic in cgroup
|
||||
code"
|
||||
Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.14/older/patches-4.14.8-rt9.tar.xz
|
||||
Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.14/older/patches-4.14.15-rt11.tar.xz
|
||||
|
||||
The commit "memcontrol: Prevent scheduling while atomic in cgroup code"
|
||||
fixed this issue:
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
From: Steven Rostedt <rostedt@goodmis.org>
|
||||
Date: Wed, 13 Feb 2013 09:26:05 -0500
|
||||
Subject: acpi/rt: Convert acpi_gbl_hardware lock back to a raw_spinlock_t
|
||||
Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.14/older/patches-4.14.8-rt9.tar.xz
|
||||
Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.14/older/patches-4.14.15-rt11.tar.xz
|
||||
|
||||
We hit the following bug with 3.6-rt:
|
||||
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
From: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
|
||||
Date: Sat, 27 May 2017 19:02:06 +0200
|
||||
Subject: kernel/sched/core: add migrate_disable()
|
||||
Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.14/older/patches-4.14.8-rt9.tar.xz
|
||||
Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.14/older/patches-4.14.15-rt11.tar.xz
|
||||
|
||||
---
|
||||
include/linux/preempt.h | 23 ++++++++
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
From: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
|
||||
Date: Wed, 11 Oct 2017 17:43:49 +0200
|
||||
Subject: apparmor: use a locallock instead preempt_disable()
|
||||
Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.14/older/patches-4.14.8-rt9.tar.xz
|
||||
Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.14/older/patches-4.14.15-rt11.tar.xz
|
||||
|
||||
get_buffers() disables preemption which acts as a lock for the per-CPU
|
||||
variable. Since we can't disable preemption here on RT, a local_lock is
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
From: Anders Roxell <anders.roxell@linaro.org>
|
||||
Date: Thu, 14 May 2015 17:52:17 +0200
|
||||
Subject: arch/arm64: Add lazy preempt support
|
||||
Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.14/older/patches-4.14.8-rt9.tar.xz
|
||||
Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.14/older/patches-4.14.15-rt11.tar.xz
|
||||
|
||||
arm64 is missing support for PREEMPT_RT. The main feature which is
|
||||
lacking is support for lazy preemption. The arch-specific entry code,
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
From: Benedikt Spranger <b.spranger@linutronix.de>
|
||||
Date: Sat, 6 Mar 2010 17:47:10 +0100
|
||||
Subject: ARM: AT91: PIT: Remove irq handler when clock event is unused
|
||||
Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.14/older/patches-4.14.8-rt9.tar.xz
|
||||
Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.14/older/patches-4.14.15-rt11.tar.xz
|
||||
|
||||
Setup and remove the interrupt handler in clock event mode selection.
|
||||
This avoids calling the (shared) interrupt handler when the device is
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
From: Thomas Gleixner <tglx@linutronix.de>
|
||||
Date: Sat, 1 May 2010 18:29:35 +0200
|
||||
Subject: ARM: at91: tclib: Default to tclib timer for RT
|
||||
Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.14/older/patches-4.14.8-rt9.tar.xz
|
||||
Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.14/older/patches-4.14.15-rt11.tar.xz
|
||||
|
||||
RT is not too happy about the shared timer interrupt in AT91
|
||||
devices. Default to tclib timer for RT.
|
||||
|
|
Some files were not shown because too many files have changed in this diff Show More
Loading…
Reference in New Issue