[FFmpeg-devel] [PATCH][RFC]lavu/mem: Allow allocations close to max_alloc_size with av_fast_realloc()

Bang He hezhanbang at gmail.com
Tue Jan 2 16:59:04 EET 2018


what is the mean:   min_size + min_size / 16 + 32

On Tue, Jan 2, 2018 at 9:00 AM, Carl Eugen Hoyos <ceffmpeg at gmail.com> wrote:

> 2018-01-02 1:14 GMT+01:00 Michael Niedermayer <michael at niedermayer.cc>:
> > On Mon, Jan 01, 2018 at 11:10:57PM +0100, Carl Eugen Hoyos wrote:
> >> Hi!
> >>
> >> Similar reason as last mem.c patch: av_fast_realloc() can currently
> >> fail in situations where the allocation is possible and allowed.
> >> The patch does not change behaviour for the failure case, if this is
> >> wanted, it should be done separately.
> >>
> >> Please comment, Carl Eugen
> >
> >>  mem.c |    5 ++++-
> >>  1 file changed, 4 insertions(+), 1 deletion(-)
> >> 7529e1d584c62ece463f4461279ea6e3973162c9  0001-lavu-mem-Allow-
> allocations-close-to-max_alloc_size-w.patch
> >> From ac69f4e8402f7c7ee6df09c0450354e2bb900e5a Mon Sep 17 00:00:00 2001
> >> From: Carl Eugen Hoyos <ceffmpeg at gmail.com>
> >> Date: Mon, 1 Jan 2018 23:04:58 +0100
> >> Subject: [PATCH] lavu/mem: Allow allocations close to max_alloc_size
> with
> >>  av_fast_realloc().
> >>
> >> ---
> >>  libavutil/mem.c |    5 ++++-
> >>  1 file changed, 4 insertions(+), 1 deletion(-)
> >>
> >> diff --git a/libavutil/mem.c b/libavutil/mem.c
> >> index 0729e1d..934987f 100644
> >> --- a/libavutil/mem.c
> >> +++ b/libavutil/mem.c
> >> @@ -466,7 +466,10 @@ void *av_fast_realloc(void *ptr, unsigned int
> *size, size_t min_size)
> >>      if (min_size <= *size)
> >>          return ptr;
> >>
> >> -    min_size = FFMAX(min_size + min_size / 16 + 32, min_size);
> >> +    if (min_size > (max_alloc_size - 32))
> >> +        return NULL;
> >
> > This failure mode differs from the existing in what it does with *size
>
> New patch attached.
>
> Thank you, Carl Eugen
>
> _______________________________________________
> ffmpeg-devel mailing list
> ffmpeg-devel at ffmpeg.org
> http://ffmpeg.org/mailman/listinfo/ffmpeg-devel
>
>


More information about the ffmpeg-devel mailing list