Josef Sipek:
> That's the only user of malloc_sizes. It is supposed to be an optimization -
> we get the smallest sized piece of memory even if we don't need all of it.
> This way we don't reallocate & memcpy needlessly.

How about exporting ksize to modules, and introduce a new function such
like this?
Of course, adding gfp_t to its parameter list make this function more generic.

void *kzrealloc(void *p, int nused, int new_sz)
{
        void *q;

        if (new_sz <= nused)
                return p;
        if (new_sz <= ksize(p)) {
                memset(p + nused, 0, new_sz - nused);
                return p;
        }

        q = kmalloc(new_sz, GFP_KERNEL);
        if (unlikely(!q))
                return NULL;
        memcpy(q, p, nused);
        memset(q + nused, 0, new_sz - nused);
        kfree(p);
        return q;
}


Junjiro Okajima
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [EMAIL PROTECTED]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

Reply via email to