* linux-next: tip tree build failure
@ 2009-11-11 9:13 Stephen Rothwell
2009-11-11 15:03 ` FUJITA Tomonori
0 siblings, 1 reply; 4+ messages in thread
From: Stephen Rothwell @ 2009-11-11 9:13 UTC (permalink / raw)
To: Thomas Gleixner, Ingo Molnar, H. Peter Anvin, Peter Zijlstra
Cc: linux-next, linux-kernel, FUJITA Tomonori
[-- Attachment #1: Type: text/plain, Size: 565 bytes --]
Hi all,
Today's linux-next build (powerpc allyesconfig) failed like this:
lib/swiotlb.c: In function 'setup_io_tlb_npages':
lib/swiotlb.c:114: error: 'swiotlb' undeclared (first use in this function)
Caused by commit 75f1cdf1dda92cae037ec848ae63690d91913eac ("x86: Handle
HW IOMMU initialization failure gracefully") from the tip tree. It looks
like the "swiotlb" variable only exists in x86 and ia64.
I have reverted that commit for today.
--
Cheers,
Stephen Rothwell sfr@canb.auug.org.au
http://www.canb.auug.org.au/~sfr/
[-- Attachment #2: Type: application/pgp-signature, Size: 198 bytes --]
^ permalink raw reply [flat|nested] 4+ messages in thread* Re: linux-next: tip tree build failure 2009-11-11 9:13 linux-next: tip tree build failure Stephen Rothwell @ 2009-11-11 15:03 ` FUJITA Tomonori 2009-11-11 15:54 ` [tip:core/iommu] swiotlb: Remove the swiotlb variable usage tip-bot for FUJITA Tomonori 2009-11-11 21:39 ` linux-next: tip tree build failure Stephen Rothwell 0 siblings, 2 replies; 4+ messages in thread From: FUJITA Tomonori @ 2009-11-11 15:03 UTC (permalink / raw) To: sfr; +Cc: tglx, mingo, hpa, peterz, linux-next, linux-kernel, fujita.tomonori On Wed, 11 Nov 2009 20:13:02 +1100 Stephen Rothwell <sfr@canb.auug.org.au> wrote: > Hi all, > > Today's linux-next build (powerpc allyesconfig) failed like this: > > lib/swiotlb.c: In function 'setup_io_tlb_npages': > lib/swiotlb.c:114: error: 'swiotlb' undeclared (first use in this function) > > Caused by commit 75f1cdf1dda92cae037ec848ae63690d91913eac ("x86: Handle > HW IOMMU initialization failure gracefully") from the tip tree. It looks > like the "swiotlb" variable only exists in x86 and ia64. > > I have reverted that commit for today. Duh, sorry about it. I should have complied that patchset for POWERPC too. POWERPC has swiotlb but it doesn't expect it to be used (POWERPC can remove it). I think that the following patch works. I'll do more cleanup related with x86 IOMMU initialization soon (I'm at JFK to go back to Japan). = From: FUJITA Tomonori <fujita.tomonori@lab.ntt.co.jp> Subject: [PATCH] swiotlb: remove the swiotlb variable usage POWERPC doesn't expect it to be used. Signed-off-by: FUJITA Tomonori <fujita.tomonori@lab.ntt.co.jp> --- arch/x86/include/asm/swiotlb.h | 5 +++-- arch/x86/kernel/pci-dma.c | 5 +---- arch/x86/kernel/pci-swiotlb.c | 13 ++++++++++++- lib/swiotlb.c | 5 ++--- 4 files changed, 18 insertions(+), 10 deletions(-) diff --git a/arch/x86/include/asm/swiotlb.h b/arch/x86/include/asm/swiotlb.h index b9e4e20..940f13a 100644 --- a/arch/x86/include/asm/swiotlb.h +++ b/arch/x86/include/asm/swiotlb.h @@ -9,11 +9,12 @@ extern int swiotlb_force; #ifdef CONFIG_SWIOTLB extern int swiotlb; -extern void pci_swiotlb_init(void); +extern int pci_swiotlb_init(void); #else #define swiotlb 0 -static inline void pci_swiotlb_init(void) +static inline int pci_swiotlb_init(void) { + return 0; } #endif diff --git a/arch/x86/kernel/pci-dma.c b/arch/x86/kernel/pci-dma.c index f79870e..0b11bf1 100644 --- a/arch/x86/kernel/pci-dma.c +++ b/arch/x86/kernel/pci-dma.c @@ -125,16 +125,13 @@ static void __init dma32_free_bootmem(void) void __init pci_iommu_alloc(void) { - /* swiotlb is forced by the boot option */ - int use_swiotlb = swiotlb; #ifdef CONFIG_X86_64 /* free the range so iommu could get some range less than 4G */ dma32_free_bootmem(); #else dma_ops = &nommu_dma_ops; #endif - pci_swiotlb_init(); - if (use_swiotlb) + if (pci_swiotlb_init()) return; gart_iommu_hole_init(); diff --git a/arch/x86/kernel/pci-swiotlb.c b/arch/x86/kernel/pci-swiotlb.c index 17ce422..a6e5d0f 100644 --- a/arch/x86/kernel/pci-swiotlb.c +++ b/arch/x86/kernel/pci-swiotlb.c @@ -42,16 +42,27 @@ static struct dma_map_ops swiotlb_dma_ops = { .dma_supported = NULL, }; -void __init pci_swiotlb_init(void) +/* + * pci_swiotlb_init - initialize swiotlb if necessary + * + * This returns non-zero if we are forced to use swiotlb (by the boot + * option). + */ +int __init pci_swiotlb_init(void) { /* don't initialize swiotlb if iommu=off (no_iommu=1) */ #ifdef CONFIG_X86_64 if (!no_iommu && max_pfn > MAX_DMA32_PFN) swiotlb = 1; #endif + if (swiotlb_force) + swiotlb = 1; + if (swiotlb) { swiotlb_init(0); dma_ops = &swiotlb_dma_ops; } else dma_ops = &nommu_dma_ops; + + return swiotlb_force; } diff --git a/lib/swiotlb.c b/lib/swiotlb.c index e6755a0..795472d 100644 --- a/lib/swiotlb.c +++ b/lib/swiotlb.c @@ -109,10 +109,9 @@ setup_io_tlb_npages(char *str) } if (*str == ',') ++str; - if (!strcmp(str, "force")) { + if (!strcmp(str, "force")) swiotlb_force = 1; - swiotlb = 1; - } + return 1; } __setup("swiotlb=", setup_io_tlb_npages); -- 1.5.6.5 ^ permalink raw reply [flat|nested] 4+ messages in thread
* [tip:core/iommu] swiotlb: Remove the swiotlb variable usage 2009-11-11 15:03 ` FUJITA Tomonori @ 2009-11-11 15:54 ` tip-bot for FUJITA Tomonori 2009-11-11 21:39 ` linux-next: tip tree build failure Stephen Rothwell 1 sibling, 0 replies; 4+ messages in thread From: tip-bot for FUJITA Tomonori @ 2009-11-11 15:54 UTC (permalink / raw) To: linux-tip-commits Cc: linux-kernel, hpa, mingo, fujita.tomonori, sfr, tglx, mingo Commit-ID: b18485e7acfe1a634615d1c628ef644c0d58d472 Gitweb: http://git.kernel.org/tip/b18485e7acfe1a634615d1c628ef644c0d58d472 Author: FUJITA Tomonori <fujita.tomonori@lab.ntt.co.jp> AuthorDate: Thu, 12 Nov 2009 00:03:28 +0900 Committer: Ingo Molnar <mingo@elte.hu> CommitDate: Wed, 11 Nov 2009 16:51:18 +0100 swiotlb: Remove the swiotlb variable usage POWERPC doesn't expect it to be used. This fixes the linux-next build failure reported by Stephen Rothwell: lib/swiotlb.c: In function 'setup_io_tlb_npages': lib/swiotlb.c:114: error: 'swiotlb' undeclared (first use in this function) Reported-by: Stephen Rothwell <sfr@canb.auug.org.au> Signed-off-by: FUJITA Tomonori <fujita.tomonori@lab.ntt.co.jp> Cc: peterz@infradead.org LKML-Reference: <20091112000258F.fujita.tomonori@lab.ntt.co.jp> Signed-off-by: Ingo Molnar <mingo@elte.hu> --- arch/x86/include/asm/swiotlb.h | 5 +++-- arch/x86/kernel/pci-dma.c | 5 +---- arch/x86/kernel/pci-swiotlb.c | 13 ++++++++++++- lib/swiotlb.c | 5 ++--- 4 files changed, 18 insertions(+), 10 deletions(-) diff --git a/arch/x86/include/asm/swiotlb.h b/arch/x86/include/asm/swiotlb.h index b9e4e20..940f13a 100644 --- a/arch/x86/include/asm/swiotlb.h +++ b/arch/x86/include/asm/swiotlb.h @@ -9,11 +9,12 @@ extern int swiotlb_force; #ifdef CONFIG_SWIOTLB extern int swiotlb; -extern void pci_swiotlb_init(void); +extern int pci_swiotlb_init(void); #else #define swiotlb 0 -static inline void pci_swiotlb_init(void) +static inline int pci_swiotlb_init(void) { + return 0; } #endif diff --git a/arch/x86/kernel/pci-dma.c b/arch/x86/kernel/pci-dma.c index f79870e..0b11bf1 100644 --- a/arch/x86/kernel/pci-dma.c +++ b/arch/x86/kernel/pci-dma.c @@ -125,16 +125,13 @@ static void __init dma32_free_bootmem(void) void __init pci_iommu_alloc(void) { - /* swiotlb is forced by the boot option */ - int use_swiotlb = swiotlb; #ifdef CONFIG_X86_64 /* free the range so iommu could get some range less than 4G */ dma32_free_bootmem(); #else dma_ops = &nommu_dma_ops; #endif - pci_swiotlb_init(); - if (use_swiotlb) + if (pci_swiotlb_init()) return; gart_iommu_hole_init(); diff --git a/arch/x86/kernel/pci-swiotlb.c b/arch/x86/kernel/pci-swiotlb.c index 17ce422..a6e5d0f 100644 --- a/arch/x86/kernel/pci-swiotlb.c +++ b/arch/x86/kernel/pci-swiotlb.c @@ -42,16 +42,27 @@ static struct dma_map_ops swiotlb_dma_ops = { .dma_supported = NULL, }; -void __init pci_swiotlb_init(void) +/* + * pci_swiotlb_init - initialize swiotlb if necessary + * + * This returns non-zero if we are forced to use swiotlb (by the boot + * option). + */ +int __init pci_swiotlb_init(void) { /* don't initialize swiotlb if iommu=off (no_iommu=1) */ #ifdef CONFIG_X86_64 if (!no_iommu && max_pfn > MAX_DMA32_PFN) swiotlb = 1; #endif + if (swiotlb_force) + swiotlb = 1; + if (swiotlb) { swiotlb_init(0); dma_ops = &swiotlb_dma_ops; } else dma_ops = &nommu_dma_ops; + + return swiotlb_force; } diff --git a/lib/swiotlb.c b/lib/swiotlb.c index e6755a0..795472d 100644 --- a/lib/swiotlb.c +++ b/lib/swiotlb.c @@ -109,10 +109,9 @@ setup_io_tlb_npages(char *str) } if (*str == ',') ++str; - if (!strcmp(str, "force")) { + if (!strcmp(str, "force")) swiotlb_force = 1; - swiotlb = 1; - } + return 1; } __setup("swiotlb=", setup_io_tlb_npages); ^ permalink raw reply [flat|nested] 4+ messages in thread
* Re: linux-next: tip tree build failure 2009-11-11 15:03 ` FUJITA Tomonori 2009-11-11 15:54 ` [tip:core/iommu] swiotlb: Remove the swiotlb variable usage tip-bot for FUJITA Tomonori @ 2009-11-11 21:39 ` Stephen Rothwell 1 sibling, 0 replies; 4+ messages in thread From: Stephen Rothwell @ 2009-11-11 21:39 UTC (permalink / raw) To: FUJITA Tomonori; +Cc: tglx, mingo, hpa, peterz, linux-next, linux-kernel [-- Attachment #1: Type: text/plain, Size: 553 bytes --] Hi, On Thu, 12 Nov 2009 00:03:28 +0900 FUJITA Tomonori <fujita.tomonori@lab.ntt.co.jp> wrote: > > Duh, sorry about it. I should have complied that patchset for POWERPC > too. POWERPC has swiotlb but it doesn't expect it to be used (POWERPC > can remove it). > > I think that the following patch works. I'll do more cleanup related > with x86 IOMMU initialization soon (I'm at JFK to go back to Japan). Great, thanks for the fix. -- Cheers, Stephen Rothwell sfr@canb.auug.org.au http://www.canb.auug.org.au/~sfr/ [-- Attachment #2: Type: application/pgp-signature, Size: 198 bytes --] ^ permalink raw reply [flat|nested] 4+ messages in thread
end of thread, other threads:[~2009-11-11 21:39 UTC | newest] Thread overview: 4+ messages (download: mbox.gz / follow: Atom feed) -- links below jump to the message on this page -- 2009-11-11 9:13 linux-next: tip tree build failure Stephen Rothwell 2009-11-11 15:03 ` FUJITA Tomonori 2009-11-11 15:54 ` [tip:core/iommu] swiotlb: Remove the swiotlb variable usage tip-bot for FUJITA Tomonori 2009-11-11 21:39 ` linux-next: tip tree build failure Stephen Rothwell
This is a public inbox, see mirroring instructions for how to clone and mirror all data and code used for this inbox
all inboxes | Powered by JetHome®