[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] Re: [Xen-devel] [PATCH 2/2] IOMMU/spinlock: Make the pcidevs_lock a recursive one
On Tue, 2016-03-08 at 19:09 +0800, Quan Xu wrote: > Signed-off-by: Quan Xu <quan.xu@xxxxxxxxx> > CC: Keir Fraser <keir@xxxxxxx> > CC: Jan Beulich <jbeulich@xxxxxxxx> > CC: Andrew Cooper <andrew.cooper3@xxxxxxxxxx> > CC: Suravee Suthikulpanit <suravee.suthikulpanit@xxxxxxx> > CC: Aravind Gopalakrishnan <Aravind.Gopalakrishnan@xxxxxxx> > CC: Feng Wu <feng.wu@xxxxxxxxx> > CC: Kevin Tian <kevin.tian@xxxxxxxxx> > CC: Dario Faggioli <dario.faggioli@xxxxxxxxxx> > I've gone through the code, and it looks fine. However, when trying to apply the patch, on top of this morning's staging, I got this: [dario@Solace xen.git] $ patch -p1 < \[PATCH_2_2\]_IOMMU_spinlock\:_Make_the_pcidevs_lock_a_recursive_one.mbox patching file xen/arch/x86/domctl.c Hunk #1 succeeded at 472 (offset 45 lines). Hunk #2 succeeded at 497 (offset 45 lines). patching file xen/arch/x86/hvm/vmsi.c Hunk #1 succeeded at 388 with fuzz 1. Hunk #2 succeeded at 446 with fuzz 1 (offset 3 lines). patching file xen/arch/x86/irq.c Hunk #1 succeeded at 1960 (offset 5 lines). Hunk #2 succeeded at 2105 (offset 5 lines). Hunk #3 succeeded at 2231 (offset 5 lines). Hunk #4 succeeded at 2239 (offset 5 lines). patching file xen/arch/x86/msi.c patching file xen/arch/x86/pci.c Hunk #1 succeeded at 88 (offset 6 lines). patching file xen/arch/x86/physdev.c patching file xen/common/sysctl.c patching file xen/drivers/passthrough/amd/iommu_init.c patching file xen/drivers/passthrough/amd/iommu_map.c patching file xen/drivers/passthrough/amd/pci_amd_iommu.c patching file xen/drivers/passthrough/pci.c Hunk #17 succeeded at 1226 with fuzz 1. Hunk #18 succeeded at 1262 (offset -6 lines). Hunk #19 succeeded at 1291 (offset -6 lines). Hunk #20 succeeded at 1340 (offset -6 lines). Hunk #21 succeeded at 1364 (offset -6 lines). Hunk #22 succeeded at 1401 (offset -6 lines). Hunk #23 succeeded at 1416 (offset -6 lines). Hunk #24 succeeded at 1471 (offset -6 lines). Hunk #25 succeeded at 1490 (offset -6 lines). Hunk #26 succeeded at 1625 (offset -6 lines). patching file xen/drivers/passthrough/vtd/iommu.c Hunk #1 succeeded at 1282 (offset -4 lines). Hunk #2 succeeded at 1424 (offset -4 lines). Hunk #3 succeeded at 1506 (offset -4 lines). Hunk #4 succeeded at 1816 (offset -4 lines). Hunk #5 succeeded at 1881 (offset -4 lines). Hunk #6 succeeded at 2109 (offset -4 lines). Hunk #7 succeeded at 2123 (offset -4 lines). patching file xen/drivers/video/vga.c patching file xen/include/xen/pci.h And, when building: gcc -O2 -fomit-frame-pointer -m64 -fno-strict-aliasing -std=gnu99 -Wall -Wstrict-prototypes -Wdeclaration-after-statement -Wno-unused-but-set-variable -Wno-unused-local-typedefs -DNDEBUG -I/home/SOURCES/xen/xen/xen.git/xen/include -I/home/SOURCES/xen/xen/xen.git/xen/include/asm-x86/mach-generic -I/home/SOURCES/xen/xen/xen.git/xen/include/asm-x86/mach-default '-D__OBJECT_LABEL__=drivers$passthrough$vtd$intremap.o' -msoft-float -fno-stack-protector -fno-exceptions -Wnested-externs -DHAVE_GAS_VMX -DHAVE_GAS_EPT -DHAVE_GAS_FSGSBASE -U__OBJECT_LABEL__ -DHAVE_GAS_QUOTED_SYM '-D__OBJECT_LABEL__=drivers/passthrough/vtd/intremap.o' -mno-red-zone -mno-sse -fpic -fno-asynchronous-unwind-tables -DGCC_HAS_VISIBILITY_ATTRIBUTE -nostdinc -fno-builtin -fno-common -Werror -Wredundant-decls -Wno-pointer-arith -pipe -g -D__XEN__ -include /home/SOURCES/xen/xen/xen.git/xen/include/xen/config.h '-D__OBJECT_FILE__="intremap.o"' -DPERF_COUNTERS -DPERF_ARRAYS -MMD -MF ./.intremap.o.d -c intremap.c -o intremap.o In file included from /home/SOURCES/xen/xen/xen.git/xen/include/xen/bitmap.h:6:0, from /home/SOURCES/xen/xen/xen.git/xen/include/xen/cpumask.h:78, from /home/SOURCES/xen/xen/xen.git/xen/include/xen/irq.h:4, from intremap.c:20: intremap.c: In function 'pi_update_irte': intremap.c:987:27: error: passing argument 1 of '_spin_is_locked' from incompatible pointer type [-Werror] ASSERT(spin_is_locked(&pcidevs_lock)); ^ /home/SOURCES/xen/xen/xen.git/xen/include/xen/lib.h:35:35: note: in definition of macro 'ASSERT' #define ASSERT(p) do { if ( 0 && (p) ) {} } while (0) ^ intremap.c:987:12: note: in expansion of macro 'spin_is_locked' ASSERT(spin_is_locked(&pcidevs_lock)); ^ In file included from /home/SOURCES/xen/xen/xen.git/xen/include/xen/rcupdate.h:35:0, from /home/SOURCES/xen/xen/xen.git/xen/include/xen/irq.h:5, from intremap.c:20: /home/SOURCES/xen/xen/xen.git/xen/include/xen/spinlock.h:163:5: note: expected 'struct spinlock_t *' but argument is of type 'void (*)(void)' int _spin_is_locked(spinlock_t *lock); So, I think a refresh is necessary. Regards, Dario -- <<This happens because I choose it to happen!>> (Raistlin Majere) ----------------------------------------------------------------- Dario Faggioli, Ph.D, http://about.me/dario.faggioli Senior Software Engineer, Citrix Systems R&D Ltd., Cambridge (UK) Attachment:
signature.asc _______________________________________________ Xen-devel mailing list Xen-devel@xxxxxxxxxxxxx http://lists.xen.org/xen-devel
|
Lists.xenproject.org is hosted with RackSpace, monitoring our |