Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]
Groups > linux.kernel > #1586630 > unrolled thread
| Started by | Stephen Rothwell <sfr@canb.auug.org.au> |
|---|---|
| First post | 2017-02-23 04:20 +0100 |
| Last post | 2017-02-23 15:30 +0100 |
| Articles | 2 — 2 participants |
Back to article view | Back to linux.kernel
linux-next: build failure after merge of the scsi-mkp tree Stephen Rothwell <sfr@canb.auug.org.au> - 2017-02-23 04:20 +0100
Re: linux-next: build failure after merge of the scsi-mkp tree "Martin K. Petersen" <martin.petersen@oracle.com> - 2017-02-23 15:30 +0100
| From | Stephen Rothwell <sfr@canb.auug.org.au> |
|---|---|
| Date | 2017-02-23 04:20 +0100 |
| Subject | linux-next: build failure after merge of the scsi-mkp tree |
| Message-ID | <tdS6K-3AY-11@gated-at.bofh.it> |
Hi Martin,
After merging the scsi-mkp tree, today's linux-next build (x86_64
allmodconfig) failed like this:
drivers/scsi/qedf/qedf_io.c: In function 'qedf_trace_io':
drivers/scsi/qedf/qedf_io.c:1001:33: error: passing argument 1 of 'atomic_read' from incompatible pointer type [-Werror=incompatible-pointer-types]
io_log->refcount = atomic_read(&io_req->refcount.refcount);
^
In file included from arch/x86/include/asm/msr.h:66:0,
from arch/x86/include/asm/processor.h:20,
from arch/x86/include/asm/cpufeature.h:4,
from arch/x86/include/asm/thread_info.h:52,
from include/linux/thread_info.h:25,
from arch/x86/include/asm/preempt.h:6,
from include/linux/preempt.h:59,
from include/linux/spinlock.h:50,
from drivers/scsi/qedf/qedf_io.c:9:
arch/x86/include/asm/atomic.h:24:28: note: expected 'const atomic_t * {aka const struct <anonymous> *}' but argument is of type 'refcount_t * {aka struct refcount_struct *}'
static __always_inline int atomic_read(const atomic_t *v)
^
drivers/scsi/qedf/qedf_io.c: In function 'qedf_scsi_completion':
drivers/scsi/qedf/qedf_io.c:1343:27: error: passing argument 1 of 'atomic_read' from incompatible pointer type [-Werror=incompatible-pointer-types]
refcount = atomic_read(&io_req->refcount.refcount);
^
In file included from arch/x86/include/asm/msr.h:66:0,
from arch/x86/include/asm/processor.h:20,
from arch/x86/include/asm/cpufeature.h:4,
from arch/x86/include/asm/thread_info.h:52,
from include/linux/thread_info.h:25,
from arch/x86/include/asm/preempt.h:6,
from include/linux/preempt.h:59,
from include/linux/spinlock.h:50,
from drivers/scsi/qedf/qedf_io.c:9:
arch/x86/include/asm/atomic.h:24:28: note: expected 'const atomic_t * {aka const struct <anonymous> *}' but argument is of type 'refcount_t * {aka struct refcount_struct *}'
static __always_inline int atomic_read(const atomic_t *v)
^
drivers/scsi/qedf/qedf_io.c: In function 'qedf_scsi_done':
drivers/scsi/qedf/qedf_io.c:1428:25: error: passing argument 1 of 'atomic_read' from incompatible pointer type [-Werror=incompatible-pointer-types]
refcount = atomic_read(&io_req->refcount.refcount);
^
In file included from arch/x86/include/asm/msr.h:66:0,
from arch/x86/include/asm/processor.h:20,
from arch/x86/include/asm/cpufeature.h:4,
from arch/x86/include/asm/thread_info.h:52,
from include/linux/thread_info.h:25,
from arch/x86/include/asm/preempt.h:6,
from include/linux/preempt.h:59,
from include/linux/spinlock.h:50,
from drivers/scsi/qedf/qedf_io.c:9:
arch/x86/include/asm/atomic.h:24:28: note: expected 'const atomic_t * {aka const struct <anonymous> *}' but argument is of type 'refcount_t * {aka struct refcount_struct *}'
static __always_inline int atomic_read(const atomic_t *v)
^
In file included from drivers/scsi/qedf/qedf.h:28:0,
from drivers/scsi/qedf/qedf_io.c:11:
drivers/scsi/qedf/qedf_io.c: In function 'qedf_flush_els_req':
drivers/scsi/qedf/qedf_io.c:1559:18: error: passing argument 1 of 'atomic_read' from incompatible pointer type [-Werror=incompatible-pointer-types]
atomic_read(&els_req->refcount.refcount));
^
drivers/scsi/qedf/qedf_dbg.h:83:13: note: in definition of macro 'QEDF_INFO'
## __VA_ARGS__)
^
In file included from arch/x86/include/asm/msr.h:66:0,
from arch/x86/include/asm/processor.h:20,
from arch/x86/include/asm/cpufeature.h:4,
from arch/x86/include/asm/thread_info.h:52,
from include/linux/thread_info.h:25,
from arch/x86/include/asm/preempt.h:6,
from include/linux/preempt.h:59,
from include/linux/spinlock.h:50,
from drivers/scsi/qedf/qedf_io.c:9:
arch/x86/include/asm/atomic.h:24:28: note: expected 'const atomic_t * {aka const struct <anonymous> *}' but argument is of type 'refcount_t * {aka struct refcount_struct *}'
static __always_inline int atomic_read(const atomic_t *v)
^
drivers/scsi/qedf/qedf_els.c: In function 'qedf_rrq_compl':
drivers/scsi/qedf/qedf_els.c:186:25: error: passing argument 1 of 'atomic_read' from incompatible pointer type [-Werror=incompatible-pointer-types]
refcount = atomic_read(&orig_io_req->refcount.refcount);
^
In file included from arch/x86/include/asm/msr.h:66:0,
from arch/x86/include/asm/processor.h:20,
from arch/x86/include/asm/cpufeature.h:4,
from arch/x86/include/asm/thread_info.h:52,
from include/linux/thread_info.h:25,
from arch/x86/include/asm/preempt.h:6,
from include/linux/preempt.h:59,
from include/linux/spinlock.h:50,
from include/linux/mm_types.h:8,
from include/linux/kmemcheck.h:4,
from include/linux/skbuff.h:18,
from include/linux/if_ether.h:23,
from include/linux/etherdevice.h:25,
from include/scsi/libfcoe.h:24,
from drivers/scsi/qedf/qedf.h:12,
from drivers/scsi/qedf/qedf_els.c:9:
arch/x86/include/asm/atomic.h:24:28: note: expected 'const atomic_t * {aka const struct <anonymous> *}' but argument is of type 'refcount_t * {aka struct refcount_struct *}'
static __always_inline int atomic_read(const atomic_t *v)
^
drivers/scsi/qedf/qedf_els.c: In function 'qedf_srr_compl':
drivers/scsi/qedf/qedf_els.c:477:25: error: passing argument 1 of 'atomic_read' from incompatible pointer type [-Werror=incompatible-pointer-types]
refcount = atomic_read(&orig_io_req->refcount.refcount);
^
In file included from arch/x86/include/asm/msr.h:66:0,
from arch/x86/include/asm/processor.h:20,
from arch/x86/include/asm/cpufeature.h:4,
from arch/x86/include/asm/thread_info.h:52,
from include/linux/thread_info.h:25,
from arch/x86/include/asm/preempt.h:6,
from include/linux/preempt.h:59,
from include/linux/spinlock.h:50,
from include/linux/mm_types.h:8,
from include/linux/kmemcheck.h:4,
from include/linux/skbuff.h:18,
from include/linux/if_ether.h:23,
from include/linux/etherdevice.h:25,
from include/scsi/libfcoe.h:24,
from drivers/scsi/qedf/qedf.h:12,
from drivers/scsi/qedf/qedf_els.c:9:
arch/x86/include/asm/atomic.h:24:28: note: expected 'const atomic_t * {aka const struct <anonymous> *}' but argument is of type 'refcount_t * {aka struct refcount_struct *}'
static __always_inline int atomic_read(const atomic_t *v)
^
drivers/scsi/qedf/qedf_els.c: In function 'qedf_rec_compl':
drivers/scsi/qedf/qedf_els.c:761:25: error: passing argument 1 of 'atomic_read' from incompatible pointer type [-Werror=incompatible-pointer-types]
refcount = atomic_read(&orig_io_req->refcount.refcount);
^
In file included from arch/x86/include/asm/msr.h:66:0,
from arch/x86/include/asm/processor.h:20,
from arch/x86/include/asm/cpufeature.h:4,
from arch/x86/include/asm/thread_info.h:52,
from include/linux/thread_info.h:25,
from arch/x86/include/asm/preempt.h:6,
from include/linux/preempt.h:59,
from include/linux/spinlock.h:50,
from include/linux/mm_types.h:8,
from include/linux/kmemcheck.h:4,
from include/linux/skbuff.h:18,
from include/linux/if_ether.h:23,
from include/linux/etherdevice.h:25,
from include/scsi/libfcoe.h:24,
from drivers/scsi/qedf/qedf.h:12,
from drivers/scsi/qedf/qedf_els.c:9:
arch/x86/include/asm/atomic.h:24:28: note: expected 'const atomic_t * {aka const struct <anonymous> *}' but argument is of type 'refcount_t * {aka struct refcount_struct *}'
static __always_inline int atomic_read(const atomic_t *v)
^
Caused by commit
61d8658b4a43 ("scsi: qedf: Add QLogic FastLinQ offload FCoE driver framework")
being rebased on top of commit
10383aea2f44 ("kref: Implement 'struct kref' using refcount_t")
and not using kref_read() to access the refcounts.
I don't understand why you would rebase you work onto Linus' tree in
the middle of the merge window in any case. :-(
I have used the scsi-mkp tree from next-20170221 again.
--
Cheers,
Stephen Rothwell
[toc] | [next] | [standalone]
| From | "Martin K. Petersen" <martin.petersen@oracle.com> |
|---|---|
| Date | 2017-02-23 15:30 +0100 |
| Message-ID | <te2z8-2s9-17@gated-at.bofh.it> |
| In reply to | #1586630 |
>>>>> "Stephen" == Stephen Rothwell <sfr@canb.auug.org.au> writes:
Stephen,
Stephen> Caused by commit
Stephen> 61d8658b4a43 ("scsi: qedf: Add QLogic FastLinQ offload FCoE
Stephen> driver framework")
Stephen> being rebased on top of commit
Stephen> 10383aea2f44 ("kref: Implement 'struct kref' using
Stephen> refcount_t")
Stephen> and not using kref_read() to access the refcounts.
*sigh*
Chad: Please fix these up ASAP.
Stephen> I don't understand why you would rebase you work onto Linus'
Stephen> tree in the middle of the merge window in any case. :-(
I didn't rebase my existing patch queue. I started a new for-next based
on linus/master. Half of this new QLogic driver lives under net so I had
to wait for Linus to pull DaveM's tree before I could merge the SCSI
portion :(
We often have to do two-stage merge windows with SCSI because of
dependencies on changes in both block and net (the latter increasingly
so because of the popularity of converged adapters that do both networks
and storage).
--
Martin K. Petersen Oracle Linux Engineering
[toc] | [prev] | [standalone]
Back to top | Article view | linux.kernel
csiph-web