Welcome to Soft32 Linux Forums!
FAQFAQ    SearchSearch      ProfileProfile    Private MessagesPrivate Messages   Log inLog in

[PATCH 5/8] resend cciss: disable DMA prefetch on P600

 
   Soft32 Home -> Linux -> Kernel RSS
Next:  [gentoo-user] unsuscribe  
Author Message
"Mike Miller

External


Since: Nov 03, 2006
Posts: 44



(Msg. 1) Posted: Fri Nov 03, 2006 11:00 am
Post subject: [PATCH 5/8] resend cciss: disable DMA prefetch on P600
Archived from groups: linux>kernel (more info?)

PATCH 5 of 8 resend

This patch unconditionally disables DMA prefetch on the P600 controller. A
bug in the ASIC may result in prefetching either beyond the end of memory
or to fall off into a memory hole.
Please consider this for inclusion.

Thanks,
mikem

Signed-off-by: Mike Miller <mike.miller DeleteThis @hp.com>

cciss.c | 13 +++++++++++++
cciss_cmd.h | 1 +
2 files changed, 14 insertions(+)
--------------------------------------------------------------------------------
diff -urNp linux-2.6-p00004/drivers/block/cciss.c linux-2.6-p00005/drivers/block/cciss.c
--- linux-2.6-p00004/drivers/block/cciss.c 2006-10-31 15:20:25.000000000 -0600
+++ linux-2.6-p00005/drivers/block/cciss.c 2006-11-03 09:43:55.000000000 -0600
@@ -2997,6 +2997,19 @@ static int cciss_pci_init(ctlr_info_t *c
}
#endif

+ {
+ /* Disabling DMA prefetch for the P600
+ * An ASIC bug may result in a prefetch beyond
+ * physical memory.
+ */
+ __u32 dma_prefetch
+ if(board_id == 0x3225103C) {
+ dma_prefetch = readl(c->vaddr + I2O_DMA1_CFG);
+ dma_prefetch |= 0x8000;
+ writel(dma_prefetch, c->vaddr + I2O_DMA1_CFG);
+ }
+ }
+
#ifdef CCISS_DEBUG
printk("Trying to put board into Simple mode\n");
#endif /* CCISS_DEBUG */
diff -urNp linux-2.6-p00004/drivers/block/cciss_cmd.h linux-2.6-p00005/drivers/block/cciss_cmd.h
--- linux-2.6-p00004/drivers/block/cciss_cmd.h 2006-10-31 14:31:05.000000000 -0600
+++ linux-2.6-p00005/drivers/block/cciss_cmd.h 2006-10-31 15:43:18.000000000 -0600
@@ -55,6 +55,7 @@
#define I2O_INT_MASK 0x34
#define I2O_IBPOST_Q 0x40
#define I2O_OBPOST_Q 0x44
+#define I2O_DMA1_CFG 0x214

//Configuration Table
#define CFGTBL_ChangeReq 0x00000001l
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo DeleteThis @vger.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
Back to top
Login to vote
Jens Axboe

External


Since: Nov 03, 2006
Posts: 679



(Msg. 2) Posted: Fri Nov 03, 2006 11:00 am
Post subject: Re: [PATCH 5/8] resend cciss: disable DMA prefetch on P600 [Login to view extended thread Info.]
Archived from groups: per prev. post (more info?)

On Fri, Nov 03 2006, Mike Miller (OS Dev) wrote:
> PATCH 5 of 8 resend
>
> This patch unconditionally disables DMA prefetch on the P600 controller. A
> bug in the ASIC may result in prefetching either beyond the end of memory
> or to fall off into a memory hole.
> Please consider this for inclusion.
>
> Thanks,
> mikem
>
> Signed-off-by: Mike Miller <mike.miller.TakeThisOut@hp.com>

Acked-by: Jens Axboe <jens.axboe.TakeThisOut@oracle.com>

When you are done with the review comments, just repost the full series
again so it can be easily included.

--
Jens Axboe

-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo.TakeThisOut@vger.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
Back to top
Login to vote
Arjan van de Ven

External


Since: May 26, 2007
Posts: 535



(Msg. 3) Posted: Fri Nov 03, 2006 11:50 am
Post subject: Re: [PATCH 5/8] resend cciss: disable DMA prefetch on P600 [Login to view extended thread Info.]
Archived from groups: per prev. post (more info?)

On Fri, 2006-11-03 at 09:54 -0600, Mike Miller (OS Dev) wrote:
> PATCH 5 of 8 resend
>
> This patch unconditionally disables DMA prefetch on the P600 controller. A
> bug in the ASIC may result in prefetching either beyond the end of memory
> or to fall off into a memory hole.
> Please consider this for inclusion.
>
> Thanks,
> mikem
>
> Signed-off-by: Mike Miller <mike.miller.TakeThisOut@hp.com>
>
> cciss.c | 13 +++++++++++++
> cciss_cmd.h | 1 +
> 2 files changed, 14 insertions(+)
> --------------------------------------------------------------------------------
> diff -urNp linux-2.6-p00004/drivers/block/cciss.c linux-2.6-p00005/drivers/block/cciss.c
> --- linux-2.6-p00004/drivers/block/cciss.c 2006-10-31 15:20:25.000000000 -0600
> +++ linux-2.6-p00005/drivers/block/cciss.c 2006-11-03 09:43:55.000000000 -0600
> @@ -2997,6 +2997,19 @@ static int cciss_pci_init(ctlr_info_t *c
> }
> #endif
>
> + {
> + /* Disabling DMA prefetch for the P600
> + * An ASIC bug may result in a prefetch beyond
> + * physical memory.
> + */
> + __u32 dma_prefetch
> + if(board_id == 0x3225103C) {
> + dma_prefetch = readl(c->vaddr + I2O_DMA1_CFG);
> + dma_prefetch |= 0x8000;
> + writel(dma_prefetch, c->vaddr + I2O_DMA1_CFG);
> + }
> + }
> +

if you remove the if() you might as well also remove the {}'s Wink

--
if you want to mail me at work (you don't), use arjan (at) linux.intel.com
Test the interaction between Linux and your BIOS via http://www.linuxfirmwarekit.org

-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo.TakeThisOut@vger.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
Back to top
Login to vote
Christoph Hellwig

External


Since: Aug 30, 2004
Posts: 605



(Msg. 4) Posted: Fri Nov 03, 2006 12:00 pm
Post subject: Re: [PATCH 5/8] resend cciss: disable DMA prefetch on P600 [Login to view extended thread Info.]
Archived from groups: per prev. post (more info?)

On Fri, Nov 03, 2006 at 05:42:15PM +0100, Arjan van de Ven wrote:
> On Fri, 2006-11-03 at 09:54 -0600, Mike Miller (OS Dev) wrote:
> > PATCH 5 of 8 resend
> >
> > This patch unconditionally disables DMA prefetch on the P600 controller. A
> > bug in the ASIC may result in prefetching either beyond the end of memory
> > or to fall off into a memory hole.
> > Please consider this for inclusion.
> >
> > Thanks,
> > mikem
> >
> > Signed-off-by: Mike Miller <mike.miller.TakeThisOut@hp.com>
> >
> > cciss.c | 13 +++++++++++++
> > cciss_cmd.h | 1 +
> > 2 files changed, 14 insertions(+)
> > --------------------------------------------------------------------------------
> > diff -urNp linux-2.6-p00004/drivers/block/cciss.c linux-2.6-p00005/drivers/block/cciss.c
> > --- linux-2.6-p00004/drivers/block/cciss.c 2006-10-31 15:20:25.000000000 -0600
> > +++ linux-2.6-p00005/drivers/block/cciss.c 2006-11-03 09:43:55.000000000 -0600
> > @@ -2997,6 +2997,19 @@ static int cciss_pci_init(ctlr_info_t *c
> > }
> > #endif
> >
> > + {
> > + /* Disabling DMA prefetch for the P600
> > + * An ASIC bug may result in a prefetch beyond
> > + * physical memory.
> > + */
> > + __u32 dma_prefetch
> > + if(board_id == 0x3225103C) {
> > + dma_prefetch = readl(c->vaddr + I2O_DMA1_CFG);
> > + dma_prefetch |= 0x8000;
> > + writel(dma_prefetch, c->vaddr + I2O_DMA1_CFG);
> > + }
> > + }
> > +
>
> if you remove the if() you might as well also remove the {}'s Wink

And fix the spaces around the if() while we're at it, aka:

/*
* Disable DMA prefetch for the P600.
* An ASIC bug may result in a prefetch beyond
* physical memory.
*/
if (board_id == 0x3225103C) {
u32 dma_prefetch = readl(c->vaddr + I2O_DMA1_CFG);
writel(dma_prefetch | 0x8000, c->vaddr + I2O_DMA1_CFG);
}
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo.TakeThisOut@vger.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
Back to top
Login to vote
Display posts from previous:   
Related Topics:
[PATCH 5/12] repost: cciss: disable DMA prefetch on P600 - PATCH 5 of 12 This patch unconditionally disables DMA prefetch on the P600 controller. An ASIC bug may result in..

RESEND [PATCH] - SN: Add support for CPU disable - Add additional support for CPU disable on SN platforms. Correctly setup the smp_affinity mask for I/O error IRQs...

[PATCH 1/1] cciss: kconfig patch to make cciss dependent o.. - PATCH 1/1 This kconfig patch makes cciss dependent on scsi for the new SG_IO ioctl we just added. If cciss is built..

[PATCH][cciss] Fix a small memory leak in the cciss driver - Hello, There's a memory leak in the cciss driver. in alloc_cciss_hba() we may leak sizeof(ctlr_info_t) bytes if a ..

[PATCH 2/3] cciss: add SG_IO ioctl to cciss - PATCH 2/3 For all of you that think cciss should be a scsi driver here is the patch that you have been waiting for all...

[RESEND][RESEND][PATCH] Script for automated historical Gi.. - This script enables Git users to easily graft the historical Git tree (Bitkeeper history import) to the current history...
       Soft32 Home -> Linux -> Kernel All times are: Pacific Time (US & Canada) (change)
Page 1 of 1

 
You can post new topics in this forum
You can reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum

Categories:
 Windows
  Linux
 Mac
 PDA


[ Contact us | Terms of Service/Privacy Policy ]