kvmtool: Fix unaligned pointer access warning

Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Bruce Ashfield <bruce.ashfield@windriver.com>
This commit is contained in:
Khem Raj 2017-03-21 23:45:52 -07:00 committed by Bruce Ashfield
parent e858c02c42
commit bccfd5ddb9
2 changed files with 41 additions and 1 deletions

View File

@ -0,0 +1,39 @@
From 2e22df7c24dadf5e16004cd832cabca76a699d4d Mon Sep 17 00:00:00 2001
From: Khem Raj <raj.khem@gmail.com>
Date: Tue, 21 Mar 2017 23:32:39 -0700
Subject: [PATCH] Avoid pointers for address of packed members
Fixes Clang warning due to -Waddress-of-packed-member
virtio/blk.c:161:37: error: taking address of packed member 'geometry' of class or structure 'virtio_blk_config' may result in an unaligned pointer value [-Werror,-Waddress-of-packed-member]
struct virtio_blk_geometry *geo = &conf->geometry;
Signed-off-by: Khem Raj <raj.khem@gmail.com>
---
virtio/blk.c | 3 +--
1 file changed, 1 insertion(+), 2 deletions(-)
diff --git a/virtio/blk.c b/virtio/blk.c
index c485e4f..1f7365d 100644
--- a/virtio/blk.c
+++ b/virtio/blk.c
@@ -158,7 +158,6 @@ static void set_guest_features(struct kvm *kvm, void *dev, u32 features)
{
struct blk_dev *bdev = dev;
struct virtio_blk_config *conf = &bdev->blk_config;
- struct virtio_blk_geometry *geo = &conf->geometry;
bdev->features = features;
@@ -167,7 +166,7 @@ static void set_guest_features(struct kvm *kvm, void *dev, u32 features)
conf->seg_max = virtio_host_to_guest_u32(&bdev->vdev, conf->seg_max);
/* Geometry */
- geo->cylinders = virtio_host_to_guest_u16(&bdev->vdev, geo->cylinders);
+ conf->geometry.cylinders = virtio_host_to_guest_u16(&bdev->vdev, conf->geometry.cylinders);
conf->blk_size = virtio_host_to_guest_u32(&bdev->vdev, conf->blk_size);
conf->min_io_size = virtio_host_to_guest_u16(&bdev->vdev, conf->min_io_size);
--
2.12.0

View File

@ -8,7 +8,8 @@ DEPENDS = "dtc libaio zlib"
SRC_URI = "git://git.kernel.org/pub/scm/linux/kernel/git/will/kvmtool.git \
file://external-crosscompiler.patch \
"
file://0001-Avoid-pointers-for-address-of-packed-members.patch \
"
SRCREV = "3fea89a924511f9f8fe05a892098fad77c1eca0d"
PV = "3.18.0+git${SRCREV}"