[vlc-devel] [PATCH 2/4] fifo: inline trivial functions

Alexandre Janniaux ajanni at videolabs.io
Mon Apr 13 12:34:07 CEST 2020


Hi,

It seems weird to do such work on deprecated function.
What is planned for those functions in the long run? Can we
create a ticket for it?

LGTM with the queue stuff if merged though.

Regards,
--
Alexandre Janniaux
Videolabs

On Sat, Apr 11, 2020 at 09:41:04PM +0300, RĂ©mi Denis-Courmont wrote:
> ---
>  include/vlc_block.h | 66 ++++++++++++++++++++++++++++++++++-----------
>  src/libvlccore.sym  |  3 ---
>  src/misc/fifo.c     | 39 ---------------------------
>  3 files changed, 50 insertions(+), 58 deletions(-)
>
> diff --git a/include/vlc_block.h b/include/vlc_block.h
> index 5817350ea0..2c98499db0 100644
> --- a/include/vlc_block.h
> +++ b/include/vlc_block.h
> @@ -457,19 +457,6 @@ VLC_API block_fifo_t *block_FifoNew(void) VLC_USED VLC_MALLOC;
>   */
>  VLC_API void block_FifoRelease(block_fifo_t *);
>
> -/**
> - * Clears all blocks in a FIFO.
> - */
> -VLC_API void block_FifoEmpty(block_fifo_t *);
> -
> -/**
> - * Immediately queue one block at the end of a FIFO.
> - *
> - * @param fifo queue
> - * @param block head of a block list to queue (may be NULL)
> - */
> -VLC_API void block_FifoPut(block_fifo_t *fifo, block_t *block);
> -
>  /**
>   * Dequeue the first block from the FIFO. If necessary, wait until there is
>   * one block in the queue. This function is (always) cancellation point.
> @@ -491,9 +478,6 @@ VLC_API block_t *block_FifoGet(block_fifo_t *) VLC_USED;
>   */
>  VLC_API block_t *block_FifoShow(block_fifo_t *);
>
> -size_t block_FifoSize(block_fifo_t *) VLC_USED VLC_DEPRECATED;
> -VLC_API size_t block_FifoCount(block_fifo_t *) VLC_USED VLC_DEPRECATED;
> -
>  typedef struct block_fifo_t vlc_fifo_t;
>
>  /**
> @@ -629,6 +613,56 @@ static inline void vlc_fifo_Cleanup(void *fifo)
>  }
>  #define vlc_fifo_CleanupPush(fifo) vlc_cleanup_push(vlc_fifo_Cleanup, fifo)
>
> +/**
> + * Clears all blocks in a FIFO.
> + */
> +static inline void block_FifoEmpty(block_fifo_t *fifo)
> +{
> +    block_t *block;
> +
> +    vlc_fifo_Lock(fifo);
> +    block = vlc_fifo_DequeueAllUnlocked(fifo);
> +    vlc_fifo_Unlock(fifo);
> +    block_ChainRelease(block);
> +}
> +
> +/**
> + * Immediately queue one block at the end of a FIFO.
> + *
> + * @param fifo queue
> + * @param block head of a block list to queue (may be NULL)
> + */
> +static inline void block_FifoPut(block_fifo_t *fifo, block_t *block)
> +{
> +    vlc_fifo_Lock(fifo);
> +    vlc_fifo_QueueUnlocked(fifo, block);
> +    vlc_fifo_Unlock(fifo);
> +}
> +
> +/* FIXME: not (really) thread-safe */
> +VLC_USED VLC_DEPRECATED
> +static inline size_t block_FifoSize (block_fifo_t *fifo)
> +{
> +    size_t size;
> +
> +    vlc_fifo_Lock(fifo);
> +    size = vlc_fifo_GetBytes(fifo);
> +    vlc_fifo_Unlock(fifo);
> +    return size;
> +}
> +
> +/* FIXME: not (really) thread-safe */
> +VLC_USED VLC_DEPRECATED
> +static inline size_t block_FifoCount (block_fifo_t *fifo)
> +{
> +    size_t depth;
> +
> +    vlc_fifo_Lock(fifo);
> +    depth = vlc_fifo_GetCount(fifo);
> +    vlc_fifo_Unlock(fifo);
> +    return depth;
> +}
> +
>  /** @} */
>
>  /** @} */
> diff --git a/src/libvlccore.sym b/src/libvlccore.sym
> index cc8098edd9..895285ac01 100644
> --- a/src/libvlccore.sym
> +++ b/src/libvlccore.sym
> @@ -31,11 +31,8 @@ aout_FiltersAdjustResampling
>  aout_Hold
>  aout_Release
>  block_Alloc
> -block_FifoCount
> -block_FifoEmpty
>  block_FifoGet
>  block_FifoNew
> -block_FifoPut
>  block_FifoRelease
>  block_FifoShow
>  block_File
> diff --git a/src/misc/fifo.c b/src/misc/fifo.c
> index 564c83f64f..522d52d167 100644
> --- a/src/misc/fifo.c
> +++ b/src/misc/fifo.c
> @@ -159,23 +159,6 @@ void block_FifoRelease( block_fifo_t *p_fifo )
>      free( p_fifo );
>  }
>
> -void block_FifoEmpty(block_fifo_t *fifo)
> -{
> -    block_t *block;
> -
> -    vlc_fifo_Lock(fifo);
> -    block = vlc_fifo_DequeueAllUnlocked(fifo);
> -    vlc_fifo_Unlock(fifo);
> -    block_ChainRelease(block);
> -}
> -
> -void block_FifoPut(block_fifo_t *fifo, block_t *block)
> -{
> -    vlc_fifo_Lock(fifo);
> -    vlc_fifo_QueueUnlocked(fifo, block);
> -    vlc_fifo_Unlock(fifo);
> -}
> -
>  block_t *block_FifoGet(block_fifo_t *fifo)
>  {
>      block_t *block;
> @@ -206,25 +189,3 @@ block_t *block_FifoShow( block_fifo_t *p_fifo )
>
>      return b;
>  }
> -
> -/* FIXME: not (really) thread-safe */
> -size_t block_FifoSize (block_fifo_t *fifo)
> -{
> -    size_t size;
> -
> -    vlc_fifo_Lock(fifo);
> -    size = vlc_fifo_GetBytes(fifo);
> -    vlc_fifo_Unlock(fifo);
> -    return size;
> -}
> -
> -/* FIXME: not (really) thread-safe */
> -size_t block_FifoCount (block_fifo_t *fifo)
> -{
> -    size_t depth;
> -
> -    vlc_fifo_Lock(fifo);
> -    depth = vlc_fifo_GetCount(fifo);
> -    vlc_fifo_Unlock(fifo);
> -    return depth;
> -}
> --
> 2.26.0
>
> _______________________________________________
> vlc-devel mailing list
> To unsubscribe or modify your subscription options:
> https://mailman.videolan.org/listinfo/vlc-devel


More information about the vlc-devel mailing list