Hi Paolo,

Thank you for the patch! Yet something to improve:

[auto build test ERROR on net-next/master]

url:    
https://github.com/0day-ci/linux/commits/Paolo-Abeni/net-caif-avoid-using-qdisc_qlen/20190409-164620
config: i386-randconfig-b0-04091710 (attached as .config)
compiler: gcc-4.9 (Debian 4.9.4-2) 4.9.4
reproduce:
        # save the attached .config to linux build tree
        make ARCH=i386 

All errors (new ones prefixed by >>):

   In file included from include/linux/filter.h:24:0,
                    from include/net/sock.h:64,
                    from include/net/cls_cgroup.h:19,
                    from net/socket.c:99:
   include/net/sch_generic.h: In function 'qdisc_all_tx_empty':
   include/net/sch_generic.h:748:3: error: implicit declaration of function 
'qdisc_is_empty' [-Werror=implicit-function-declaration]
      if (!qdisc_is_empty(q)) {
      ^
   include/net/sch_generic.h: At top level:
   include/net/sch_generic.h:823:20: error: conflicting types for 
'qdisc_is_empty'
    static inline bool qdisc_is_empty(const struct Qdisc *qdisc)
                       ^
   include/net/sch_generic.h:748:8: note: previous implicit declaration of 
'qdisc_is_empty' was here
      if (!qdisc_is_empty(q)) {
           ^
   include/net/sch_generic.h: In function 'qdisc_dequeue_peeked':
>> include/net/sch_generic.h:1149:4: error: implicit declaration of function 
>> 'qdisc_qstats_atomic_qlen_dec' [-Werror=implicit-function-declaration]
       qdisc_qstats_atomic_qlen_dec(sch);
       ^
   cc1: some warnings being treated as errors
--
   In file included from include/linux/filter.h:24:0,
                    from include/net/sock.h:64,
                    from net//tipc/socket.h:38,
                    from net//tipc/trace.h:45,
                    from net//tipc/trace.c:37:
   include/net/sch_generic.h: In function 'qdisc_all_tx_empty':
   include/net/sch_generic.h:748:3: error: implicit declaration of function 
'qdisc_is_empty' [-Werror=implicit-function-declaration]
      if (!qdisc_is_empty(q)) {
      ^
   include/net/sch_generic.h: At top level:
   include/net/sch_generic.h:823:20: error: conflicting types for 
'qdisc_is_empty'
    static inline bool qdisc_is_empty(const struct Qdisc *qdisc)
                       ^
   include/net/sch_generic.h:748:8: note: previous implicit declaration of 
'qdisc_is_empty' was here
      if (!qdisc_is_empty(q)) {
           ^
   include/net/sch_generic.h: In function 'qdisc_dequeue_peeked':
>> include/net/sch_generic.h:1149:4: error: implicit declaration of function 
>> 'qdisc_qstats_atomic_qlen_dec' [-Werror=implicit-function-declaration]
       qdisc_qstats_atomic_qlen_dec(sch);
       ^
   In file included from net//tipc/trace.h:431:0,
                    from net//tipc/trace.c:37:
   include/trace/define_trace.h: At top level:
   include/trace/define_trace.h:89:43: fatal error: ./trace.h: No such file or 
directory
    #include TRACE_INCLUDE(TRACE_INCLUDE_FILE)
                                              ^
   cc1: some warnings being treated as errors
   compilation terminated.

vim +/qdisc_qstats_atomic_qlen_dec +1149 include/net/sch_generic.h

fa70e3d2 Paolo Abeni     2019-04-08  1139  
77be155c Jarek Poplawski 2008-10-31  1140  /* use instead of qdisc->dequeue() 
for all qdiscs queried with ->peek() */
77be155c Jarek Poplawski 2008-10-31  1141  static inline struct sk_buff 
*qdisc_dequeue_peeked(struct Qdisc *sch)
77be155c Jarek Poplawski 2008-10-31  1142  {
a53851e2 John Fastabend  2017-12-07  1143       struct sk_buff *skb = 
skb_peek(&sch->gso_skb);
77be155c Jarek Poplawski 2008-10-31  1144  
61c9eaf9 Jarek Poplawski 2008-11-05  1145       if (skb) {
a53851e2 John Fastabend  2017-12-07  1146               skb = 
__skb_dequeue(&sch->gso_skb);
9cda4ff7 Paolo Abeni     2019-04-08  1147               if 
(qdisc_is_percpu_stats(sch)) {
9cda4ff7 Paolo Abeni     2019-04-08  1148                       
qdisc_qstats_cpu_backlog_dec(sch, skb);
9cda4ff7 Paolo Abeni     2019-04-08 @1149                       
qdisc_qstats_atomic_qlen_dec(sch);
9cda4ff7 Paolo Abeni     2019-04-08  1150               } else {
a27758ff WANG Cong       2016-06-03  1151                       
qdisc_qstats_backlog_dec(sch, skb);
61c9eaf9 Jarek Poplawski 2008-11-05  1152                       sch->q.qlen--;
9cda4ff7 Paolo Abeni     2019-04-08  1153               }
61c9eaf9 Jarek Poplawski 2008-11-05  1154       } else {
77be155c Jarek Poplawski 2008-10-31  1155               skb = sch->dequeue(sch);
61c9eaf9 Jarek Poplawski 2008-11-05  1156       }
77be155c Jarek Poplawski 2008-10-31  1157  
77be155c Jarek Poplawski 2008-10-31  1158       return skb;
77be155c Jarek Poplawski 2008-10-31  1159  }
77be155c Jarek Poplawski 2008-10-31  1160  

:::::: The code at line 1149 was first introduced by commit
:::::: 9cda4ff7ed51bb469cb19e03c9fe4972408edb63 net: sched: always do stats 
accounting according to TCQ_F_CPUSTATS

:::::: TO: Paolo Abeni <pab...@redhat.com>
:::::: CC: 0day robot <l...@intel.com>

---
0-DAY kernel test infrastructure                Open Source Technology Center
https://lists.01.org/pipermail/kbuild-all                   Intel Corporation

Attachment: .config.gz
Description: application/gzip

Reply via email to