27 Aug, 2016

1 commit

  • Checking command line filenames that are outside the git tree can emit a
    noisy and confusing message.

    Quiet that message by redirecting stderr.
    Verify that the command was executed successfully.

    Fixes: 4cad35a7ca69 ("get_maintainer.pl: reduce need for command-line option -f")
    Link: http://lkml.kernel.org/r/1970a1d2fecb258e384e2e4fdaacdc9ccf3e30a4.1470955439.git.joe@perches.com
    Signed-off-by: Joe Perches
    Reported-by: Wolfram Sang
    Tested-by: Wolfram Sang
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Joe Perches
     

11 Aug, 2016

1 commit

  • If get_maintainer is not given any filename arguments on the command line,
    the standard input is read for a patch.

    But checking if a VCS has a file named &STDIN is not a good idea and fails.

    Verify the nominal input file is not &STDIN before checking the VCS.

    Fixes: 4cad35a7ca69 ("get_maintainer.pl: reduce need for command-line option -f")
    Reported-by: Christopher Covington
    Signed-off-by: Joe Perches
    Signed-off-by: Linus Torvalds

    Joe Perches
     

09 Aug, 2016

5 commits

  • This adds support for building more complex gcc plugins that live in a
    subdirectory instead of just in a single source file.

    Reported-by: PaX Team
    Signed-off-by: Emese Revfy
    [kees: clarified commit message]
    Signed-off-by: Kees Cook

    Emese Revfy
     
  • There's no reason to repeat the same names in the Makefile when the .so
    files have already been listed. The .o list can be generated from them.

    Reported-by: PaX Team
    Signed-off-by: Emese Revfy
    [kees: clarified commit message]
    Signed-off-by: Kees Cook

    Emese Revfy
     
  • The latent_entropy plugin needs to pass arguments, so this adds the
    support.

    Signed-off-by: Emese Revfy
    Signed-off-by: Kees Cook

    Emese Revfy
     
  • When the compiler doesn't support gcc plugins (either due to missing
    headers or too old a version), report the problem and abort the build
    instead of emitting a warning and letting the build founder with arcane
    compiler errors.

    Signed-off-by: Kees Cook

    Kees Cook
     
  • The gcc-plugins arguments should not be included when performing
    cc-option tests.

    Steps to reproduce:
    1) make mrproper
    2) make defconfig
    3) enable GCC_PLUGINS, GCC_PLUGIN_CYC_COMPLEXITY
    4) enable FUNCTION_TRACER (it will select other options as well)
    5) make && make modules

    Build errors:
    MODPOST 18 modules
    ERROR: "__fentry__" [net/netfilter/xt_nat.ko] undefined!
    ERROR: "__fentry__" [net/netfilter/xt_mark.ko] undefined!
    ERROR: "__fentry__" [net/netfilter/xt_addrtype.ko] undefined!
    ERROR: "__fentry__" [net/netfilter/xt_LOG.ko] undefined!
    ERROR: "__fentry__" [net/netfilter/nf_nat_sip.ko] undefined!
    ERROR: "__fentry__" [net/netfilter/nf_nat_irc.ko] undefined!
    ERROR: "__fentry__" [net/netfilter/nf_nat_ftp.ko] undefined!
    ERROR: "__fentry__" [net/netfilter/nf_nat.ko] undefined!

    Reported-by: Laura Abbott
    Signed-off-by: Emese Revfy
    [kees: renamed variable, clarified commit message]
    Signed-off-by: Kees Cook

    Emese Revfy
     

04 Aug, 2016

1 commit

  • Pull tracing fixes from Steven Rostedt:
    "A few updates and fixes:

    - move the suppressing of the __builtin_return_address >0 warning to
    the tracing directory only.

    - metag recordmcount fix for newer glibc's

    - two tracing histogram fixes that were reported by KASAN"

    * tag 'trace-v4.8-1' of git://git.kernel.org/pub/scm/linux/kernel/git/rostedt/linux-trace:
    tracing: Fix use-after-free in hist_register_trigger()
    tracing: Fix use-after-free in hist_unreg_all/hist_enable_unreg_all
    Makefile: Mute warning for __builtin_return_address(>0) for tracing only
    ftrace/recordmcount: Work around for addition of metag magic but not relocations

    Linus Torvalds
     

03 Aug, 2016

13 commits

  • Merge yet more updates from Andrew Morton:

    - the rest of ocfs2

    - various hotfixes, mainly MM

    - quite a bit of misc stuff - drivers, fork, exec, signals, etc.

    - printk updates

    - firmware

    - checkpatch

    - nilfs2

    - more kexec stuff than usual

    - rapidio updates

    - w1 things

    * emailed patches from Andrew Morton : (111 commits)
    ipc: delete "nr_ipc_ns"
    kcov: allow more fine-grained coverage instrumentation
    init/Kconfig: add clarification for out-of-tree modules
    config: add android config fragments
    init/Kconfig: ban CONFIG_LOCALVERSION_AUTO with allmodconfig
    relay: add global mode support for buffer-only channels
    init: allow blacklisting of module_init functions
    w1:omap_hdq: fix regression
    w1: add helper macro module_w1_family
    w1: remove need for ida and use PLATFORM_DEVID_AUTO
    rapidio/switches: add driver for IDT gen3 switches
    powerpc/fsl_rio: apply changes for RIO spec rev 3
    rapidio: modify for rev.3 specification changes
    rapidio: change inbound window size type to u64
    rapidio/idt_gen2: fix locking warning
    rapidio: fix error handling in mbox request/release functions
    rapidio/tsi721_dma: advance queue processing from transfer submit call
    rapidio/tsi721: add messaging mbox selector parameter
    rapidio/tsi721: add PCIe MRRS override parameter
    rapidio/tsi721_dma: add channel mask and queue size parameters
    ...

    Linus Torvalds
     
  • For more targeted fuzzing, it's better to disable kernel-wide
    instrumentation and instead enable it on a per-subsystem basis. This
    follows the pattern of UBSAN and allows you to compile in the kcov
    driver without instrumenting the whole kernel.

    To instrument a part of the kernel, you can use either

    # for a single file in the current directory
    KCOV_INSTRUMENT_filename.o := y

    or

    # for all the files in the current directory (excluding subdirectories)
    KCOV_INSTRUMENT := y

    or

    # (same as above)
    ccflags-y += $(CFLAGS_KCOV)

    or

    # for all the files in the current directory (including subdirectories)
    subdir-ccflags-y += $(CFLAGS_KCOV)

    Link: http://lkml.kernel.org/r/1464008380-11405-1-git-send-email-vegard.nossum@oracle.com
    Signed-off-by: Vegard Nossum
    Cc: Dmitry Vyukov
    Cc: Quentin Casasnovas
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Vegard Nossum
     
  • If no filenames are given, then read the patch from stdin.

    Link: http://lkml.kernel.org/r/a8784f291ccb5067361992bf5d41ff6cfb0ce5cb.1469830917.git.allenbh@gmail.com
    Signed-off-by: Allen Hubbe
    Acked-by: Joe Perches
    Cc: Andy Whitcroft
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Allen Hubbe
     
  • Signoff was not checked if the filename is '-', indicating reading the
    patch from stdin. Commands such as the below would not warn about a
    missing signoff, because the patch filename is '-'. This change allows
    checkpatch to warn about a missing signoff, even if the input filename
    is '-', but only if the patch has a commit message.

    git show --pretty=email | scripts/checkpatch.pl -

    A more common use of checkpatch with stdin is for piping git diff
    through checkpatch. The diff output would not contain a commit message,
    and therefore it would not contain a signoff line. For this common use
    case, a warning should not be printed about the missing signoff. With
    this change we will only warn about a missing signoff if the input
    contains a commit message.

    git diff | scripts/checkpatch.pl -

    Before this patch, a workaround for the first command was to refer to
    stdin by a name other than '-'. The workaround is not an elegant
    solution, because elsewhere checkpatch uses the fact that filename
    equals '-', such as in setting '$vname' to 'Your patch' for stdin. The
    command below would report "/dev/stdin has style problems" instead of
    "Your patch has style problems."

    git show --pretty=email | scripts/checkpatch.pl /dev/stdin

    Link: http://lkml.kernel.org/r/48be31e414bddc65bccfa6b1322359be9ba032eb.1469670589.git.allenbh@gmail.com
    Signed-off-by: Allen Hubbe
    Acked-by: Joe Perches
    Cc: Andy Whitcroft
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Allen Hubbe
     
  • Fix false positive warning of identifiers ending in signed with an =
    assignment of WARNING: Prefer 'signed int' to bare use of 'signed'.

    Link: http://lkml.kernel.org/r/6a0e24c3e9102337528ecfcbbe91a0eb5b4820ed.1469529497.git.joe@perches.com
    Signed-off-by: Joe Perches
    Reported-by: Alan Douglas
    Acked-by: Andy Whitcroft
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Joe Perches
     
  • BIT macro cannot be exported to UAPI, don't complain about it.

    Link: http://lkml.kernel.org/r/1468707033-16173-1-git-send-email-tomas.winkler@intel.com
    Signed-off-by: Tomas Winkler
    Acked-by: Joe Perches
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Tomas Winkler
     
  • Using \b isn't good enough to isolate what appears to be a commit id in
    a commit message.

    Make sure there is a space or a quote like character after a continuous
    run of hexadecimal characters that could be a commit id.

    Link: http://lkml.kernel.org/r/fdd22b47463a21c21132edbb8aa35e372950a1e6.1468869915.git.joe@perches.com
    Signed-off-by: Joe Perches
    Cc: "Zhuo, Qiuxu"
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Joe Perches
     
  • Sanitise the lines that contain c99 comments so that the error doesn't
    get emitted.

    Link: http://lkml.kernel.org/r/d4d22c34ad7bcc1bceb52f0742f76b7a6d585235.1468368420.git.joe@perches.com
    Signed-off-by: Joe Perches
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Joe Perches
     
  • These are also possible single line uses that exceed the generic maximum
    line length (typically 80 columns)

    Link: http://lkml.kernel.org/r/32a6a85fbd6161f1bb55ce176a464e44591afc5b.1468368420.git.joe@perches.com
    Signed-off-by: Joe Perches
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Joe Perches
     
  • If a vcs is used, look to see if the vcs tracks the file specified and
    so the -f option becomes optional.

    Link: http://lkml.kernel.org/r/7c86a8df0d48770c45778a43b6b3e4627b2a90ee.1469746395.git.joe@perches.com
    Signed-off-by: Joe Perches
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Joe Perches
     
  • Pull misc kbuild updates from Michal Marek:

    - coccicheck script improvements by Luis Rodriguez and Deepa Dinamani

    - new coccinelle patches by Yann Droneaud and Vaishali Thakkar

    - debian packaging fixes by Wilfried Klaebe, Henning Schild and Marcin
    Mielniczuk

    * 'misc' of git://git.kernel.org/pub/scm/linux/kernel/git/mmarek/kbuild:
    Fix the Debian packaging script on systems with no codename
    builddeb: fix file permissions before packaging
    scripts/coccinelle: require coccinelle >= 1.0.4 on device_node_continue.cocci
    coccicheck: refer to Documentation/coccinelle.txt and wiki
    coccicheck: add support for requring a coccinelle version
    scripts: add Linux .cocciconfig for coccinelle
    coccicheck: replace --very-quiet with --quiet when debugging
    coccicheck: add support for DEBUG_FILE
    coccicheck: enable parmap support
    coccicheck: make SPFLAGS more useful
    coccicheck: move spatch binary check up
    builddeb: really include objtool binary in headers package
    coccinelle: catch krealloc() on devm_*() allocated memory
    coccinelle: recognize more devm_* memory allocation functions
    coccinelle: also catch kzfree() issues
    coccicheck: Allow for overriding spatch flags
    Coccinelle: noderef: Add new rules and correct the old rule

    Linus Torvalds
     
  • Pull kbuild updates from Michal Marek:

    - GCC plugin support by Emese Revfy from grsecurity, with a fixup from
    Kees Cook. The plugins are meant to be used for static analysis of
    the kernel code. Two plugins are provided already.

    - reduction of the gcc commandline by Arnd Bergmann.

    - IS_ENABLED / IS_REACHABLE macro enhancements by Masahiro Yamada

    - bin2c fix by Michael Tautschnig

    - setlocalversion fix by Wolfram Sang

    * 'kbuild' of git://git.kernel.org/pub/scm/linux/kernel/git/mmarek/kbuild:
    gcc-plugins: disable under COMPILE_TEST
    kbuild: Abort build on bad stack protector flag
    scripts: Fix size mismatch of kexec_purgatory_size
    kbuild: make samples depend on headers_install
    Kbuild: don't add obj tree in additional includes
    Kbuild: arch: look for generated headers in obtree
    Kbuild: always prefix objtree in LINUXINCLUDE
    Kbuild: avoid duplicate include path
    Kbuild: don't add ../../ to include path
    vmlinux.lds.h: replace config_enabled() with IS_ENABLED()
    kconfig.h: allow to use IS_{ENABLE,REACHABLE} in macro expansion
    kconfig.h: use already defined macros for IS_REACHABLE() define
    export.h: use __is_defined() to check if __KSYM_* is defined
    kconfig.h: use __is_defined() to check if MODULE is defined
    kbuild: setlocalversion: print error to STDERR
    Add sancov plugin
    Add Cyclomatic complexity GCC plugin
    GCC plugin infrastructure
    Shared library support

    Linus Torvalds
     
  • glibc recently did a sync up (94e73c95d9b5 "elf.h: Sync with the gabi
    webpage") that added a #define for EM_METAG but did not add relocations

    This triggers build errors:

    scripts/recordmcount.c: In function 'do_file':
    scripts/recordmcount.c:466:28: error: 'R_METAG_ADDR32' undeclared (first use in this function)
    case EM_METAG: reltype = R_METAG_ADDR32;
    ^~~~~~~~~~~~~~
    scripts/recordmcount.c:466:28: note: each undeclared identifier is reported only once for each function it appears in
    scripts/recordmcount.c:468:20: error: 'R_METAG_NONE' undeclared (first use in this function)
    rel_type_nop = R_METAG_NONE;
    ^~~~~~~~~~~~

    Work around this change with some more #ifdefery for the relocations.

    Fedora Bugzilla: https://bugzilla.redhat.com/show_bug.cgi?id=1354034

    Link: http://lkml.kernel.org/r/1468005530-14757-1-git-send-email-labbott@redhat.com

    Cc: stable@vger.kernel.org # v3.9+
    Cc: James Hogan
    Fixes: 00512bdd4573 ("metag: ftrace support")
    Reported-by: Ross Burton
    Signed-off-by: Laura Abbott
    Signed-off-by: Steven Rostedt

    Laura Abbott
     

31 Jul, 2016

1 commit

  • Pull DeviceTree updates from Rob Herring:

    - remove most of_platform_populate() calls in arch code. Now the DT
    core code calls it in the default case and platforms only need to
    call it if they have special needs

    - use pr_fmt on all the DT core print statements

    - CoreSight binding doc improvements to block name descriptions

    - add dt_to_config script which can parse dts files and list
    corresponding kernel config options

    - fix memory leak hit with a PowerMac DT

    - correct a bunch of STMicro compatible strings to use the correct
    vendor prefix

    - fix DA9052 PMIC binding doc to match what is actually used in dts
    files

    * tag 'devicetree-for-4.8' of git://git.kernel.org/pub/scm/linux/kernel/git/robh/linux: (35 commits)
    documentation: da9052: Update regulator bindings names to match DA9052/53 DTS expectations
    xtensa: Partially Revert "xtensa: Remove unnecessary of_platform_populate with default match table"
    xtensa: Fix build error due to missing include file
    MIPS: ath79: Add missing include file
    Fix spelling errors in Documentation/devicetree
    ARM: dts: fix STMicroelectronics compatible strings
    powerpc/dts: fix STMicroelectronics compatible strings
    Documentation: dt: i2c: use correct STMicroelectronics vendor prefix
    scripts/dtc: dt_to_config - kernel config options for a devicetree
    of: fdt: mark unflattened tree as detached
    of: overlay: add resolver error prints
    coresight: document binding acronyms
    Documentation/devicetree: document cavium-pip rx-delay/tx-delay properties
    of: use pr_fmt prefix for all console printing
    of/irq: Mark initialised interrupt controllers as populated
    of: fix memory leak related to safe_name()
    Revert "of/platform: export of_default_bus_match_table"
    of: unittest: use of_platform_default_populate() to populate default bus
    memory: omap-gpmc: use of_platform_default_populate() to populate default bus
    bus: uniphier-system-bus: use of_platform_default_populate() to populate default bus
    ...

    Linus Torvalds
     

30 Jul, 2016

1 commit

  • Pull security subsystem updates from James Morris:
    "Highlights:

    - TPM core and driver updates/fixes
    - IPv6 security labeling (CALIPSO)
    - Lots of Apparmor fixes
    - Seccomp: remove 2-phase API, close hole where ptrace can change
    syscall #"

    * 'next' of git://git.kernel.org/pub/scm/linux/kernel/git/jmorris/linux-security: (156 commits)
    apparmor: fix SECURITY_APPARMOR_HASH_DEFAULT parameter handling
    tpm: Add TPM 2.0 support to the Nuvoton i2c driver (NPCT6xx family)
    tpm: Factor out common startup code
    tpm: use devm_add_action_or_reset
    tpm2_i2c_nuvoton: add irq validity check
    tpm: read burstcount from TPM_STS in one 32-bit transaction
    tpm: fix byte-order for the value read by tpm2_get_tpm_pt
    tpm_tis_core: convert max timeouts from msec to jiffies
    apparmor: fix arg_size computation for when setprocattr is null terminated
    apparmor: fix oops, validate buffer size in apparmor_setprocattr()
    apparmor: do not expose kernel stack
    apparmor: fix module parameters can be changed after policy is locked
    apparmor: fix oops in profile_unpack() when policy_db is not present
    apparmor: don't check for vmalloc_addr if kvzalloc() failed
    apparmor: add missing id bounds check on dfa verification
    apparmor: allow SYS_CAP_RESOURCE to be sufficient to prlimit another task
    apparmor: use list_next_entry instead of list_entry_next
    apparmor: fix refcount race when finding a child profile
    apparmor: fix ref count leak when profile sha1 hash is read
    apparmor: check that xindex is in trans_table bounds
    ...

    Linus Torvalds
     

29 Jul, 2016

1 commit

  • Pull libnvdimm updates from Dan Williams:

    - Replace pcommit with ADR / directed-flushing.

    The pcommit instruction, which has not shipped on any product, is
    deprecated. Instead, the requirement is that platforms implement
    either ADR, or provide one or more flush addresses per nvdimm.

    ADR (Asynchronous DRAM Refresh) flushes data in posted write buffers
    to the memory controller on a power-fail event.

    Flush addresses are defined in ACPI 6.x as an NVDIMM Firmware
    Interface Table (NFIT) sub-structure: "Flush Hint Address Structure".
    A flush hint is an mmio address that when written and fenced assures
    that all previous posted writes targeting a given dimm have been
    flushed to media.

    - On-demand ARS (address range scrub).

    Linux uses the results of the ACPI ARS commands to track bad blocks
    in pmem devices. When latent errors are detected we re-scrub the
    media to refresh the bad block list, userspace can also request a
    re-scrub at any time.

    - Support for the Microsoft DSM (device specific method) command
    format.

    - Support for EDK2/OVMF virtual disk device memory ranges.

    - Various fixes and cleanups across the subsystem.

    * tag 'libnvdimm-for-4.8' of git://git.kernel.org/pub/scm/linux/kernel/git/nvdimm/nvdimm: (41 commits)
    libnvdimm-btt: Delete an unnecessary check before the function call "__nd_device_register"
    nfit: do an ARS scrub on hitting a latent media error
    nfit: move to nfit/ sub-directory
    nfit, libnvdimm: allow an ARS scrub to be triggered on demand
    libnvdimm: register nvdimm_bus devices with an nd_bus driver
    pmem: clarify a debug print in pmem_clear_poison
    x86/insn: remove pcommit
    Revert "KVM: x86: add pcommit support"
    nfit, tools/testing/nvdimm/: unify shutdown paths
    libnvdimm: move ->module to struct nvdimm_bus_descriptor
    nfit: cleanup acpi_nfit_init calling convention
    nfit: fix _FIT evaluation memory leak + use after free
    tools/testing/nvdimm: add manufacturing_{date|location} dimm properties
    tools/testing/nvdimm: add virtual ramdisk range
    acpi, nfit: treat virtual ramdisk SPA as pmem region
    pmem: kill __pmem address space
    pmem: kill wmb_pmem()
    libnvdimm, pmem: use nvdimm_flush() for namespace I/O writes
    fs/dax: remove wmb_pmem()
    libnvdimm, pmem: flush posted-write queues on shutdown
    ...

    Linus Torvalds
     

28 Jul, 2016

2 commits

  • Pull media documentation updates from Mauro Carvalho Chehab:
    "This patch series does the conversion of all media documentation stuff
    to Restrutured Text markup format and add them to the
    Documentation/index.rst file.

    The media documentation was grouped into 4 books:

    - media uAPI
    - media kAPI
    - V4L driver-specific documentation
    - DVB driver-specific documentation

    It also contains several documentation improvements and one fixup
    patch for a core issue with cropcap.

    PS. After this patch series, the media DocBook is deprecated and
    should be removed. I'll add such patch on a future pull request"

    * tag 'media/v4.8-4' of git://git.kernel.org/pub/scm/linux/kernel/git/mchehab/linux-media: (322 commits)
    [media] cx23885-cardlist.rst: add a new card
    [media] doc-rst: add some needed escape codes
    [media] doc-rst: kapi: use :c:func: instead of :cpp:func
    doc-rst: kernel-doc: fix a change introduced by mistake
    [media] v4l2-ioctl.h add debug info for struct v4l2_ioctl_ops
    [media] dvb_ringbuffer.h: some documentation improvements
    [media] v4l2-ctrls.h: fully document the header file
    [media] doc-rst: Fix some typedef ugly warnings
    [media] doc-rst: reorganize the kAPI v4l2 chapters
    [media] rename v4l2-framework.rst to v4l2-intro.rst
    [media] move V4L2 clocks to a separate .rst file
    [media] v4l2-fh.rst: add cross references and markups
    [media] v4l2-fh.rst: add fh contents from v4l2-framework.rst
    [media] v4l2-fh.h: add documentation for it
    [media] v4l2-event.rst: add cross-references and markups
    [media] v4l2-event.h: document all functions
    [media] v4l2-event.rst: add text from v4l2-framework.rst
    [media] v4l2-framework.rst: remove videobuf quick chapter
    [media] v4l2-dev: add cross-references and improve markup
    [media] doc-rst: move v4l2-dev doc to a separate file
    ...

    Linus Torvalds
     
  • Several build configurations had already disabled this warning because
    it generates a lot of false positives. But some had not, and it was
    still enabled for "allmodconfig" builds, for example.

    Looking at the warnings produced, every single one I looked at was a
    false positive, and the warnings are frequent enough (and big enough)
    that they can easily hide real problems that you don't notice in the
    noise generated by -Wmaybe-uninitialized.

    The warning is good in theory, but this is a classic case of a warning
    that causes more problems than the warning can solve.

    If gcc gets better at avoiding false positives, we may be able to
    re-enable this warning. But as is, we're better off without it, and I
    want to be able to see the *real* warnings.

    Signed-off-by: Linus Torvalds

    Linus Torvalds
     

27 Jul, 2016

8 commits

  • * topic/docs-next: (322 commits)
    [media] cx23885-cardlist.rst: add a new card
    [media] doc-rst: add some needed escape codes
    [media] doc-rst: kapi: use :c:func: instead of :cpp:func
    doc-rst: kernel-doc: fix a change introduced by mistake
    [media] v4l2-ioctl.h add debug info for struct v4l2_ioctl_ops
    [media] dvb_ringbuffer.h: some documentation improvements
    [media] v4l2-ctrls.h: fully document the header file
    [media] doc-rst: Fix some typedef ugly warnings
    [media] doc-rst: reorganize the kAPI v4l2 chapters
    [media] rename v4l2-framework.rst to v4l2-intro.rst
    [media] move V4L2 clocks to a separate .rst file
    [media] v4l2-fh.rst: add cross references and markups
    [media] v4l2-fh.rst: add fh contents from v4l2-framework.rst
    [media] v4l2-fh.h: add documentation for it
    [media] v4l2-event.rst: add cross-references and markups
    [media] v4l2-event.h: document all functions
    [media] v4l2-event.rst: add text from v4l2-framework.rst
    [media] v4l2-framework.rst: remove videobuf quick chapter
    [media] v4l2-dev: add cross-references and improve markup
    [media] doc-rst: move v4l2-dev doc to a separate file
    ...

    Mauro Carvalho Chehab
     
  • Merge updates from Andrew Morton:

    - a few misc bits

    - ocfs2

    - most(?) of MM

    * emailed patches from Andrew Morton : (125 commits)
    thp: fix comments of __pmd_trans_huge_lock()
    cgroup: remove unnecessary 0 check from css_from_id()
    cgroup: fix idr leak for the first cgroup root
    mm: memcontrol: fix documentation for compound parameter
    mm: memcontrol: remove BUG_ON in uncharge_list
    mm: fix build warnings in
    mm, thp: convert from optimistic swapin collapsing to conservative
    mm, thp: fix comment inconsistency for swapin readahead functions
    thp: update Documentation/{vm/transhuge,filesystems/proc}.txt
    shmem: split huge pages beyond i_size under memory pressure
    thp: introduce CONFIG_TRANSPARENT_HUGE_PAGECACHE
    khugepaged: add support of collapse for tmpfs/shmem pages
    shmem: make shmem_inode_info::lock irq-safe
    khugepaged: move up_read(mmap_sem) out of khugepaged_alloc_page()
    thp: extract khugepaged from mm/huge_memory.c
    shmem, thp: respect MADV_{NO,}HUGEPAGE for file mappings
    shmem: add huge pages support
    shmem: get_unmapped_area align huge page
    shmem: prepare huge= mount option and sysfs knob
    mm, rmap: account shmem thp pages
    ...

    Linus Torvalds
     
  • Pull power management updates from Rafael Wysocki:
    "Again, the majority of changes go into the cpufreq subsystem, but
    there are no big features this time. The cpufreq changes that stand
    out somewhat are the governor interface rework and improvements
    related to the handling of frequency tables. Apart from those, there
    are fixes and new device/CPU IDs in drivers, cleanups and an
    improvement of the new schedutil governor.

    Next, there are some changes in the hibernation core, including a fix
    for a nasty problem related to the MONITOR/MWAIT usage by CPU offline
    during resume from hibernation, a few core improvements related to
    memory management during resume, a couple of additional debug features
    and cleanups.

    Finally, we have some fixes and cleanups in the devfreq subsystem,
    generic power domains framework improvements related to system
    suspend/resume, support for some new chips in intel_idle and in the
    power capping RAPL driver, a new version of the AnalyzeSuspend utility
    and some assorted fixes and cleanups.

    Specifics:

    - Rework the cpufreq governor interface to make it more
    straightforward and modify the conservative governor to avoid using
    transition notifications (Rafael Wysocki).

    - Rework the handling of frequency tables by the cpufreq core to make
    it more efficient (Viresh Kumar).

    - Modify the schedutil governor to reduce the number of wakeups it
    causes to occur in cases when the CPU frequency doesn't need to be
    changed (Steve Muckle, Viresh Kumar).

    - Fix some minor issues and clean up code in the cpufreq core and
    governors (Rafael Wysocki, Viresh Kumar).

    - Add Intel Broxton support to the intel_pstate driver (Srinivas
    Pandruvada).

    - Fix problems related to the config TDP feature and to the validity
    of the MSR_HWP_INTERRUPT register in intel_pstate (Jan Kiszka,
    Srinivas Pandruvada).

    - Make intel_pstate update the cpu_frequency tracepoint even if the
    frequency doesn't change to avoid confusing powertop (Rafael
    Wysocki).

    - Clean up the usage of __init/__initdata in intel_pstate, mark some
    of its internal variables as __read_mostly and drop an unused
    structure element from it (Jisheng Zhang, Carsten Emde).

    - Clean up the usage of some duplicate MSR symbols in intel_pstate
    and turbostat (Srinivas Pandruvada).

    - Update/fix the powernv, s3c24xx and mvebu cpufreq drivers (Akshay
    Adiga, Viresh Kumar, Ben Dooks).

    - Fix a regression (introduced during the 4.5 cycle) in the
    pcc-cpufreq driver by reverting the problematic commit (Andreas
    Herrmann).

    - Add support for Intel Denverton to intel_idle, clean up Broxton
    support in it and make it explicitly non-modular (Jacob Pan, Jan
    Beulich, Paul Gortmaker).

    - Add support for Denverton and Ivy Bridge server to the Intel RAPL
    power capping driver and make it more careful about the handing of
    MSRs that may not be present (Jacob Pan, Xiaolong Wang).

    - Fix resume from hibernation on x86-64 by making the CPU offline
    during resume avoid using MONITOR/MWAIT in the "play dead" loop
    which may lead to an inadvertent "revival" of a "dead" CPU and a
    page fault leading to a kernel crash from it (Rafael Wysocki).

    - Make memory management during resume from hibernation more
    straightforward (Rafael Wysocki).

    - Add debug features that should help to detect problems related to
    hibernation and resume from it (Rafael Wysocki, Chen Yu).

    - Clean up hibernation core somewhat (Rafael Wysocki).

    - Prevent KASAN from instrumenting the hibernation core which leads
    to large numbers of false-positives from it (James Morse).

    - Prevent PM (hibernate and suspend) notifiers from being called
    during the cleanup phase if they have not been called during the
    corresponding preparation phase which is possible if one of the
    other notifiers returns an error at that time (Lianwei Wang).

    - Improve suspend-related debug printout in the tasks freezer and
    clean up suspend-related console handling (Roger Lu, Borislav
    Petkov).

    - Update the AnalyzeSuspend script in the kernel sources to version
    4.2 (Todd Brandt).

    - Modify the generic power domains framework to make it handle system
    suspend/resume better (Ulf Hansson).

    - Make the runtime PM framework avoid resuming devices synchronously
    when user space changes the runtime PM settings for them and
    improve its error reporting (Rafael Wysocki, Linus Walleij).

    - Fix error paths in devfreq drivers (exynos, exynos-ppmu,
    exynos-bus) and in the core, make some devfreq code explicitly
    non-modular and change some of it into tristate (Bartlomiej
    Zolnierkiewicz, Peter Chen, Paul Gortmaker).

    - Add DT support to the generic PM clocks management code and make it
    export some more symbols (Jon Hunter, Paul Gortmaker).

    - Make the PCI PM core code slightly more robust against possible
    driver errors (Andy Shevchenko).

    - Make it possible to change DESTDIR and PREFIX in turbostat (Andy
    Shevchenko)"

    * tag 'pm-4.8-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/rafael/linux-pm: (89 commits)
    Revert "cpufreq: pcc-cpufreq: update default value of cpuinfo_transition_latency"
    PM / hibernate: Introduce test_resume mode for hibernation
    cpufreq: export cpufreq_driver_resolve_freq()
    cpufreq: Disallow ->resolve_freq() for drivers providing ->target_index()
    PCI / PM: check all fields in pci_set_platform_pm()
    cpufreq: acpi-cpufreq: use cached frequency mapping when possible
    cpufreq: schedutil: map raw required frequency to driver frequency
    cpufreq: add cpufreq_driver_resolve_freq()
    cpufreq: intel_pstate: Check cpuid for MSR_HWP_INTERRUPT
    intel_pstate: Update cpu_frequency tracepoint every time
    cpufreq: intel_pstate: clean remnant struct element
    PM / tools: scripts: AnalyzeSuspend v4.2
    x86 / hibernate: Use hlt_play_dead() when resuming from hibernation
    cpufreq: powernv: Replacing pstate_id with frequency table index
    intel_pstate: Fix MSR_CONFIG_TDP_x addressing in core_get_max_pstate()
    PM / hibernate: Image data protection during restoration
    PM / hibernate: Add missing braces in __register_nosave_region()
    PM / hibernate: Clean up comments in snapshot.c
    PM / hibernate: Clean up function headers in snapshot.c
    PM / hibernate: Add missing braces in hibernate_setup()
    ...

    Linus Torvalds
     
  • - Add a proper comment to page->_mapcount.

    - Introduce a macro for generating helper functions.

    - Place all special page->_mapcount values next to each other so that
    readers can see all possible values and so we don't get duplicates.

    Link: http://lkml.kernel.org/r/502f49000e0b63e6c62e338fac6b420bf34fb526.1464079537.git.vdavydov@virtuozzo.com
    Signed-off-by: Vladimir Davydov
    Cc: Johannes Weiner
    Cc: Michal Hocko
    Cc: Eric Dumazet
    Cc: Minchan Kim
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Vladimir Davydov
     
  • Python divisions are integer divisions unless at least one parameter is
    a float. The current bloat-o-meter fails to print sub-percentage
    changes:

    Total: Before=10515408, After=10604060, chg 0.000000%

    Force float division by using one float and pretty the print to two
    significant decimals:

    Total: Before=10515408, After=10604060, chg +0.84%

    Link: http://lkml.kernel.org/r/1465980311-23814-1-git-send-email-riku.voipio@linaro.org
    Signed-off-by: Riku Voipio
    Reviewed-by: Josh Triplett
    Cc: Vineet Gupta
    Cc: Michal Marek
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Riku Voipio
     
  • When calling `make deb-pkg` on a system with no codename (for example
    Arch Linux), lsb_release sometimes outputs `n/a` as the codename.

    This breaks dpkg-parsechangelog, which can't process the changelog
    correctly.

    Signed-off-by: Marcin Mielniczuk
    Signed-off-by: Michal Marek

    Marcin Mielniczuk
     
  • Builddep is not very explicit about file permissions. Actually the file
    permissions in the package are largely influenced by the umask of the
    user cloning the git and building the package. If that umask does not
    set go+r the resulting linux-headers package will prevent non-root users
    from building out-of-tree modules. And that is probably just one
    unexpected effect.
    Being a packaging/install tool builddep should make sure the file
    permissions are set correctly and not just derived from a value that is
    never checked.

    This patch sets ugo read permissions for all packaged files and derives
    the executable bit for directories and executables from the file-owner.

    Signed-off-by: Henning Schild
    Signed-off-by: Michal Marek

    Henning Schild
     
  • Pull documentation updates from Jonathan Corbet:
    "Some big changes this month, headlined by the addition of a new
    formatted documentation mechanism based on the Sphinx system.

    The objectives here are to make it easier to create better-integrated
    (and more attractive) documents while (eventually) dumping our
    one-of-a-kind, cobbled-together system for something that is widely
    used and maintained by others. There's a fair amount of information
    what's being done, why, and how to use it in:

    https://lwn.net/Articles/692704/
    https://lwn.net/Articles/692705/

    Closer to home, Documentation/kernel-documentation.rst describes how
    it works.

    For now, the new system exists alongside the old one; you should soon
    see the GPU documentation converted over in the DRM pull and some
    significant media conversion work as well. Once all the docs have
    been moved over and we're convinced that the rough edges (of which are
    are a few) have been smoothed over, the DocBook-based stuff should go
    away.

    Primary credit is to Jani Nikula for doing the heavy lifting to make
    this stuff actually work; there has also been notable effort from
    Markus Heiser, Daniel Vetter, and Mauro Carvalho Chehab.

    Expect a couple of conflicts on the new index.rst file over the course
    of the merge window; they are trivially resolvable. That file may be
    a bit of a conflict magnet in the short term, but I don't expect that
    situation to last for any real length of time.

    Beyond that, of course, we have the usual collection of tweaks,
    updates, and typo fixes"

    * tag 'docs-for-linus' of git://git.lwn.net/linux: (77 commits)
    doc-rst: kernel-doc: fix handling of address_space tags
    Revert "doc/sphinx: Enable keep_warnings"
    doc-rst: kernel-doc directive, fix state machine reporter
    docs: deprecate kernel-doc-nano-HOWTO.txt
    doc/sphinx: Enable keep_warnings
    Documentation: add watermark_scale_factor to the list of vm systcl file
    kernel-doc: Fix up warning output
    docs: Get rid of some kernel-documentation warnings
    doc-rst: add an option to ignore DocBooks when generating docs
    workqueue: Fix a typo in workqueue.txt
    Doc: ocfs: Fix typo in filesystems/ocfs2-online-filecheck.txt
    Documentation/sphinx: skip build if user requested specific DOCBOOKS
    Documentation: add cleanmediadocs to the documentation targets
    Add .pyc files to .gitignore
    Doc: PM: Fix a typo in intel_powerclamp.txt
    doc-rst: flat-table directive - initial implementation
    Documentation: add meta-documentation for Sphinx and kernel-doc
    Documentation: tiny typo fix in usb/gadget_multi.txt
    Documentation: fix wrong value in md.txt
    bcache: documentation formatting, edited for clarity, stripe alignment notes
    ...

    Linus Torvalds
     

26 Jul, 2016

1 commit


25 Jul, 2016

2 commits

  • * pm-sleep:
    PM / hibernate: Introduce test_resume mode for hibernation
    x86 / hibernate: Use hlt_play_dead() when resuming from hibernation
    PM / hibernate: Image data protection during restoration
    PM / hibernate: Add missing braces in __register_nosave_region()
    PM / hibernate: Clean up comments in snapshot.c
    PM / hibernate: Clean up function headers in snapshot.c
    PM / hibernate: Add missing braces in hibernate_setup()
    PM / hibernate: Recycle safe pages after image restoration
    PM / hibernate: Simplify mark_unsafe_pages()
    PM / hibernate: Do not free preallocated safe pages during image restore
    PM / suspend: show workqueue state in suspend flow
    PM / sleep: make PM notifiers called symmetrically
    PM / sleep: Make pm_prepare_console() return void
    PM / Hibernate: Don't let kasan instrument snapshot.c

    * pm-tools:
    PM / tools: scripts: AnalyzeSuspend v4.2
    tools/turbostat: allow user to alter DESTDIR and PREFIX

    Rafael J. Wysocki
     
  • Pull staging and IIO driver updates from Greg KH:
    "Here is the big Staging and IIO driver update for 4.8-rc1.

    We ended up adding more code than removing, again, but it's not all
    that bad. Lots of cleanups all over the staging tree, and new IIO
    drivers, full details in the shortlog.

    All of these have been in linux-next for a while with no reported
    issues"

    * tag 'staging-4.8-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/staging: (417 commits)
    drivers:iio:accel:mma8452: removed unwanted return statements
    drivers:iio:accel:mma8452: added cleanup provision in case of failure.
    iio: Add iio.git tree to MAINTAINERS
    iio:st_pressure: clean useless static channel initializers
    iio:st_pressure:lps22hb: temperature support
    iio:st_pressure:lps22hb: open drain support
    iio:st_pressure: temperature triggered buffering
    iio:st_pressure: document sampling gains
    iio:st_pressure: align storagebits on power of 2
    iio:st_sensors: align on storagebits boundaries
    staging:iio:lis3l02dq drop separate driver
    iio: accel: st_accel: Add lis3l02dq support
    iio: adc: add missing of_node references to iio_dev
    iio: adc: ti-ads1015: add indio_dev->dev.of_node reference
    iio: potentiometer: Fix typo in Kconfig
    iio: potentiometer: mcp4531: Add device tree binding
    iio: potentiometer: mcp4531: Add device tree binding documentation
    iio: potentiometer: mcp4531: Add support for MCP454x, MCP456x, MCP464x and MCP466x
    iio:imu:mpu6050: icm20608 initial support
    iio: adc: max1363: Add device tree binding
    ...

    Linus Torvalds
     

23 Jul, 2016

3 commits

  • changeset b7e67f6c1bf7 ("doc-rst: linux_tv: supress lots of warnings")
    were meant to touch only on media files, but it also touched
    at this script by mistake. Revert such change.

    Signed-off-by: Mauro Carvalho Chehab

    Mauro Carvalho Chehab
     
  • * patchwork: (1492 commits)
    [media] cec: always check all_device_types and features
    [media] cec: poll should check if there is room in the tx queue
    [media] vivid: support monitor all mode
    [media] cec: fix test for unconfigured adapter in main message loop
    [media] cec: limit the size of the transmit queue
    [media] cec: zero unused msg part after msg->len
    [media] cec: don't set fh to NULL in CEC_TRANSMIT
    [media] cec: clear all status fields before transmit and always fill in sequence
    [media] cec: CEC_RECEIVE overwrote the timeout field
    [media] cxd2841er: Reading SNR for DVB-C added
    [media] cxd2841er: Reading BER and UCB for DVB-C added
    [media] cxd2841er: fix switch-case for DVB-C
    [media] cxd2841er: fix signal strength scale for ISDB-T
    [media] cxd2841er: adjust the dB scale for DVB-C
    [media] cxd2841er: provide signal strength for DVB-C
    [media] cxd2841er: fix BER report via DVBv5 stats API
    [media] mb86a20s: apply mask to val after checking for read failure
    [media] airspy: fix error logic during device register
    [media] s5p-cec/TODO: add TODO item
    [media] cec/TODO: drop comment about sphinx documentation
    ...

    Signed-off-by: Mauro Carvalho Chehab

    Mauro Carvalho Chehab
     
  • * 'docs-next' of git://git.lwn.net/linux:
    doc-rst: kernel-doc: fix handling of address_space tags
    Revert "doc/sphinx: Enable keep_warnings"
    doc-rst: kernel-doc directive, fix state machine reporter
    docs: deprecate kernel-doc-nano-HOWTO.txt
    doc/sphinx: Enable keep_warnings
    Documentation: add watermark_scale_factor to the list of vm systcl file
    kernel-doc: Fix up warning output
    docs: Get rid of some kernel-documentation warnings

    Mauro Carvalho Chehab