All of lore.kernel.org
 help / color / mirror / Atom feed
From: arnd@arndb.de
To: paulus@samba.org
Cc: linuxppc-dev@ozlabs.org, Jeremy Kerr <jk@ozlabs.org>
Subject: [POWERPC 16/18] cell: add spu_64k_pages_available() check
Date: Tue, 18 Dec 2007 18:49:08 +0100	[thread overview]
Message-ID: <20071218175106.725778000@arndb.de> (raw)
In-Reply-To: 20071218174852.112644000@arndb.de

Add a function spu_64k_pages_available(), so that we can abstract the
explicity use of mmu_psize_defs() in lssca_alloc.c

Signed-off-by: Jeremy Kerr <jk@ozlabs.org>
Signed-off-by: Arnd Bergmann <arnd@arndb.de>
---
 arch/powerpc/platforms/cell/spu_base.c          |    6 ++++++
 arch/powerpc/platforms/cell/spufs/lscsa_alloc.c |    2 +-
 include/asm-powerpc/spu.h                       |    1 +
 3 files changed, 8 insertions(+), 1 deletions(-)

Index: linux-2.6-new/arch/powerpc/platforms/cell/spu_base.c
===================================================================
--- linux-2.6-new.orig/arch/powerpc/platforms/cell/spu_base.c
+++ linux-2.6-new/arch/powerpc/platforms/cell/spu_base.c
@@ -126,6 +126,12 @@ void spu_associate_mm(struct spu *spu, s
 }
 EXPORT_SYMBOL_GPL(spu_associate_mm);
 
+int spu_64k_pages_available(void)
+{
+	return mmu_psize_defs[MMU_PAGE_64K].shift != 0;
+}
+EXPORT_SYMBOL_GPL(spu_64k_pages_available);
+
 static int __spu_trap_invalid_dma(struct spu *spu)
 {
 	pr_debug("%s\n", __FUNCTION__);
Index: linux-2.6-new/arch/powerpc/platforms/cell/spufs/lscsa_alloc.c
===================================================================
--- linux-2.6-new.orig/arch/powerpc/platforms/cell/spufs/lscsa_alloc.c
+++ linux-2.6-new/arch/powerpc/platforms/cell/spufs/lscsa_alloc.c
@@ -73,7 +73,7 @@ int spu_alloc_lscsa(struct spu_state *cs
 	int		i, j, n_4k;
 
 	/* Check availability of 64K pages */
-	if (mmu_psize_defs[MMU_PAGE_64K].shift == 0)
+	if (!spu_64k_pages_available())
 		goto fail;
 
 	csa->use_big_pages = 1;
Index: linux-2.6-new/include/asm-powerpc/spu.h
===================================================================
--- linux-2.6-new.orig/include/asm-powerpc/spu.h
+++ linux-2.6-new/include/asm-powerpc/spu.h
@@ -214,6 +214,7 @@ static inline void crash_register_spus(s
 
 extern void spu_invalidate_slbs(struct spu *spu);
 extern void spu_associate_mm(struct spu *spu, struct mm_struct *mm);
+int spu_64k_pages_available(void);
 
 /* Calls from the memory management to the SPU */
 struct mm_struct;

-- 

  parent reply	other threads:[~2007-12-18 17:49 UTC|newest]

Thread overview: 28+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2007-12-18 17:48 [POWERPC 00/18] cell patches for 2.6.25 arnd
2007-12-18 17:48 ` [POWERPC 01/18] perfmon2: make pm_interval register read/write arnd
2007-12-18 17:48 ` [POWERPC 02/18] OProfile: fix cbe pm signal routing problem arnd
2007-12-18 17:48 ` [POWERPC 03/18] cell: add missing \n arnd
2007-12-18 17:48 ` [POWERPC 04/18] Set archdata.dma_data for direct DMA in cell_dma_dev_setup() arnd
2007-12-18 19:48   ` Benjamin Herrenschmidt
2007-12-18 17:48 ` [POWERPC 05/18] Add celleb_dma_dev_setup() arnd
2007-12-18 19:48   ` Benjamin Herrenschmidt
2007-12-18 17:48 ` [POWERPC 06/18] Use archdata.dma_data in dma_direct_ops arnd
2007-12-18 19:49   ` Benjamin Herrenschmidt
2007-12-18 17:48 ` [POWERPC 07/18] Have cell use its own dma_direct_offset variable arnd
2007-12-18 19:50   ` Benjamin Herrenschmidt
2007-12-18 17:49 ` [POWERPC 08/18] Have celleb " arnd
2007-12-18 19:50   ` Benjamin Herrenschmidt
2007-12-18 17:49 ` [POWERPC 09/18] Remove the global dma_direct_offset arnd
2007-12-18 19:52   ` Benjamin Herrenschmidt
2007-12-18 17:49 ` [POWERPC 10/18] Remove bogus comment in dma_direct_alloc_coherent() arnd
2007-12-18 19:52   ` Benjamin Herrenschmidt
2007-12-18 17:49 ` [POWERPC 11/18] cell: Convert #include of asm/of_{platform, device}.h into linux/of_{platform, device}.h arnd
2007-12-18 17:49 ` [POWERPC 12/18] cell: export force_sig_info() arnd
2007-12-18 17:49 ` [POWERPC 13/18] cell: safer of_has_vicinity routine arnd
2007-12-18 17:49 ` [POWERPC 14/18] cell: handle kernel SLB setup in spu_base.c arnd
2007-12-18 17:49 ` [POWERPC 15/18] cell: use spu_load_slb for SLB setup arnd
2007-12-18 17:49 ` arnd [this message]
2007-12-18 17:49 ` [POWERPC 17/18] cell: handle SPE kernel mappings that cross segment boundaries arnd
2007-12-18 17:49 ` [POWERPC 18/18] cell: catch errors from sysfs_create_group() arnd
2007-12-18 20:24 ` [POWERPC 00/18] cell patches for 2.6.25 Arnd Bergmann
2007-12-19  0:11 ` Arnd Bergmann

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20071218175106.725778000@arndb.de \
    --to=arnd@arndb.de \
    --cc=jk@ozlabs.org \
    --cc=linuxppc-dev@ozlabs.org \
    --cc=paulus@samba.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.