[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Message-ID: <201810231303.wGAsmMkZ%fengguang.wu@intel.com>
Date: Tue, 23 Oct 2018 13:15:10 +0800
From: kbuild test robot <lkp@...el.com>
To: Ariel Elior <Ariel.Elior@...ium.com>
Cc: kbuild-all@...org, davem@...emloft.net, netdev@...r.kernel.org,
Ariel Elior <Ariel.Elior@...ium.com>,
Michal Kalderon <Michal.Kalderon@...ium.com>,
Tomer Tayar <Tomer.Tayar@...ium.com>
Subject: Re: [PATCH net-next 1/6] qed: Add doorbell overflow recovery
mechanism
Hi Ariel,
I love your patch! Yet something to improve:
[auto build test ERROR on net-next/master]
url: https://github.com/0day-ci/linux/commits/Ariel-Elior/qed-Doorbell-overflow-recovery/20181022-212749
config: i386-allyesconfig (attached as .config)
compiler: gcc-7 (Debian 7.3.0-1) 7.3.0
reproduce:
# save the attached .config to linux build tree
make ARCH=i386
All errors (new ones prefixed by >>):
drivers/net/ethernet/qlogic/qed/qed_dev.c: In function 'qed_db_recovery_ring':
>> drivers/net/ethernet/qlogic/qed/qed_dev.c:342:4: error: implicit declaration of function 'writeq'; did you mean 'writel'? [-Werror=implicit-function-declaration]
DIRECT_REG_WR64(db_entry->db_addr,
^~~~~~
writel
cc1: some warnings being treated as errors
vim +342 drivers/net/ethernet/qlogic/qed/qed_dev.c
300
301 /* Ring the doorbell of a single doorbell recovery entry */
302 static void qed_db_recovery_ring(struct qed_hwfn *p_hwfn,
303 struct qed_db_recovery_entry *db_entry,
304 enum qed_db_rec_exec db_exec)
305 {
306 if (db_exec != DB_REC_ONCE) {
307 /* Print according to width */
308 if (db_entry->db_width == DB_REC_WIDTH_32B) {
309 DP_VERBOSE(p_hwfn, QED_MSG_SPQ,
310 "%s doorbell address %p data %x\n",
311 db_exec == DB_REC_DRY_RUN ?
312 "would have rung" : "ringing",
313 db_entry->db_addr,
314 *(u32 *)db_entry->db_data);
315 } else {
316 DP_VERBOSE(p_hwfn, QED_MSG_SPQ,
317 "%s doorbell address %p data %llx\n",
318 db_exec == DB_REC_DRY_RUN ?
319 "would have rung" : "ringing",
320 db_entry->db_addr,
321 *(u64 *)(db_entry->db_data));
322 }
323 }
324
325 /* Sanity */
326 if (!qed_db_rec_sanity(p_hwfn->cdev, db_entry->db_addr,
327 db_entry->db_data))
328 return;
329
330 /* Flush the write combined buffer. Since there are multiple doorbelling
331 * entities using the same address, if we don't flush, a transaction
332 * could be lost.
333 */
334 wmb();
335
336 /* Ring the doorbell */
337 if (db_exec == DB_REC_REAL_DEAL || db_exec == DB_REC_ONCE) {
338 if (db_entry->db_width == DB_REC_WIDTH_32B)
339 DIRECT_REG_WR(db_entry->db_addr,
340 *(u32 *)(db_entry->db_data));
341 else
> 342 DIRECT_REG_WR64(db_entry->db_addr,
343 *(u64 *)(db_entry->db_data));
344 }
345
346 /* Flush the write combined buffer. Next doorbell may come from a
347 * different entity to the same address...
348 */
349 wmb();
350 }
351
---
0-DAY kernel test infrastructure Open Source Technology Center
https://lists.01.org/pipermail/kbuild-all Intel Corporation
Download attachment ".config.gz" of type "application/gzip" (64635 bytes)
Powered by blists - more mailing lists