Netdev List
 help / color / mirror / Atom feed
From: David Miller <davem@davemloft.net>
To: eric.dumazet@gmail.com
Cc: netdev@vger.kernel.org
Subject: Re: [PATCH v3 net] dccp/tcp: fix ireq->opt races
Date: Fri, 20 Oct 2017 07:18:31 +0100 (WEST)	[thread overview]
Message-ID: <20171020.071831.180922551241959965.davem@davemloft.net> (raw)
In-Reply-To: <20171020.070458.2242397039979446788.davem@davemloft.net>

From: David Miller <davem@davemloft.net>
Date: Fri, 20 Oct 2017 07:04:58 +0100 (WEST)

> Much better, applied and queued up for -stable.

I take that back.

Please build test your changes more thoroughly.

In file included from ./arch/x86/include/asm/atomic.h:7:0,
                 from ./include/linux/atomic.h:4,
                 from ./include/linux/rcupdate.h:38,
                 from net/ipv4/cipso_ipv4.c:40:
net/ipv4/cipso_ipv4.c: In function ‘cipso_v4_req_setattr’:
net/ipv4/cipso_ipv4.c:1954:22: error: ‘struct inet_request_sock’ has no member named ‘opt’
  opt = xchg(&req_inet->opt, opt);
                      ^
./arch/x86/include/asm/cmpxchg.h:43:24: note: in definition of macro ‘__xchg_op’
          __typeof__ (*(ptr)) __ret = (arg);   \
                        ^~~
net/ipv4/cipso_ipv4.c:1954:8: note: in expansion of macro ‘xchg’
  opt = xchg(&req_inet->opt, opt);
        ^~~~
./arch/x86/include/asm/cmpxchg.h:43:38: warning: initialization makes integer from pointer without a cast [-Wint-conversion]
          __typeof__ (*(ptr)) __ret = (arg);   \
                                      ^
./arch/x86/include/asm/cmpxchg.h:77:22: note: in expansion of macro ‘__xchg_op’
 #define xchg(ptr, v) __xchg_op((ptr), (v), xchg, "")
                      ^~~~~~~~~
net/ipv4/cipso_ipv4.c:1954:8: note: in expansion of macro ‘xchg’
  opt = xchg(&req_inet->opt, opt);
        ^~~~
net/ipv4/cipso_ipv4.c:1954:22: error: ‘struct inet_request_sock’ has no member named ‘opt’
  opt = xchg(&req_inet->opt, opt);
                      ^
./arch/x86/include/asm/cmpxchg.h:44:20: note: in definition of macro ‘__xchg_op’
   switch (sizeof(*(ptr))) {    \
                    ^~~
net/ipv4/cipso_ipv4.c:1954:8: note: in expansion of macro ‘xchg’
  opt = xchg(&req_inet->opt, opt);
        ^~~~
net/ipv4/cipso_ipv4.c:1954:22: error: ‘struct inet_request_sock’ has no member named ‘opt’
  opt = xchg(&req_inet->opt, opt);
                      ^
./arch/x86/include/asm/cmpxchg.h:47:35: note: in definition of macro ‘__xchg_op’
           : "+q" (__ret), "+m" (*(ptr)) \
                                   ^~~
net/ipv4/cipso_ipv4.c:1954:8: note: in expansion of macro ‘xchg’
  opt = xchg(&req_inet->opt, opt);
        ^~~~
net/ipv4/cipso_ipv4.c:1954:22: error: ‘struct inet_request_sock’ has no member named ‘opt’
  opt = xchg(&req_inet->opt, opt);
                      ^
./arch/x86/include/asm/cmpxchg.h:52:35: note: in definition of macro ‘__xchg_op’
           : "+r" (__ret), "+m" (*(ptr)) \
                                   ^~~
net/ipv4/cipso_ipv4.c:1954:8: note: in expansion of macro ‘xchg’
  opt = xchg(&req_inet->opt, opt);
        ^~~~
net/ipv4/cipso_ipv4.c:1954:22: error: ‘struct inet_request_sock’ has no member named ‘opt’
  opt = xchg(&req_inet->opt, opt);
                      ^
./arch/x86/include/asm/cmpxchg.h:57:35: note: in definition of macro ‘__xchg_op’
           : "+r" (__ret), "+m" (*(ptr)) \
                                   ^~~
net/ipv4/cipso_ipv4.c:1954:8: note: in expansion of macro ‘xchg’
  opt = xchg(&req_inet->opt, opt);
        ^~~~
net/ipv4/cipso_ipv4.c:1954:22: error: ‘struct inet_request_sock’ has no member named ‘opt’
  opt = xchg(&req_inet->opt, opt);
                      ^
./arch/x86/include/asm/cmpxchg.h:62:35: note: in definition of macro ‘__xchg_op’
           : "+r" (__ret), "+m" (*(ptr)) \
                                   ^~~
net/ipv4/cipso_ipv4.c:1954:8: note: in expansion of macro ‘xchg’
  opt = xchg(&req_inet->opt, opt);
        ^~~~
net/ipv4/cipso_ipv4.c:1954:6: warning: assignment makes pointer from integer without a cast [-Wint-conversion]
  opt = xchg(&req_inet->opt, opt);
      ^
net/ipv4/cipso_ipv4.c: In function ‘cipso_v4_req_delattr’:
net/ipv4/cipso_ipv4.c:2073:16: error: ‘struct inet_request_sock’ has no member named ‘opt’
  opt = req_inet->opt;
                ^~
net/ipv4/cipso_ipv4.c:2077:27: error: ‘struct inet_request_sock’ has no member named ‘opt’
  cipso_v4_delopt(&req_inet->opt);
                           ^~
scripts/Makefile.build:313: recipe for target 'net/ipv4/cipso_ipv4.o' failed
make[2]: *** [net/ipv4/cipso_ipv4.o] Error 1
make[2]: *** Waiting for unfinished jobs....
scripts/Makefile.build:572: recipe for target 'net/ipv4' failed
make[1]: *** [net/ipv4] Error 2
Makefile:1019: recipe for target 'net' failed
make: *** [net] Error 2

  reply	other threads:[~2017-10-20  6:18 UTC|newest]

Thread overview: 9+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2017-10-19 22:24 [PATCH v3 net] dccp/tcp: fix ireq->opt races Eric Dumazet
2017-10-20  6:04 ` David Miller
2017-10-20  6:18   ` David Miller [this message]
2017-10-20 15:58     ` Eric Dumazet
2017-10-20 16:04 ` [PATCH v4 net] tcp/dccp: " Eric Dumazet
2017-10-21  1:18   ` David Miller
2017-10-20 21:26 ` [PATCH v3 net] dccp/tcp: " kbuild test robot
2017-10-20 21:39   ` Eric Dumazet
2017-10-21  0:36 ` kbuild test robot

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20171020.071831.180922551241959965.davem@davemloft.net \
    --to=davem@davemloft.net \
    --cc=eric.dumazet@gmail.com \
    --cc=netdev@vger.kernel.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox