The patch titled spufs: limit saving MFC_CNTL bits has been added to the -mm tree. Its filename is spufs-limit-saving-mfc_cntl-bits.patch *** Remember to use Documentation/SubmitChecklist when testing your code *** See http://www.zip.com.au/~akpm/linux/patches/stuff/added-to-mm.txt to find out what to do about this ------------------------------------------------------ Subject: spufs: limit saving MFC_CNTL bits From: Masato Noguchi <Masato.Noguchi@xxxxxxxxxxx> At save step 8, the mfc control register in the CSA should be written _only_ with Sc and Sm bits (at least MFC_CNTL[Dh] should be set to 0) Signed-off-by: Masato Noguchi <Masato.Noguchi@xxxxxxxxxxx> Signed-off-by: Jeremy Kerr <jk@xxxxxxxxxx> Cc: Paul Mackerras <paulus@xxxxxxxxx> Cc: Benjamin Herrenschmidt <benh@xxxxxxxxxxxxxxxxxxx> Signed-off-by: Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx> --- arch/powerpc/platforms/cell/spufs/switch.c | 13 ++++--------- 1 files changed, 4 insertions(+), 9 deletions(-) diff -puN arch/powerpc/platforms/cell/spufs/switch.c~spufs-limit-saving-mfc_cntl-bits arch/powerpc/platforms/cell/spufs/switch.c --- a/arch/powerpc/platforms/cell/spufs/switch.c~spufs-limit-saving-mfc_cntl-bits +++ a/arch/powerpc/platforms/cell/spufs/switch.c @@ -180,7 +180,7 @@ static inline void save_mfc_cntl(struct case MFC_CNTL_SUSPEND_COMPLETE: if (csa) { csa->priv2.mfc_control_RW = - in_be64(&priv2->mfc_control_RW) | + MFC_CNTL_SUSPEND_MASK | MFC_CNTL_SUSPEND_DMA_QUEUE; } break; @@ -190,9 +190,7 @@ static inline void save_mfc_cntl(struct MFC_CNTL_SUSPEND_DMA_STATUS_MASK) == MFC_CNTL_SUSPEND_COMPLETE); if (csa) { - csa->priv2.mfc_control_RW = - in_be64(&priv2->mfc_control_RW) & - ~MFC_CNTL_SUSPEND_DMA_QUEUE; + csa->priv2.mfc_control_RW = 0; } break; } @@ -251,11 +249,8 @@ static inline void save_mfc_decr(struct * Read MFC_CNTL[Ds]. Update saved copy of * CSA.MFC_CNTL[Ds]. */ - if (in_be64(&priv2->mfc_control_RW) & MFC_CNTL_DECREMENTER_RUNNING) { - csa->priv2.mfc_control_RW |= MFC_CNTL_DECREMENTER_RUNNING; - } else { - csa->priv2.mfc_control_RW &= ~MFC_CNTL_DECREMENTER_RUNNING; - } + csa->priv2.mfc_control_RW |= + in_be64(&priv2->mfc_control_RW) & MFC_CNTL_DECREMENTER_RUNNING; } static inline void halt_mfc_decr(struct spu_state *csa, struct spu *spu) _ Patches currently in -mm which might be from Masato.Noguchi@xxxxxxxxxxx are origin.patch spufs-fix-array-size-of-channel-index.patch spufs-remove-needless-context-save-restore-code.patch spufs-fix-decr_status-meanings.patch spufs-fix-read-and-write-for-decr_status-file.patch spufs-limit-saving-mfc_cntl-bits.patch spufs-dont-halt-decrementer-at-restore-step-47.patch spufs-change-decrementer-restore-timing.patch spufs-use-find_first_bit-instead-of-sched_find_first_bit.patch - To unsubscribe from this list: send the line "unsubscribe mm-commits" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html