lkml.org 
[lkml]   [2008]   [Jan]   [9]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    /
    SubjectRe: 2.6.24-rc6-mm1
    From
    Date
    On Wed, 9 Jan 2008 10:04:42 +0100
    Jarek Poplawski <jarkao2@gmail.com> wrote:

    > On Wed, Jan 09, 2008 at 08:57:53AM +0900, FUJITA Tomonori wrote:
    > ...
    > > diff --git a/lib/iommu-helper.c b/lib/iommu-helper.c
    > > new file mode 100644
    > > index 0000000..495575a
    > > --- /dev/null
    > > +++ b/lib/iommu-helper.c
    > > @@ -0,0 +1,80 @@
    > > +/*
    > > + * IOMMU helper functions for the free area management
    > > + */
    > > +
    > > +#include <linux/module.h>
    > > +#include <linux/bitops.h>
    > > +
    > > +static unsigned long find_next_zero_area(unsigned long *map,
    > > + unsigned long size,
    > > + unsigned long start,
    > > + unsigned int nr,
    > > + unsigned long align_mask)
    > > +{
    > > + unsigned long index, end, i;
    > > +again:
    > > + index = find_next_zero_bit(map, size, start);
    > > +
    > > + /* Align allocation */
    > > + index = (index + align_mask) & ~align_mask;
    > > +
    > > + end = index + nr;
    > > + if (end >= size)
    > > + return -1;
    >
    > This '>=' looks doubtful to me, e.g.:
    > map points to 0s only, size = 64, nr = 64,
    > we get: index = 0; end = 64;
    > and: return -1 ?!

    You are right. I did it only because I didn't want to change the
    original code (iommu_range_alloc in arch/powerpc/kernel/iommu.c). I
    thought that there might be a mysterious reason for it so I let it
    alone since it's tiny loss.

    Thanks,


    \
     
     \ /
      Last update: 2008-01-10 01:57    [W:4.307 / U:0.484 seconds]
    ©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site