diff mbox

[v3,04/29] qemu_memalign: Allow small alignments

Message ID 1389968119-24771-5-git-send-email-kwolf@redhat.com
State New
Headers show

Commit Message

Kevin Wolf Jan. 17, 2014, 2:14 p.m. UTC
The functions used by qemu_memalign() require an alignment that is at
least sizeof(void*). Adjust it if it is too small.

Signed-off-by: Kevin Wolf <kwolf@redhat.com>
Reviewed-by: Wenchao Xia <xiawenc@linux.vnet.ibm.com>
Reviewed-by: Max Reitz <mreitz@redhat.com>
---
 util/oslib-posix.c | 5 +++++
 1 file changed, 5 insertions(+)

Comments

Benoît Canet Jan. 17, 2014, 10:49 p.m. UTC | #1
Le Friday 17 Jan 2014 à 15:14:54 (+0100), Kevin Wolf a écrit :
> The functions used by qemu_memalign() require an alignment that is at
> least sizeof(void*). Adjust it if it is too small.
> 
> Signed-off-by: Kevin Wolf <kwolf@redhat.com>
> Reviewed-by: Wenchao Xia <xiawenc@linux.vnet.ibm.com>
> Reviewed-by: Max Reitz <mreitz@redhat.com>
> ---
>  util/oslib-posix.c | 5 +++++
>  1 file changed, 5 insertions(+)
> 
> diff --git a/util/oslib-posix.c b/util/oslib-posix.c
> index e00a44c..54f8932 100644
> --- a/util/oslib-posix.c
> +++ b/util/oslib-posix.c
> @@ -85,6 +85,11 @@ void *qemu_oom_check(void *ptr)
>  void *qemu_memalign(size_t alignment, size_t size)
>  {
>      void *ptr;
> +
> +    if (alignment < sizeof(void*)) {
> +        alignment = sizeof(void*);
> +    }
> +
>  #if defined(_POSIX_C_SOURCE) && !defined(__sun__)
>      int ret;
>      ret = posix_memalign(&ptr, alignment, size);
> -- 
> 1.8.1.4
> 
> 
Reviewed-by: Benoît Canet <benoit@irqsave.net>
diff mbox

Patch

diff --git a/util/oslib-posix.c b/util/oslib-posix.c
index e00a44c..54f8932 100644
--- a/util/oslib-posix.c
+++ b/util/oslib-posix.c
@@ -85,6 +85,11 @@  void *qemu_oom_check(void *ptr)
 void *qemu_memalign(size_t alignment, size_t size)
 {
     void *ptr;
+
+    if (alignment < sizeof(void*)) {
+        alignment = sizeof(void*);
+    }
+
 #if defined(_POSIX_C_SOURCE) && !defined(__sun__)
     int ret;
     ret = posix_memalign(&ptr, alignment, size);