diff mbox series

[PATCH-for-8.1] block/dmg: Declare a type definition for DMG uncompress function

Message ID 20230320152610.32052-1-philmd@linaro.org
State New
Headers show
Series [PATCH-for-8.1] block/dmg: Declare a type definition for DMG uncompress function | expand

Commit Message

Philippe Mathieu-Daudé March 20, 2023, 3:26 p.m. UTC
Introduce the BdrvDmgUncompressFunc type defintion. To emphasis
dmg_uncompress_bz2 and dmg_uncompress_lzfse are pointer to functions,
declare them using this new typedef.

Signed-off-by: Philippe Mathieu-Daudé <philmd@linaro.org>
---
 block/dmg.h | 8 ++++----
 block/dmg.c | 7 ++-----
 2 files changed, 6 insertions(+), 9 deletions(-)

Comments

Philippe Mathieu-Daudé March 20, 2023, 3:56 p.m. UTC | #1
On 20/3/23 16:26, Philippe Mathieu-Daudé wrote:
> Introduce the BdrvDmgUncompressFunc type defintion. To emphasis
> dmg_uncompress_bz2 and dmg_uncompress_lzfse are pointer to functions,
> declare them using this new typedef.
> 
> Signed-off-by: Philippe Mathieu-Daudé <philmd@linaro.org>
> ---
>   block/dmg.h | 8 ++++----
>   block/dmg.c | 7 ++-----
>   2 files changed, 6 insertions(+), 9 deletions(-)


> diff --git a/block/dmg.c b/block/dmg.c
> index e10b9a2ba5..2769900359 100644
> --- a/block/dmg.c
> +++ b/block/dmg.c
> @@ -31,11 +31,8 @@
>   #include "qemu/memalign.h"
>   #include "dmg.h"
>   
> -int (*dmg_uncompress_bz2)(char *next_in, unsigned int avail_in,
> -                          char *next_out, unsigned int avail_out);
> -
> -int (*dmg_uncompress_lzfse)(char *next_in, unsigned int avail_in,
> -                            char *next_out, unsigned int avail_out);
> +BdrvDmgUncompressFunc *dmg_uncompress_bz2;
> +BdrvDmgUncompressFunc *dmg_uncompress_lzfse;

Unrelated, but since DMG maintainers are Cc'ed, upstream lzfse warning:

In file included from ../../block/dmg-lzfse.c:26:
/opt/homebrew/Cellar/lzfse/1.0/include/lzfse.h:56:43: warning: this 
function declaration is not a prototype [-Wstrict-prototypes]
LZFSE_API size_t lzfse_encode_scratch_size();
                                           ^
                                            void

Unfortunately last upstream activity was 6 years ago...
https://github.com/lzfse/lzfse/pulls
Philippe Mathieu-Daudé March 20, 2023, 4 p.m. UTC | #2
On 20/3/23 16:56, Philippe Mathieu-Daudé wrote:
> On 20/3/23 16:26, Philippe Mathieu-Daudé wrote:
>> Introduce the BdrvDmgUncompressFunc type defintion. To emphasis
>> dmg_uncompress_bz2 and dmg_uncompress_lzfse are pointer to functions,
>> declare them using this new typedef.
>>
>> Signed-off-by: Philippe Mathieu-Daudé <philmd@linaro.org>
>> ---
>>   block/dmg.h | 8 ++++----
>>   block/dmg.c | 7 ++-----
>>   2 files changed, 6 insertions(+), 9 deletions(-)
> 
> 
>> diff --git a/block/dmg.c b/block/dmg.c
>> index e10b9a2ba5..2769900359 100644
>> --- a/block/dmg.c
>> +++ b/block/dmg.c
>> @@ -31,11 +31,8 @@
>>   #include "qemu/memalign.h"
>>   #include "dmg.h"
>> -int (*dmg_uncompress_bz2)(char *next_in, unsigned int avail_in,
>> -                          char *next_out, unsigned int avail_out);
>> -
>> -int (*dmg_uncompress_lzfse)(char *next_in, unsigned int avail_in,
>> -                            char *next_out, unsigned int avail_out);
>> +BdrvDmgUncompressFunc *dmg_uncompress_bz2;
>> +BdrvDmgUncompressFunc *dmg_uncompress_lzfse;
> 
> Unrelated, but since DMG maintainers are Cc'ed, upstream lzfse warning:
> 
> In file included from ../../block/dmg-lzfse.c:26:
> /opt/homebrew/Cellar/lzfse/1.0/include/lzfse.h:56:43: warning: this 
> function declaration is not a prototype [-Wstrict-prototypes]
> LZFSE_API size_t lzfse_encode_scratch_size();
>                                            ^
>                                             void

Reported in 2016:
https://github.com/lzfse/lzfse/issues/3#issuecomment-226574719

> Unfortunately last upstream activity was 6 years ago...
> https://github.com/lzfse/lzfse/pulls
Philippe Mathieu-Daudé March 20, 2023, 4 p.m. UTC | #3
On 20/3/23 16:26, Philippe Mathieu-Daudé wrote:
> Introduce the BdrvDmgUncompressFunc type defintion. To emphasis

Typo "definition".

> dmg_uncompress_bz2 and dmg_uncompress_lzfse are pointer to functions,
> declare them using this new typedef.
> 
> Signed-off-by: Philippe Mathieu-Daudé <philmd@linaro.org>
> ---
>   block/dmg.h | 8 ++++----
>   block/dmg.c | 7 ++-----
>   2 files changed, 6 insertions(+), 9 deletions(-)
Stefan Hajnoczi April 5, 2023, 7:56 p.m. UTC | #4
On Mon, Mar 20, 2023 at 04:26:10PM +0100, Philippe Mathieu-Daudé wrote:
> Introduce the BdrvDmgUncompressFunc type defintion. To emphasis
> dmg_uncompress_bz2 and dmg_uncompress_lzfse are pointer to functions,
> declare them using this new typedef.
> 
> Signed-off-by: Philippe Mathieu-Daudé <philmd@linaro.org>
> ---
>  block/dmg.h | 8 ++++----
>  block/dmg.c | 7 ++-----
>  2 files changed, 6 insertions(+), 9 deletions(-)

Sorry for the delay, applied to my block-next tree:
https://gitlab.com/stefanha/qemu/commits/block-next

Stefan
diff mbox series

Patch

diff --git a/block/dmg.h b/block/dmg.h
index e488601b62..dcd6165e63 100644
--- a/block/dmg.h
+++ b/block/dmg.h
@@ -51,10 +51,10 @@  typedef struct BDRVDMGState {
     z_stream zstream;
 } BDRVDMGState;
 
-extern int (*dmg_uncompress_bz2)(char *next_in, unsigned int avail_in,
-                                 char *next_out, unsigned int avail_out);
+typedef int BdrvDmgUncompressFunc(char *next_in, unsigned int avail_in,
+                                  char *next_out, unsigned int avail_out);
 
-extern int (*dmg_uncompress_lzfse)(char *next_in, unsigned int avail_in,
-                                   char *next_out, unsigned int avail_out);
+extern BdrvDmgUncompressFunc *dmg_uncompress_bz2;
+extern BdrvDmgUncompressFunc *dmg_uncompress_lzfse;
 
 #endif
diff --git a/block/dmg.c b/block/dmg.c
index e10b9a2ba5..2769900359 100644
--- a/block/dmg.c
+++ b/block/dmg.c
@@ -31,11 +31,8 @@ 
 #include "qemu/memalign.h"
 #include "dmg.h"
 
-int (*dmg_uncompress_bz2)(char *next_in, unsigned int avail_in,
-                          char *next_out, unsigned int avail_out);
-
-int (*dmg_uncompress_lzfse)(char *next_in, unsigned int avail_in,
-                            char *next_out, unsigned int avail_out);
+BdrvDmgUncompressFunc *dmg_uncompress_bz2;
+BdrvDmgUncompressFunc *dmg_uncompress_lzfse;
 
 enum {
     /* Limit chunk sizes to prevent unreasonable amounts of memory being used