08 Feb, 2020

1 commit

  • Pull Documentation fixes from Jonathan Corbet:
    "A handful of small documentation fixes that wandered in"

    * tag 'docs-5.6-2' of git://git.lwn.net/linux:
    Allow git builds of Sphinx
    Documentation: changes.rst: update several outdated project URLs
    Documentation: build warnings related to missing blank lines after explicit markups has been fixed
    mailmap: add entry for Tiezhu Yang
    Documentation/ko_KR/howto: Update a broken link
    Documentation/ko_KR/howto: Update broken web addresses
    docs/locking: Fix outdated section names

    Linus Torvalds
     

06 Feb, 2020

2 commits

  • Pull tracing updates from Steven Rostedt:

    - Added new "bootconfig".

    This looks for a file appended to initrd to add boot config options,
    and has been discussed thoroughly at Linux Plumbers.

    Very useful for adding kprobes at bootup.

    Only enabled if "bootconfig" is on the real kernel command line.

    - Created dynamic event creation.

    Merges common code between creating synthetic events and kprobe
    events.

    - Rename perf "ring_buffer" structure to "perf_buffer"

    - Rename ftrace "ring_buffer" structure to "trace_buffer"

    Had to rename existing "trace_buffer" to "array_buffer"

    - Allow trace_printk() to work withing (some) tracing code.

    - Sort of tracing configs to be a little better organized

    - Fixed bug where ftrace_graph hash was not being protected properly

    - Various other small fixes and clean ups

    * tag 'trace-v5.6-2' of git://git.kernel.org/pub/scm/linux/kernel/git/rostedt/linux-trace: (88 commits)
    bootconfig: Show the number of nodes on boot message
    tools/bootconfig: Show the number of bootconfig nodes
    bootconfig: Add more parse error messages
    bootconfig: Use bootconfig instead of boot config
    ftrace: Protect ftrace_graph_hash with ftrace_sync
    ftrace: Add comment to why rcu_dereference_sched() is open coded
    tracing: Annotate ftrace_graph_notrace_hash pointer with __rcu
    tracing: Annotate ftrace_graph_hash pointer with __rcu
    bootconfig: Only load bootconfig if "bootconfig" is on the kernel cmdline
    tracing: Use seq_buf for building dynevent_cmd string
    tracing: Remove useless code in dynevent_arg_pair_add()
    tracing: Remove check_arg() callbacks from dynevent args
    tracing: Consolidate some synth_event_trace code
    tracing: Fix now invalid var_ref_vals assumption in trace action
    tracing: Change trace_boot to use synth_event interface
    tracing: Move tracing selftests to bottom of menu
    tracing: Move mmio tracer config up with the other tracers
    tracing: Move tracing test module configs together
    tracing: Move all function tracing configs together
    tracing: Documentation for in-kernel synthetic event API
    ...

    Linus Torvalds
     
  • Fix for several documentation build warnings related to missing blank lines
    after explicit mark up.

    Exact warning message:
    WARNING: Explicit markup ends without a blank line; unexpected unindent.

    Signed-off-by: Sameer Rahmani
    Link: https://lore.kernel.org/r/20200203201543.24834-1-lxsameer@gnu.org
    Signed-off-by: Jonathan Corbet

    Sameer Rahmani
     

30 Jan, 2020

1 commit


29 Jan, 2020

1 commit

  • Sphinx warnings about his:

    Documentation/trace/kprobetrace.rst:68: WARNING: undefined label: user_mem_access (if the link has no caption the label must precede a section header)

    The problem is quite simple: Sphinx wants a blank line after
    references.

    Link: http://lkml.kernel.org/r/a83ea390bc28784518fce772b4c961ea1c976f14.1560883872.git.mchehab+samsung@kernel.org

    Acked-by: Masami Hiramatsu
    Signed-off-by: Mauro Carvalho Chehab
    Signed-off-by: Steven Rostedt (VMware)

    Mauro Carvalho Chehab
     

22 Jan, 2020

1 commit


14 Jan, 2020

1 commit


11 Jan, 2020

3 commits

  • The use of iff ("if and only if") notation is not accurate in this case.

    Suggested-by: Steven Rostedt (VMware)
    Signed-off-by: Frank A. Cancio Bello
    Reviewed-by: Steven Rostedt (VMware)
    Reviewed-by: Joel Fernandes (Google)
    Link: https://lore.kernel.org/r/22f9a98a972c3155c7b478247a087a5efafde774.1577231751.git.frank@generalsoftwareinc.com
    Signed-off-by: Jonathan Corbet

    Frank A. Cancio Bello
     
  • Fix minor typos in the doc.

    Suggested-by: Randy Dunlap
    Reviewed-by: Steven Rostedt (VMware)
    Reviewed-by: Joel Fernandes (Google)
    Signed-off-by: Frank A. Cancio Bello
    Link: https://lore.kernel.org/r/9ef705d0208a4ca0852fed69bc0838a589a4df85.1577231751.git.frank@generalsoftwareinc.com
    Signed-off-by: Jonathan Corbet

    Frank A. Cancio Bello
     
  • The current text could mislead the user into believing that the number
    of pages allocated by each CPU ring buffer is calculated by the round
    up of the division: buffer_size_kb / PAGE_SIZE.

    Clarifies that a few extra pages may be allocated to accommodate buffer
    management meta-data.

    Suggested-by: Steven Rostedt (VMware)
    Suggested-by: Joel Fernandes (Google)
    Reviewed-by: Steven Rostedt (VMware)
    Reviewed-by: Joel Fernandes (Google)
    Signed-off-by: Frank A. Cancio Bello
    Link: https://lore.kernel.org/r/6f33be5f3d60e5ffc061d8d2b329d3d3ccf22a8c.1577231751.git.frank@generalsoftwareinc.com
    Signed-off-by: Jonathan Corbet

    Frank A. Cancio Bello
     

20 Dec, 2019

1 commit

  • Clarify a few places where the ring buffer and the "snapshot" buffer
    are cleared as a side effect of an operation.

    This will avoid users lost of tracing data because of these so far
    undocumented behavior.

    Signed-off-by: Frank A. Cancio Bello
    Reviewed-by: Steven Rostedt (VMware)
    Link: https://lore.kernel.org/r/20191218191553.q4lwyxmquvtjzjfz@frank-laptop
    Signed-off-by: Jonathan Corbet

    Frank A. Cancio Bello
     

03 Dec, 2019

1 commit

  • Pull Documentation updates from Jonathan Corbet:
    "Here are the main documentation changes for 5.5:

    - Various kerneldoc script enhancements.

    - More RST conversions; those are slowing down as we run out of
    things to convert, but we're a ways from done still.

    - Dan's "maintainer profile entry" work landed at last. Now we just
    need to get maintainers to fill in the profiles...

    - A reworking of the parallel build setup to work better with a
    variety of systems (and to not take over huge systems entirely in
    particular).

    - The MAINTAINERS file is now converted to RST during the build.
    Hopefully nobody ever tries to print this thing, or they will need
    to load a lot of paper.

    - A script and documentation making it easy for maintainers to add
    Link: tags at commit time.

    Also included is the removal of a bunch of spurious CR characters"

    * tag 'docs-5.5a' of git://git.lwn.net/linux: (91 commits)
    docs: remove a bunch of stray CRs
    docs: fix up the maintainer profile document
    libnvdimm, MAINTAINERS: Maintainer Entry Profile
    Maintainer Handbook: Maintainer Entry Profile
    MAINTAINERS: Reclaim the P: tag for Maintainer Entry Profile
    docs, parallelism: Rearrange how jobserver reservations are made
    docs, parallelism: Do not leak blocking mode to other readers
    docs, parallelism: Fix failure path and add comment
    Documentation: Remove bootmem_debug from kernel-parameters.txt
    Documentation: security: core.rst: fix warnings
    Documentation/process/howto/kokr: Update for 4.x -> 5.x versioning
    Documentation/translation: Use Korean for Korean translation title
    docs/memory-barriers.txt: Remove remaining references to mmiowb()
    docs/memory-barriers.txt/kokr: Update I/O section to be clearer about CPU vs thread
    docs/memory-barriers.txt/kokr: Fix style, spacing and grammar in I/O section
    Documentation/kokr: Kill all references to mmiowb()
    docs/memory-barriers.txt/kokr: Rewrite "KERNEL I/O BARRIER EFFECTS" section
    docs: Add initial documentation for devfreq
    Documentation: Document how to get links with git am
    docs: Add request_irq() documentation
    ...

    Linus Torvalds
     

28 Nov, 2019

1 commit

  • Pull tracing updates from Steven Rostedt:
    "New tracing features:

    - New PERMANENT flag to ftrace_ops when attaching a callback to a
    function.

    As /proc/sys/kernel/ftrace_enabled when set to zero will disable
    all attached callbacks in ftrace, this has a detrimental impact on
    live kernel tracing, as it disables all that it patched. If a
    ftrace_ops is registered to ftrace with the PERMANENT flag set, it
    will prevent ftrace_enabled from being disabled, and if
    ftrace_enabled is already disabled, it will prevent a ftrace_ops
    with PREMANENT flag set from being registered.

    - New register_ftrace_direct().

    As eBPF would like to register its own trampolines to be called by
    the ftrace nop locations directly, without going through the ftrace
    trampoline, this function has been added. This allows for eBPF
    trampolines to live along side of ftrace, perf, kprobe and live
    patching. It also utilizes the ftrace enabled_functions file that
    keeps track of functions that have been modified in the kernel, to
    allow for security auditing.

    - Allow for kernel internal use of ftrace instances.

    Subsystems in the kernel can now create and destroy their own
    tracing instances which allows them to have their own tracing
    buffer, and be able to record events without worrying about other
    users from writing over their data.

    - New seq_buf_hex_dump() that lets users use the hex_dump() in their
    seq_buf usage.

    - Notifications now added to tracing_max_latency to allow user space
    to know when a new max latency is hit by one of the latency
    tracers.

    - Wider spread use of generic compare operations for use of bsearch
    and friends.

    - More synthetic event fields may be defined (32 up from 16)

    - Use of xarray for architectures with sparse system calls, for the
    system call trace events.

    This along with small clean ups and fixes"

    * tag 'trace-v5.5' of git://git.kernel.org/pub/scm/linux/kernel/git/rostedt/linux-trace: (51 commits)
    tracing: Enable syscall optimization for MIPS
    tracing: Use xarray for syscall trace events
    tracing: Sample module to demonstrate kernel access to Ftrace instances.
    tracing: Adding new functions for kernel access to Ftrace instances
    tracing: Fix Kconfig indentation
    ring-buffer: Fix typos in function ring_buffer_producer
    ftrace: Use BIT() macro
    ftrace: Return ENOTSUPP when DYNAMIC_FTRACE_WITH_DIRECT_CALLS is not configured
    ftrace: Rename ftrace_graph_stub to ftrace_stub_graph
    ftrace: Add a helper function to modify_ftrace_direct() to allow arch optimization
    ftrace: Add helper find_direct_entry() to consolidate code
    ftrace: Add another check for match in register_ftrace_direct()
    ftrace: Fix accounting bug with direct->count in register_ftrace_direct()
    ftrace/selftests: Fix spelling mistake "wakeing" -> "waking"
    tracing: Increase SYNTH_FIELDS_MAX for synthetic_events
    ftrace/samples: Add a sample module that implements modify_ftrace_direct()
    ftrace: Add modify_ftrace_direct()
    tracing: Add missing "inline" in stub function of latency_fsnotify()
    tracing: Remove stray tab in TRACE_EVAL_MAP_FILE's help text
    tracing: Use seq_buf_hex_dump() to dump buffers
    ...

    Linus Torvalds
     

14 Nov, 2019

1 commit

  • Add documentation for the software sinks API of the MSU driver and the
    msu-sink module in particular.

    Signed-off-by: Alexander Shishkin
    Link: https://lore.kernel.org/r/20191114064201.43089-3-alexander.shishkin@linux.intel.com
    Signed-off-by: Greg Kroah-Hartman

    Alexander Shishkin
     

13 Nov, 2019

1 commit

  • CONFIG_PREEMPTION is selected by CONFIG_PREEMPT and by CONFIG_PREEMPT_RT.
    Both PREEMPT and PREEMPT_RT require the same functionality which today
    depends on CONFIG_PREEMPT.

    Add additional header output for PREEMPT_RT.
    Link: http://lkml.kernel.org/r/20191015191821.11479-34-bigeasy@linutronix.de

    Cc: Ingo Molnar
    Signed-off-by: Sebastian Andrzej Siewior
    Signed-off-by: Steven Rostedt (VMware)

    Sebastian Andrzej Siewior
     

08 Nov, 2019

2 commits


04 Nov, 2019

1 commit

  • Livepatch uses ftrace for redirection to new patched functions. It means
    that if ftrace is disabled, all live patched functions are disabled as
    well. Toggling global 'ftrace_enabled' sysctl thus affect it directly.
    It is not a problem per se, because only administrator can set sysctl
    values, but it still may be surprising.

    Introduce PERMANENT ftrace_ops flag to amend this. If the
    FTRACE_OPS_FL_PERMANENT is set on any ftrace ops, the tracing cannot be
    disabled by disabling ftrace_enabled. Equally, a callback with the flag
    set cannot be registered if ftrace_enabled is disabled.

    Link: http://lkml.kernel.org/r/20191016113316.13415-2-mbenes@suse.cz

    Reviewed-by: Petr Mladek
    Reviewed-by: Kamalesh Babulal
    Signed-off-by: Miroslav Benes
    Signed-off-by: Steven Rostedt (VMware)

    Miroslav Benes
     

21 Sep, 2019

1 commit

  • Pull tracing updates from Steven Rostedt:

    - Addition of multiprobes to kprobe and uprobe events (allows for more
    than one probe attached to the same location)

    - Addition of adding immediates to probe parameters

    - Clean up of the recordmcount.c code. This brings us closer to merging
    recordmcount into objtool, and reuse code.

    - Other small clean ups

    * tag 'trace-v5.4' of git://git.kernel.org/pub/scm/linux/kernel/git/rostedt/linux-trace: (33 commits)
    selftests/ftrace: Update kprobe event error testcase
    tracing/probe: Reject exactly same probe event
    tracing/probe: Fix to allow user to enable events on unloaded modules
    selftests/ftrace: Select an existing function in kprobe_eventname test
    tracing/kprobe: Fix NULL pointer access in trace_porbe_unlink()
    tracing: Make sure variable reference alias has correct var_ref_idx
    tracing: Be more clever when dumping hex in __print_hex()
    ftrace: Simplify ftrace hash lookup code in clear_func_from_hash()
    tracing: Add "gfp_t" support in synthetic_events
    tracing: Rename tracing_reset() to tracing_reset_cpu()
    tracing: Document the stack trace algorithm in the comments
    tracing/arm64: Have max stack tracer handle the case of return address after data
    recordmcount: Clarify what cleanup() does
    recordmcount: Remove redundant cleanup() calls
    recordmcount: Kernel style formatting
    recordmcount: Kernel style function signature formatting
    recordmcount: Rewrite error/success handling
    selftests/ftrace: Add syntax error test for multiprobe
    selftests/ftrace: Add syntax error test for immediates
    selftests/ftrace: Add a testcase for kprobe multiprobe event
    ...

    Linus Torvalds
     

02 Sep, 2019

1 commit

  • The current text could mislead the user into believing that only read()
    disables tracing. Clarify that any open() call that requests read access
    disables tracing.

    Link: https://lkml.kernel.org/r/CAADnVQ+hU6QOC_dPmpjnuv=9g4SQEeaMEMqXOS2WpMj=q=LdiQ@mail.gmail.com
    Signed-off-by: Peter Wu
    Acked-by: Steven Rostedt (VMware)
    Signed-off-by: Jonathan Corbet

    Peter Wu
     

01 Sep, 2019

1 commit

  • Add immediate value parameter (\1234) support to
    probe events. This allows you to specify an immediate
    (or dummy) parameter instead of fetching from memory
    or register.

    This feature looks odd, but imagine when you put a probe
    on a code to trace some data. If the code is compiled into
    2 instructions and 1 instruction has a value but other has
    nothing since it is optimized out.
    In that case, you can not fold those into one event, even
    if ftrace supported multiple probes on one event.
    With this feature, you can set a dummy value like
    foo=\deadbeef instead of something like foo=%di.

    Link: http://lkml.kernel.org/r/156095690733.28024.13258186548822649469.stgit@devnote2

    Signed-off-by: Masami Hiramatsu
    Signed-off-by: Steven Rostedt (VMware)

    Masami Hiramatsu
     

01 Aug, 2019

1 commit

  • This changes from plain text to reStructuredText as suggestion
    in doc-guide [1]

    [1] https://www.kernel.org/doc/html/latest/doc-guide/sphinx.html

    Some adaptations such as: literal block, ``inline literal`` and
    alignment text,...

    Signed-off-by: Phong Tran
    Reviewed-by: Mauro Carvalho Chehab
    Acked-by: Mathieu Poirier
    Signed-off-by: Jonathan Corbet

    Phong Tran
     

19 Jul, 2019

1 commit

  • Pull tracing updates from Steven Rostedt:
    "The main changes in this release include:

    - Add user space specific memory reading for kprobes

    - Allow kprobes to be executed earlier in boot

    The rest are mostly just various clean ups and small fixes"

    * tag 'trace-v5.3' of git://git.kernel.org/pub/scm/linux/kernel/git/rostedt/linux-trace: (33 commits)
    tracing: Make trace_get_fields() global
    tracing: Let filter_assign_type() detect FILTER_PTR_STRING
    tracing: Pass type into tracing_generic_entry_update()
    ftrace/selftest: Test if set_event/ftrace_pid exists before writing
    ftrace/selftests: Return the skip code when tracing directory not configured in kernel
    tracing/kprobe: Check registered state using kprobe
    tracing/probe: Add trace_event_call accesses APIs
    tracing/probe: Add probe event name and group name accesses APIs
    tracing/probe: Add trace flag access APIs for trace_probe
    tracing/probe: Add trace_event_file access APIs for trace_probe
    tracing/probe: Add trace_event_call register API for trace_probe
    tracing/probe: Add trace_probe init and free functions
    tracing/uprobe: Set print format when parsing command
    tracing/kprobe: Set print format right after parsed command
    kprobes: Fix to init kprobes in subsys_initcall
    tracepoint: Use struct_size() in kmalloc()
    ring-buffer: Remove HAVE_64BIT_ALIGNED_ACCESS
    ftrace: Enable trampoline when rec count returns back to one
    tracing/kprobe: Do not run kprobe boot tests if kprobe_event is on cmdline
    tracing: Make a separate config for trace event self tests
    ...

    Linus Torvalds
     

16 Jul, 2019

1 commit

  • Pull PCI updates from Bjorn Helgaas:
    "Enumeration changes:

    - Evaluate PCI Boot Configuration _DSM to learn if firmware wants us
    to preserve its resource assignments (Benjamin Herrenschmidt)

    - Simplify resource distribution (Nicholas Johnson)

    - Decode 32 GT/s link speed (Gustavo Pimentel)

    Virtualization:

    - Fix incorrect caching of VF config space size (Alex Williamson)

    - Fix VF driver probing sysfs knobs (Alex Williamson)

    Peer-to-peer DMA:

    - Fix dma_virt_ops check (Logan Gunthorpe)

    Altera host bridge driver:

    - Allow building as module (Ley Foon Tan)

    Armada 8K host bridge driver:

    - add PHYs support (Miquel Raynal)

    DesignWare host bridge driver:

    - Export APIs to support removable loadable module (Vidya Sagar)

    - Enable Relaxed Ordering erratum workaround only on Tegra20 &
    Tegra30 (Vidya Sagar)

    Hyper-V host bridge driver:

    - Fix use-after-free in eject (Dexuan Cui)

    Mobiveil host bridge driver:

    - Clean up and fix many issues, including non-identify mapped
    windows, 64-bit windows, multi-MSI, class code, INTx clearing (Hou
    Zhiqiang)

    Qualcomm host bridge driver:

    - Use clk bulk API for 2.4.0 controllers (Bjorn Andersson)

    - Add QCS404 support (Bjorn Andersson)

    - Assert PERST for at least 100ms (Niklas Cassel)

    R-Car host bridge driver:

    - Add r8a774a1 DT support (Biju Das)

    Tegra host bridge driver:

    - Add support for Gen2, opportunistic UpdateFC and ACK (PCIe protocol
    details) AER, GPIO-based PERST# (Manikanta Maddireddy)

    - Fix many issues, including power-on failure cases, interrupt
    masking in suspend, UPHY settings, AFI dynamic clock gating,
    pending DLL transactions (Manikanta Maddireddy)

    Xilinx host bridge driver:

    - Fix NWL Multi-MSI programming (Bharat Kumar Gogada)

    Endpoint support:

    - Fix 64bit BAR support (Alan Mikhak)

    - Fix pcitest build issues (Alan Mikhak, Andy Shevchenko)

    Bug fixes:

    - Fix NVIDIA GPU multi-function power dependencies (Abhishek Sahu)

    - Fix NVIDIA GPU HDA enablement issue (Lukas Wunner)

    - Ignore lockdep for sysfs "remove" (Marek Vasut)

    Misc:

    - Convert docs to reST (Changbin Du, Mauro Carvalho Chehab)"

    * tag 'pci-v5.3-changes' of git://git.kernel.org/pub/scm/linux/kernel/git/helgaas/pci: (107 commits)
    PCI: Enable NVIDIA HDA controllers
    tools: PCI: Fix installation when `make tools/pci_install`
    PCI: dwc: pci-dra7xx: Fix compilation when !CONFIG_GPIOLIB
    PCI: Fix typos and whitespace errors
    PCI: mobiveil: Fix INTx interrupt clearing in mobiveil_pcie_isr()
    PCI: mobiveil: Fix infinite-loop in the INTx handling function
    PCI: mobiveil: Move PCIe PIO enablement out of inbound window routine
    PCI: mobiveil: Add upper 32-bit PCI base address setup in inbound window
    PCI: mobiveil: Add upper 32-bit CPU base address setup in outbound window
    PCI: mobiveil: Mask out hardcoded bits in inbound/outbound windows setup
    PCI: mobiveil: Clear the control fields before updating it
    PCI: mobiveil: Add configured inbound windows counter
    PCI: mobiveil: Fix the valid check for inbound and outbound windows
    PCI: mobiveil: Clean-up program_{ib/ob}_windows()
    PCI: mobiveil: Remove an unnecessary return value check
    PCI: mobiveil: Fix error return values
    PCI: mobiveil: Refactor the MEM/IO outbound window initialization
    PCI: mobiveil: Make some register updates more readable
    PCI: mobiveil: Reformat the code for readability
    dt-bindings: PCI: mobiveil: Change gpio_slave and apb_csr to optional
    ...

    Linus Torvalds
     

21 Jun, 2019

1 commit


15 Jun, 2019

2 commits

  • Convert the PM documents to ReST, in order to allow them to
    build with Sphinx.

    The conversion is actually:
    - add blank lines and indentation in order to identify paragraphs;
    - fix tables markups;
    - add some lists markups;
    - mark literal blocks;
    - adjust title markups.

    At its new index.rst, let's add a :orphan: while this is not linked to
    the main index.rst file, in order to avoid build warnings.

    Signed-off-by: Mauro Carvalho Chehab
    Signed-off-by: Bjorn Helgaas
    Acked-by: Mark Brown
    Acked-by: Srivatsa S. Bhat (VMware)

    Mauro Carvalho Chehab
     
  • Update the documentation to reflect the new naming scheme with
    latest changes.

    Reported-by: Leo Yan
    Reviewed-by: Mathieu Poirier
    Signed-off-by: Suzuki K Poulose
    Signed-off-by: Jonathan Corbet

    Suzuki K Poulose
     

08 Jun, 2019

1 commit


30 May, 2019

1 commit


26 May, 2019

3 commits

  • Add kprobe_event= boot parameter to define kprobe events
    at boot time.
    The definition syntax is similar to tracefs/kprobe_events
    interface, but use ',' and ';' instead of ' ' and '\n'
    respectively. e.g.

    kprobe_event=p,vfs_read,$arg1,$arg2

    This puts a probe on vfs_read with argument1 and 2, and
    enable the new event.

    Link: http://lkml.kernel.org/r/155851395498.15728.830529496248543583.stgit@devnote2

    Signed-off-by: Masami Hiramatsu
    Signed-off-by: Steven Rostedt (VMware)

    Masami Hiramatsu
     
  • Support user-space dereference syntax for probe event arguments
    to dereference the data-structure or array in user-space.

    The syntax is just adding 'u' before an offset value.

    +|-u()

    e.g. +u8(%ax), +u0(+0(%si))

    For example, if you probe do_sched_setscheduler(pid, policy,
    param) and record param->sched_priority, you can add new
    probe as below;

    p do_sched_setscheduler priority=+u0($arg3)

    Note that kprobe event provides this and it doesn't change the
    dereference method automatically because we do not know whether
    the given address is in userspace or kernel on some archs.

    So as same as "ustring", this is an option for user, who has to
    carefully choose the dereference method.

    Link: http://lkml.kernel.org/r/155789872187.26965.4468456816590888687.stgit@devnote2

    Acked-by: Ingo Molnar
    Signed-off-by: Masami Hiramatsu
    Signed-off-by: Steven Rostedt (VMware)

    Masami Hiramatsu
     
  • Add "ustring" type for fetching user-space string from kprobe event.
    User can specify ustring type at uprobe event, and it is same as
    "string" for uprobe.

    Note that probe-event provides this option but it doesn't choose the
    correct type automatically since we have not way to decide the address
    is in user-space or not on some arch (and on some other arch, you can
    fetch the string by "string" type). So user must carefully check the
    target code (e.g. if you see __user on the target variable) and
    use this new type.

    Link: http://lkml.kernel.org/r/155789871009.26965.14167558859557329331.stgit@devnote2

    Acked-by: Ingo Molnar
    Signed-off-by: Masami Hiramatsu
    Signed-off-by: Steven Rostedt (VMware)

    Masami Hiramatsu
     

16 May, 2019

1 commit

  • Pull tracing updates from Steven Rostedt:
    "The major changes in this tracing update includes:

    - Removal of non-DYNAMIC_FTRACE from 32bit x86

    - Removal of mcount support from x86

    - Emulating a call from int3 on x86_64, fixes live kernel patching

    - Consolidated Tracing Error logs file

    Minor updates:

    - Removal of klp_check_compiler_support()

    - kdb ftrace dumping output changes

    - Accessing and creating ftrace instances from inside the kernel

    - Clean up of #define if macro

    - Introduction of TRACE_EVENT_NOP() to disable trace events based on
    config options

    And other minor fixes and clean ups"

    * tag 'trace-v5.2' of git://git.kernel.org/pub/scm/linux/kernel/git/rostedt/linux-trace: (44 commits)
    x86: Hide the int3_emulate_call/jmp functions from UML
    livepatch: Remove klp_check_compiler_support()
    ftrace/x86: Remove mcount support
    ftrace/x86_32: Remove support for non DYNAMIC_FTRACE
    tracing: Simplify "if" macro code
    tracing: Fix documentation about disabling options using trace_options
    tracing: Replace kzalloc with kcalloc
    tracing: Fix partial reading of trace event's id file
    tracing: Allow RCU to run between postponed startup tests
    tracing: Fix white space issues in parse_pred() function
    tracing: Eliminate const char[] auto variables
    ring-buffer: Fix mispelling of Calculate
    tracing: probeevent: Fix to make the type of $comm string
    tracing: probeevent: Do not accumulate on ret variable
    tracing: uprobes: Re-enable $comm support for uprobe events
    ftrace/x86_64: Emulate call function while updating in breakpoint handler
    x86_64: Allow breakpoints to emulate call instructions
    x86_64: Add gap to int3 to allow for call emulation
    tracing: kdb: Allow ftdump to skip all but the last few entries
    tracing: Add trace_total_entries() / trace_total_entries_cpu()
    ...

    Linus Torvalds
     

15 May, 2019

1 commit

  • Patch series "mm: Generalize putback functions"]

    putback_inactive_pages() and move_active_pages_to_lru() are almost
    similar, so this patchset merges them ina single function.

    This patch (of 4):

    The patch moves the calculation from putback_inactive_pages() to
    shrink_inactive_list(). This makes putback_inactive_pages() looking more
    similar to move_active_pages_to_lru().

    To do that, we account activated pages in reclaim_stat::nr_activate.
    Since a page may change its LRU type from anon to file cache inside
    shrink_page_list() (see ClearPageSwapBacked()), we have to account pages
    for the both types. So, nr_activate becomes an array.

    Previously we used nr_activate to account PGACTIVATE events, but now we
    account them into pgactivate variable (since they are about number of
    pages in general, not about sum of hpage_nr_pages).

    Link: http://lkml.kernel.org/r/155290127956.31489.3393586616054413298.stgit@localhost.localdomain
    Signed-off-by: Kirill Tkhai
    Reviewed-by: Daniel Jordan
    Cc: Michal Hocko
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Kirill Tkhai
     

11 May, 2019

1 commit

  • Pull more documentation updates from Jonathan Corbet:
    "Some late arriving documentation changes. In particular, this contains
    the conversion of the x86 docs to RST, which has been in the works for
    some time but needed a couple of final tweaks"

    * tag 'docs-5.2a' of git://git.lwn.net/linux: (29 commits)
    Documentation: x86: convert x86_64/machinecheck to reST
    Documentation: x86: convert x86_64/cpu-hotplug-spec to reST
    Documentation: x86: convert x86_64/fake-numa-for-cpusets to reST
    Documentation: x86: convert x86_64/5level-paging.txt to reST
    Documentation: x86: convert x86_64/mm.txt to reST
    Documentation: x86: convert x86_64/uefi.txt to reST
    Documentation: x86: convert x86_64/boot-options.txt to reST
    Documentation: x86: convert i386/IO-APIC.txt to reST
    Documentation: x86: convert usb-legacy-support.txt to reST
    Documentation: x86: convert orc-unwinder.txt to reST
    Documentation: x86: convert resctrl_ui.txt to reST
    Documentation: x86: convert microcode.txt to reST
    Documentation: x86: convert pti.txt to reST
    Documentation: x86: convert amd-memory-encryption.txt to reST
    Documentation: x86: convert intel_mpx.txt to reST
    Documentation: x86: convert protection-keys.txt to reST
    Documentation: x86: convert pat.txt to reST
    Documentation: x86: convert mtrr.txt to reST
    Documentation: x86: convert tlb.txt to reST
    Documentation: x86: convert zero-page.txt to reST
    ...

    Linus Torvalds
     

09 May, 2019

2 commits

  • The current trace documentation, the section describing histogram's "onmatch"
    is not straightforward enough about how this action is applied. It is not
    clear what criteria are used to "match" both events. A short note is added,
    describing what exactly is compared in order to match the events.

    Signed-off-by: Tzvetomir Stoyanov
    Reviewed-by: Steven Rostedt (VMware)
    Reviewed-by: Tom Zanussi
    [jc: fixed trivial conflict with docs-next]
    Signed-off-by: Jonathan Corbet

    Tzvetomir Stoyanov
     
  • Pull documentation updates from Jonathan Corbet:
    "A reasonably busy cycle for docs, including:

    - Lots of work on the Chinese and Italian translations

    - Some license-rules clarifications from Christoph

    - Various build-script fixes

    - A new document on memory models

    - RST conversion of the live-patching docs

    - The usual collection of typo fixes and corrections"

    * tag 'docs-5.2' of git://git.lwn.net/linux: (140 commits)
    docs/livepatch: Unify style of livepatch documentation in the ReST format
    docs: livepatch: convert docs to ReST and rename to *.rst
    scripts/documentation-file-ref-check: detect broken :doc:`foo`
    scripts/documentation-file-ref-check: don't parse Next/ dir
    LICENSES: Rename other to deprecated
    LICENSES: Clearly mark dual license only licenses
    docs: Don't reference the ZLib license in license-rules.rst
    docs/vm: Minor editorial changes in the THP and hugetlbfs
    docs/vm: add documentation of memory models
    doc:it_IT: translation alignment
    doc: fix typo in PGP guide
    dontdiff: update with Kconfig build artifacts
    docs/zh_CN: fix typos in 1.Intro.rst file
    docs/zh_CN: redirect CoC docs to Chinese version
    doc: mm: migration doesn't use FOLL_SPLIT anymore
    docs: doc-guide: remove the extension from .rst files
    doc: kselftest: Fix KBUILD_OUTPUT usage instructions
    docs: trace: fix some Sphinx warnings
    docs: speculation.txt: mark example blocks as such
    docs: ntb.txt: add blank lines to clean up some Sphinx warnings
    ...

    Linus Torvalds
     

04 May, 2019

1 commit


16 Apr, 2019

1 commit


08 Apr, 2019

1 commit

  • Move most of the hist trigger extended error documentation to
    ftrace.rst and expand on it to fully document tracing/error_log.

    Link: http://lkml.kernel.org/r/c5d53c8f643ef6844d6ad8d0200c116936730b01.1554072478.git.tom.zanussi@linux.intel.com

    Acked-by: Masami Hiramatsu
    Acked-by: Namhyung Kim
    Signed-off-by: Tom Zanussi
    Signed-off-by: Steven Rostedt (VMware)

    Tom Zanussi