svn commit: r333860 - head/sys/kern

Gleb Smirnoff glebius at FreeBSD.org
Thu May 24 04:42:55 UTC 2018


Let me repeat again. The warning is a false positive, and thus assignment
isn't useful. I'm not worried about a single instruction, more about
polluting the code.

If the warning was escalated to build error, and we did carry about
building with gcc8, in this case the assignment should be added with
a comment /* pacify gcc */.

On Wed, May 23, 2018 at 03:59:33PM -0700, Matthew Macy wrote:
M> On Wed, May 23, 2018 at 3:57 PM, Gleb Smirnoff <glebius at freebsd.org> wrote:
M> > The initialization isn't useful.
M> 
M> It silences a gcc warning. So yes it is. It's this exchange which is not useful.
M> 
M> -M
M> 
M> 
M> > On Wed, May 23, 2018 at 03:52:42PM -0700, Matthew Macy wrote:
M> > M> Talk to the gcc devs. The warning is useful even if there are false positives.
M> > M>
M> > M> On Wed, May 23, 2018 at 3:27 PM, Gleb Smirnoff <glebius at freebsd.org> wrote:
M> > M> >   Hi,
M> > M> >
M> > M> > On Sat, May 19, 2018 at 05:10:52AM +0000, Matt Macy wrote:
M> > M> > M> Author: mmacy
M> > M> > M> Date: Sat May 19 05:10:51 2018
M> > M> > M> New Revision: 333860
M> > M> > M> URL: https://svnweb.freebsd.org/changeset/base/333860
M> > M> > M>
M> > M> > M> Log:
M> > M> > M>   sendfile: annotate unused value and ensure that npages is actually initialized
M> > M> > M>
M> > M> > M> Modified:
M> > M> > M>   head/sys/kern/kern_sendfile.c
M> > M> > M>
M> > M> > M> Modified: head/sys/kern/kern_sendfile.c
M> > M> > M> ==============================================================================
M> > M> > M> --- head/sys/kern/kern_sendfile.c    Sat May 19 05:09:10 2018        (r333859)
M> > M> > M> +++ head/sys/kern/kern_sendfile.c    Sat May 19 05:10:51 2018        (r333860)
M> > M> > M> @@ -341,7 +341,7 @@ sendfile_swapin(vm_object_t obj, struct sf_io *sfio, o
M> > M> > M>      }
M> > M> > M>
M> > M> > M>      for (int i = 0; i < npages;) {
M> > M> > M> -            int j, a, count, rv;
M> > M> > M> +            int j, a, count, rv __unused;
M> > M> > M>
M> > M> > M>              /* Skip valid pages. */
M> > M> > M>              if (vm_page_is_valid(pa[i], vmoff(i, off) & PAGE_MASK,
M> > M> > M> @@ -688,6 +688,7 @@ retry_space:
M> > M> > M>                      if (space == 0) {
M> > M> > M>                              sfio = NULL;
M> > M> > M>                              nios = 0;
M> > M> > M> +                            npages = 0;
M> > M> > M>                              goto prepend_header;
M> > M> > M>                      }
M> > M> > M>                      hdr_uio = NULL;
M> > M> >
M> > M> > This initialization is redundant and a compiler warning if exists is wrong.
M> > M> >
M> > M> > If we jump down to prepend_header with nios == 0, we won't ever use npages.
M> > M> >
M> > M> > --
M> > M> > Gleb Smirnoff
M> >
M> > --
M> > Gleb Smirnoff

-- 
Gleb Smirnoff


More information about the svn-src-head mailing list