[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Message-ID: <20120409090048.GA28439@redhat.com>
Date: Mon, 9 Apr 2012 12:00:49 +0300
From: "Michael S. Tsirkin" <mst@...hat.com>
To: Zhi Yong Wu <zwu.kernel@...il.com>
Cc: Dongsu Park <advance38@...il.com>, linux-kernel@...r.kernel.org
Subject: Re: tools/virtio: Compile errors
On Mon, Apr 09, 2012 at 04:49:14PM +0800, Zhi Yong Wu wrote:
> On Mon, Apr 9, 2012 at 3:55 PM, Michael S. Tsirkin <mst@...hat.com> wrote:
> > On Mon, Apr 09, 2012 at 03:41:36PM +0800, Zhi Yong Wu wrote:
> >> On Mon, Apr 9, 2012 at 3:33 PM, Michael S. Tsirkin <mst@...hat.com> wrote:
> >> > On Mon, Apr 09, 2012 at 02:02:53PM +0800, Zhi Yong Wu wrote:
> >> >> On Thu, Feb 9, 2012 at 12:47 AM, Michael S. Tsirkin <mst@...hat.com> wrote:
> >> >> > On Wed, Feb 08, 2012 at 05:04:05PM +0100, Dongsu Park wrote:
> >> >> >> Hi,
> >> >> >>
> >> >> >> there are compile problems under tools/virtio.
> >> >> >> If I simply run make,
> >> >> >>
> >> >> >> ~/linuxsrc/linux-3.2/tools/virtio $ make
> >> >> >> gcc -g -O2 -Wall -I. -I ../../usr/include/ -Wno-pointer-sign
> >> >> >> -fno-strict-overflow -MMD -c -o virtio_ring.o
> >> >> >> ../../drivers/virtio/virtio_ring.c
> >> >> >> ../../drivers/virtio/virtio_ring.c:24:26: fatal error: linux/module.h:
> >> >> >> No such file or directory
> >> >> >> compilation terminated.
> >> >> >> make: *** [virtio_ring.o] Error 1
> >> >> >
> >> >> >
> >> >> >> By the way, my system is Ubuntu 11.10 with Kernel 3.2.
> >> >> >>
> >> >> >> Cheers,
> >> >> >> Dongsu
> >> >> >
> >> >> > This patch is missing - I'll put it upstream.
> >> >> >
> >> >> > --->
> >> >> >
> >> >> > tools/virtio: add module.h stub
> >> >> >
> >> >> > make it build with linux 3.2
> >> >> >
> >> >> > Signed-off-by: Michael S. Tsirkin <mst@...hat.com>
> >> >> >
> >> >> > diff --git a/tools/virtio/linux/module.h b/tools/virtio/linux/module.h
> >> >> > new file mode 100644
> >> >> > index 0000000..96868eb
> >> >> > --- /dev/null
> >> >> > +++ b/tools/virtio/linux/module.h
> >> >> > @@ -0,0 +1,3 @@
> >> >> > +#ifndef LINUX_MODULE_H
> >> >> > +#define LINUX_MODULE_H
> >> >> > +#endif
> >> >> After the patch was applied in my env, i met another issue.
> >> >> [root@f15 virtio]# make test
> >> >> cc -g -O2 -Wall -I. -I ../../usr/include/ -Wno-pointer-sign
> >> >> -fno-strict-overflow -MMD -c -o virtio_ring.o
> >> >> ../../drivers/virtio/virtio_ring.c
> >> >> ../../drivers/virtio/virtio_ring.c: In function \u2018virtqueue_add_buf\u2019:
> >> >> ../../drivers/virtio/virtio_ring.c:277:2: warning: implicit
> >> >> declaration of function \u2018wmb\u2019
> >> >> [-Wimplicit-function-declaration]
> >> >> ../../drivers/virtio/virtio_ring.c: In function \u2018virtqueue_get_buf\u2019:
> >> >> ../../drivers/virtio/virtio_ring.c:437:2: warning: implicit
> >> >> declaration of function \u2018rmb\u2019
> >> >> [-Wimplicit-function-declaration]
> >> >> cc virtio_test.o virtio_ring.o -o virtio_test
> >> >> virtio_ring.o: In function `virtqueue_add_buf':
> >> >> /home/zwu/work/kernel/vhost-scsi/tools/virtio/../../drivers/virtio/virtio_ring.c:277:
> >> >> undefined reference to `wmb'
> >> >> virtio_ring.o: In function `virtqueue_get_buf':
> >> >> /home/zwu/work/kernel/vhost-scsi/tools/virtio/../../drivers/virtio/virtio_ring.c:437:
> >> >> undefined reference to `rmb'
> >> >> collect2: ld returned 1 exit status
> >> >> make: *** [virtio_test] Error 1
> >> >
> >> > On which kernel version does this trigger?
> >> [root@f15 linux-2.6]# git log
> >> commit e22057c8599373e5caef0bc42bdb95d2a361ab0d
> >> Merge: 496b919 df7a3ee
> >> Author: Linus Torvalds <torvalds@...ux-foundation.org>
> >> Date: Sat Mar 24 12:20:25 2012 -0700
> >
> > Update to 3.4-rc2 and most of the issues go away
> > (there's still a build breakage with a missing
> > flag to dev_cleanup, I'm fixing this up for now
> > you can just pass false).
> thanks.
> By the way, what does it mean as below?
> [root@f15 virtio]# ./virtio_test
> spurious wakeus: 0x4
> [root@f15 virtio]# ./virtio_test -h
> Usage: virtio_test [--help] [--no-indirect] [--no-event-idx]
> spurious wakeus: 0x2
> [root@f15 virtio]# ./virtio_test --no-indirect
> spurious wakeus: 0x4
> [root@f15 virtio]# ./virtio_test --no-event-idx
> spurious wakeus: 0x7
> [root@f15 virtio]# ./virtio_test
> spurious wakeus: 0x5
> [root@f15 virtio]# ./virtio_test
> spurious wakeus: 0x2
> [root@f15 virtio]# ./virtio_test
> spurious wakeus: 0x3
> [root@f15 virtio]# ./virtio_test
> spurious wakeus: 0x5
> [root@f15 virtio]# ./virtio_test
> spurious wakeus: 0x4
What does 'spurious wakeups' mean?
What we detect here is a nested interrupt delivered
before the handler for the original one had a
chance to run.
>
>
>
>
> --
> Regards,
>
> Zhi Yong Wu
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
Powered by blists - more mailing lists