Re: 2.6.24-rc6-mm1

From: FUJITA Tomonori
Date: Sun Jan 06 2008 - 08:34:36 EST


On Sun, 6 Jan 2008 12:35:35 +0100
"Torsten Kaiser" <just.for.lkml@xxxxxxxxxxxxxx> wrote:

> On Jan 6, 2008 12:23 PM, FUJITA Tomonori <tomof@xxxxxxx> wrote:
> > On Sun, 6 Jan 2008 11:41:10 +0100
> > "Torsten Kaiser" <just.for.lkml@xxxxxxxxxxxxxx> wrote:
> > > I will applie your patch and see if this hunk from
> > > find_next_zero_area() makes a difference:
> > >
> > > end = index + nr;
> > > - if (end > size)
> > > + if (end >= size)
> > > return -1;
> > > - for (i = index + 1; i < end; i++) {
> > > + for (i = index; i < end; i++) {
> > > if (test_bit(i, map)) {
> >
> > The patch should not make a difference for X86_64.
>
> Hmm...
> arch/x86/kernel/pci-gart_64.c:
> alloc_iommu() calls iommu_area_alloc()
> lib/iommu-helper.c:
> iommu_area_alloc() calls find_next_zero_area()
> -> so the above code should be called even on X86_64

Oops, I meant that the patch fixes the align allocation (non zero
align_mask case). X86_64 doesn't use the align allocation.


> And the change in the for loop means that 'index' will now be tested,
> but with the old code it was not.

With the old code, 'index' is tested by find_next_zero_bit.

With the new code and non zero align_mask case, 'index' is not tested
by find_next_zero_bit. So test_bit needs to start with 'index'.

So If I understand the correctly, this patch should not make a
difference for x86_64 though I might miss something.


> And double using something does fit with the errors I'm seeing...
>
> > Can you try the patch to revert my IOMMU changes?
> >
> > http://www.mail-archive.com/linux-scsi@xxxxxxxxxxxxxxx/msg12694.html
>
> Testing for this bug is a little bit slow, as I'm compiling ~100
> packages trying to trigger it.
> If my current testrun with the patch from
> http://www.mail-archive.com/linux-scsi@xxxxxxxxxxxxxxx/msg12702.html
> crashes, I will revert the hole IOMMU changes with above patch and try again.

Thanks for testing,
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/