1. 25 Oct, 2016 1 commit
  2. 28 Sep, 2016 1 commit
  3. 19 Sep, 2016 2 commits
  4. 01 Sep, 2016 1 commit
  5. 26 Aug, 2016 1 commit
  6. 16 Aug, 2016 1 commit
  7. 10 Aug, 2016 1 commit
  8. 08 Aug, 2016 5 commits
  9. 02 Aug, 2016 10 commits
  10. 27 Jul, 2016 1 commit
    • Linus Torvalds's avatar
      Disable "maybe-uninitialized" warning globally · 6e8d666e
      Linus Torvalds authored
      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: default avatarLinus Torvalds <torvalds@linux-foundation.org>
      6e8d666e
  11. 26 Jul, 2016 4 commits
  12. 23 Jul, 2016 1 commit
  13. 22 Jul, 2016 11 commits
    • Mauro Carvalho Chehab's avatar
      doc-rst: kernel-doc: fix handling of address_space tags · a88b1672
      Mauro Carvalho Chehab authored
      The RST cpp:function handler is very pedantic: it doesn't allow any
      macros like __user on it:
      
      	Documentation/media/kapi/dtv-core.rst:28: WARNING: Error when parsing function declaration.
      	If the function has no return type:
      	  Error in declarator or parameters and qualifiers
      	  Invalid definition: Expecting "(" in parameters_and_qualifiers. [error at 8]
      	    ssize_t dvb_ringbuffer_pkt_read_user (struct dvb_ringbuffer * rbuf, size_t idx, int offset, u8 __user * buf, size_t len)
      	    --------^
      	If the function has a return type:
      	  Error in declarator or parameters and qualifiers
      	  If pointer to member declarator:
      	    Invalid definition: Expected '::' in pointer to member (function). [error at 37]
      	      ssize_t dvb_ringbuffer_pkt_read_user (struct dvb_ringbuffer * rbuf, size_t idx, int offset, u8 __user * buf, size_t len)
      	      -------------------------------------^
      	  If declarator-id:
      	    Invalid definition: Expecting "," or ")" in parameters_and_qualifiers, got "*". [error at 102]
      	      ssize_t dvb_ringbuffer_pkt_read_user (struct dvb_ringbuffer * rbuf, size_t idx, int offset, u8 __user * buf, size_t len)
      	      ------------------------------------------------------------------------------------------------------^
      
      So, we have to remove it from the function prototype.
      Signed-off-by: default avatarMauro Carvalho Chehab <mchehab@s-opensource.com>
      Signed-off-by: default avatarJonathan Corbet <corbet@lwn.net>
      a88b1672
    • Gaurav Minocha's avatar
      scripts/dtc: dt_to_config - kernel config options for a devicetree · ca0cd118
      Gaurav Minocha authored
      Determining which kernel config options need to be enabled for a
      given devicetree can be a painful process.  Create a new tool to
      find the drivers that may match a devicetree node compatible,
      find the kernel config options that enable the driver, and
      optionally report whether the kernel config option is enabled.
      Signed-off-by: default avatarGaurav Minocha <gaurav.minocha.os@gmail.com>
      Signed-off-by: default avatarFrank Rowand <frank.rowand@am.sony.com>
      Signed-off-by: default avatarRob Herring <robh@kernel.org>
      ca0cd118
    • Tautschnig, Michael's avatar
      scripts: Fix size mismatch of kexec_purgatory_size · 21532b9e
      Tautschnig, Michael authored
      bin2c is used to create a valid C file out of a binary file where two
      symbols will be globally defined: <name> and <name>_size. <name> is
      passed as the first parameter of the host binary.
      
      Building using goto-cc reported that the purgatory binary code (the only
      current user of this utility) declares kexec_purgatory_size as 'size_t'
      where bin2c generate <name>_size to be 'int' so in a 64-bit host where
      sizeof(size_t) > sizeof(int) this type mismatch will always yield the
      wrong value for big-endian architectures while for little-endian it will
      be wrong if the object laid in memory directly after
      kexec_purgatory_size contains non-zero value at the time of reading.
      
      This commit changes <name>_size to be size_t instead.
      
      Note:
      
      Another way to fix the problem is to change the type of
      kexec_purgatory_size to be 'int' as there's this check in code:
      (kexec_purgatory_size <= 0)
      Signed-off-by: default avatarMichael Tautschnig <tautschn@amazon.com>
      Cc: Vivek Goyal <vgoyal@redhat.com>
      Acked-by: default avatarDave Young <dyoung@redhat.com>
      Signed-off-by: default avatarMichal Marek <mmarek@suse.com>
      21532b9e
    • Luis R. Rodriguez's avatar
      scripts/coccinelle: require coccinelle >= 1.0.4 on device_node_continue.cocci · cc65e823
      Luis R. Rodriguez authored
      Make use of the new Requires: tag to be able to specify coccinelle binary
      version requirements. The cocci file device_node_continue.cocci requires at
      least coccinelle 1.0.4.
      Signed-off-by: default avatarLuis R. Rodriguez <mcgrof@kernel.org>
      Acked-by: default avatarJulia Lawall <julia.lawall@lip6.fr>
      Acked-by: default avatarNicolas Palix <nicolas.palix@imag.fr>
      Signed-off-by: default avatarMichal Marek <mmarek@suse.com>
      cc65e823
    • Luis R. Rodriguez's avatar
      coccicheck: refer to Documentation/coccinelle.txt and wiki · c100d537
      Luis R. Rodriguez authored
      Refer to the Documentation/coccinelle.txt and supplemental documentation
      on the wiki:
      
      https://bottest.wiki.kernel.org/coccicheck
      
      This page shall always refer to the linux-next iteration of scripts/coccicheck.
      
      v4: only refer to the wiki as supplemental documentation, and also
          update Documentation/coccinelle.txt.
      Signed-off-by: default avatarLuis R. Rodriguez <mcgrof@kernel.org>
      Acked-by: default avatarNicolas Palix <nicolas.palix@imag.fr>
      Signed-off-by: default avatarMichal Marek <mmarek@suse.com>
      c100d537
    • Luis R. Rodriguez's avatar
      coccicheck: add support for requring a coccinelle version · a9e064c0
      Luis R. Rodriguez authored
      Enable Coccinelle SmPL patches to require a specific version of
      Coccinelle. In the event that the version does not match we just
      inform the user, if the user asked to go through all SmPL patches
      we just inform them of the need for a new version of coccinelle for
      the SmPL patch and continue on with the rest.
      
      This uses the simple kernel scripts/ld-version.sh to create a weight
      on the version provided by spatch. The -dirty attribute is ignored if
      supplied, the benefit of scripts/ld-version.sh is it has a long history
      and well tested.
      
      While at it, document the // Options stuff as well.
      
      v4: Document // Options and // Requires as well on
          Documentation/coccinelle.txt.
      Signed-off-by: default avatarLuis R. Rodriguez <mcgrof@kernel.org>
      Acked-by: default avatarNicolas Palix <nicolas.palix@imag.fr>
      Signed-off-by: default avatarMichal Marek <mmarek@suse.com>
      a9e064c0
    • Luis R. Rodriguez's avatar
      coccicheck: replace --very-quiet with --quiet when debugging · 5c384dba
      Luis R. Rodriguez authored
      When debugging (using --profile or --show-trying) you want to
      avoid supressing output,  use --quiet instead. While at it, extend
      documentation for SPFLAGS use.
      
      For instance one can use:
      
      $ export COCCI=scripts/coccinelle/misc/irqf_oneshot.cocci
      $ make coccicheck DEBUG_FILE="poo.err" MODE=report SPFLAGS="--profile --show-trying" M=./drivers/mfd/arizona-irq.c
      
      Expand Documentation/coccinelle.txt as well.
      
      v4: expand Documentation/coccinelle.txt
      v3: rebased, resolve conflicts, expand Documentation/coccinelle.txt
      v2: use egrep instead of the *"=--option"* check, this doesn't work for
          disjunctions.
      Signed-off-by: default avatarLuis R. Rodriguez <mcgrof@kernel.org>
      Acked-by: default avatarJulia Lawall <julia.lawall@lip6.fr>
      Signed-off-by: default avatarMichal Marek <mmarek@suse.com>
      5c384dba
    • Luis R. Rodriguez's avatar
      coccicheck: add support for DEBUG_FILE · be1fa900
      Luis R. Rodriguez authored
      Enable to capture stderr via a DEBUG_FILE variable passed to
      coccicheck. You can now do:
      
      $ rm -f cocci.err
      $ export COCCI=scripts/coccinelle/free/kfree.cocci
      $ make coccicheck MODE=report DEBUG_FILE=cocci.err
      ...
      $ cat cocci.err
      
      This will be come more useful once we add support to
      use more things which would go into stderr, such as
      profiling. That will be done separately in another
      commit.
      
      Expand Documentation/coccinelle.txt with details.
      Signed-off-by: default avatarLuis R. Rodriguez <mcgrof@kernel.org>
      Acked-by: default avatarNicolas Palix <nicolas.palix@imag.fr>
      Signed-off-by: default avatarMichal Marek <mmarek@suse.com>
      be1fa900
    • Luis R. Rodriguez's avatar
      coccicheck: enable parmap support · c930a1b2
      Luis R. Rodriguez authored
      Coccinelle has had parmap support since 1.0.2, this means
      it supports --jobs, enabling built-in multithreaded functionality,
      instead of needing one to script it out. Just look for --jobs
      in the help output to determine if this is supported and use it
      only if your number of processors detected is > 1.
      
      If parmap is enabled also enable the load balancing to be dynamic, so
      that if a thread finishes early we keep feeding it.
      
      stderr is currently sent to /dev/null, addressing a way to capture
      that will be addressed next.
      
      If --jobs is not supported we fallback to the old mechanism.
      We expect to deprecate the old mechanism as soon as we can get
      confirmation all users are ready.
      
      While at it propagate back into the shell script any coccinelle error
      code. When used in serialized mode where all cocci files are run this
      also stops processing if an error has occured. This lets us handle some
      errors in coccinelle cocci files and if they bail out we should inspect
      the errors. This will be more useful later to help annotate coccinelle
      version dependency requirements. This will let you run only SmPL files
      that your system supports.
      
      Extend Documentation/coccinelle.txt as well.
      
      As a small example, prior to this change, on an 8-core system:
      
      Before:
      
      $ export COCCI=scripts/coccinelle/free/kfree.cocci
      $ time make coccicheck MODE=report
      ...
      
      real    29m14.912s
      user    103m1.796s
      sys     0m4.464s
      
      After:
      
      real    16m22.435s
      user    128m30.060s
      sys     0m2.712s
      
      v4:
      
      o expand Documentation/coccinelle.txt to reflect parmap support info
      o update commit log to reflect what we actually do now with stderr
      o split out DEBUG_FILE use into another patch
      o detect number of CPUs and if its 1 then skip parmap support,
        note that if you still support parmap, but have 1 CPU you will
        also go through the new branches, so the old complex multithreaded process
        is skipped as well.
      
      v3:
      
      o move USE_JOBS to avoid being overriden
      
      v2:
      
      o redirect coccinelle stderr to /dev/null by default and
        only if DEBUG_FILE is used do we pass it to a file
      o fix typo of paramap/parmap
      Signed-off-by: default avatarLuis R. Rodriguez <mcgrof@kernel.org>
      Acked-by: default avatarNicolas Palix <nicolas.palix@imag.fr>
      Signed-off-by: default avatarMichal Marek <mmarek@suse.com>
      c930a1b2
    • Luis R. Rodriguez's avatar
      coccicheck: make SPFLAGS more useful · 8e826ad5
      Luis R. Rodriguez authored
      SPFLAGS is set early, it means that any heuristics done on
      coccicheck cannot be overridden currently. Move SPFLAGS
      after OPTIONS and set this at the end. This lets you override
      any heuristics as coccinelle treats conflicts by only listening
      to the last option that makes sense.
      
      v3: this patch was added in the v3 series
      v4: Update Documentation/coccinelle.txt explaining how
          SPFLAGS works as well.
      Signed-off-by: default avatarLuis R. Rodriguez <mcgrof@kernel.org>
      Acked-by: default avatarNicolas Palix <nicolas.palix@imag.fr>
      Signed-off-by: default avatarMichal Marek <mmarek@suse.com>
      8e826ad5
    • Luis R. Rodriguez's avatar
      coccicheck: move spatch binary check up · 13d94865
      Luis R. Rodriguez authored
      This has no functional changes. This is being done
      to enable us to later use spatch binary for some
      flag checking for certain features early on.
      Signed-off-by: default avatarLuis R. Rodriguez <mcgrof@kernel.org>
      Acked-by: default avatarNicolas Palix <nicolas.palix@imag.fr>
      Signed-off-by: default avatarMichal Marek <mmarek@suse.com>
      13d94865