Skip to contentSkip to conversation

tools/virtio: Compile errors

DISCUSSION Dongsu Park 4 participants 11 messages Feb 8, 2012 – Apr 9, 2012 virtio core

lore
Share & tools
lore
#0 lore raw

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

Of course that's supposed to be a simple error in CFLAGS in Makefile, so I tried it again modifying CFLAGS, from "-I ../../usr/include" to "-I ../../include". But this time it's another compile error.

~/linuxsrc/linux-3.2/tools/virtio $ make
gcc -g -O2 -Wall -I. -I ../../include/ -Wno-pointer-sign
-fno-strict-overflow -MMD -c -o virtio_ring.o
../../drivers/virtio/virtio_ring.c
In file included from ./linux/virtio.h:11:0,

                 from ../../drivers/virtio/virtio_ring.c:19:

../../include/linux/types.h:13:2: warning: #warning "Attempt to use kernel headers from user space, see
http://kernelnewbies.org/KernelHeaders"
In file included from ../../include/linux/module.h:9:0,

                 from ../../drivers/virtio/virtio_ring.c:24:

../../include/linux/list.h:24:42: warning: ‘struct list_head’ declared inside parameter list
../../include/linux/list.h:24:42: warning: its scope is only this definition or declaration, which is probably not what you want ../../include/linux/list.h: In function ‘INIT_LIST_HEAD’:
../../include/linux/list.h:26:6: error: dereferencing pointer to incomplete type
../../include/linux/list.h:27:6: error: dereferencing pointer to incomplete type
../../include/linux/list.h: At top level:
../../include/linux/list.h:39:17: warning: ‘struct list_head’ declared inside parameter list

...<snip>...

I tried again to fix it further, without success.
Has anyone succeeded compiling tools/virtio?

By the way, my system is Ubuntu 11.10 with Kernel 3.2.

Cheers,
Dongsu

#1 lore raw
Quoted 5 lines · Dongsu Park

Hi,

there are compile problems under tools/virtio.
If I simply run make,

Quoted 9 lines

~/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

compile with make mod.

Quoted 42 lines

Of course that's supposed to be a simple error in CFLAGS in Makefile, so I tried it again modifying CFLAGS, from "-I ../../usr/include" to "-I ../../include". But this time it's another compile error.

~/linuxsrc/linux-3.2/tools/virtio $ make
gcc -g -O2 -Wall -I. -I ../../include/ -Wno-pointer-sign -fno-strict-overflow  -MMD   -c -o virtio_ring.o ../../drivers/virtio/virtio_ring.c
In file included from ./linux/virtio.h:11:0,
                from ../../drivers/virtio/virtio_ring.c:19:
../../include/linux/types.h:13:2: warning: #warning "Attempt to use kernel headers from user space, see
http://kernelnewbies.org/KernelHeaders"
In file included from ../../include/linux/module.h:9:0, from ../../drivers/virtio/virtio_ring.c:24:
../../include/linux/list.h:24:42: warning: ‘struct list_head’ declared inside parameter list
../../include/linux/list.h:24:42: warning: its scope is only this definition or declaration, which is probably not what you want ../../include/linux/list.h: In function ‘INIT_LIST_HEAD’:
../../include/linux/list.h:26:6: error: dereferencing pointer to incomplete type
../../include/linux/list.h:27:6: error: dereferencing pointer to incomplete type
../../include/linux/list.h: At top level:
../../include/linux/list.h:39:17: warning: ‘struct list_head’ declared inside parameter list

...<snip>...

I tried again to fix it further, without success.
Has anyone succeeded compiling tools/virtio?

By the way, my system is Ubuntu 11.10 with Kernel 3.2.

Cheers,
Dongsu
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to [email protected]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

#2 lore raw
Quoted 15 lines · devendra.aaru
Quoted 5 lines · Dongsu Park

Hi,

there are compile problems under tools/virtio.
If I simply run make,

Quoted 9 lines

~/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

Quoted 1 line

compile with make mod.

Yes, I know "make mod" is already working.
I'm also able to load the kernel module vhost_test.ko. That's fine.

But "make test" isn't still working.
How can I build virtio_test, the userspace test program?

Dongsu

Quoted 47 lines
Quoted 35 lines

Of course that's supposed to be a simple error in CFLAGS in Makefile, so I tried it again modifying CFLAGS, from "-I ../../usr/include" to "-I ../../include". But this time it's another compile error.

~/linuxsrc/linux-3.2/tools/virtio $ make
gcc -g -O2 -Wall -I. -I ../../include/ -Wno-pointer-sign -fno-strict-overflow  -MMD   -c -o virtio_ring.o ../../drivers/virtio/virtio_ring.c
In file included from ./linux/virtio.h:11:0,
                from ../../drivers/virtio/virtio_ring.c:19:
../../include/linux/types.h:13:2: warning: #warning "Attempt to use kernel headers from user space, see
http://kernelnewbies.org/KernelHeaders"
In file included from ../../include/linux/module.h:9:0, from ../../drivers/virtio/virtio_ring.c:24:
../../include/linux/list.h:24:42: warning: ‘struct list_head’ declared inside parameter list
../../include/linux/list.h:24:42: warning: its scope is only this definition or declaration, which is probably not what you want ../../include/linux/list.h: In function ‘INIT_LIST_HEAD’:
../../include/linux/list.h:26:6: error: dereferencing pointer to incomplete type
../../include/linux/list.h:27:6: error: dereferencing pointer to incomplete type
../../include/linux/list.h: At top level:
../../include/linux/list.h:39:17: warning: ‘struct list_head’ declared inside parameter list

...<snip>...

I tried again to fix it further, without success.
Has anyone succeeded compiling tools/virtio?

By the way, my system is Ubuntu 11.10 with Kernel 3.2.

Quoted 7 lines

Cheers,
Dongsu
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to [email protected]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to [email protected]
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/

#3 lore raw
In reply to Dongsu Park
Quoted 15 lines · Dongsu Park

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

Quoted 4 lines

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

tools/virtio/linux/module.h new file +3 -0
new file mode 100644
index 0000000..96868eb
@@ -0,0 +1,3 @@
+#ifndef LINUX_MODULE_H
+#define LINUX_MODULE_H
+#endif
#4 lore raw
Quoted 37 lines · Michael S. Tsirkin
Quoted 15 lines · Dongsu Park

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

Quoted 4 lines

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

tools/virtio/linux/module.h new file +0 -0
new file mode 100644
index 0000000..96868eb

tools/virtio/linux/module.h line 3

Quoted 3 lines
tools/virtio/linux/module.h new file +3 -0
@@ -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

Quoted 5 lines

--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to [email protected]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

Signature · 3 lines
Regards,

Zhi Yong Wu
#5 lore raw
Quoted 55 lines · Zhi Yong Wu
Quoted 37 lines · Michael S. Tsirkin
Quoted 15 lines · Dongsu Park

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

Quoted 4 lines

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

tools/virtio/linux/module.h new file +0 -0
new file mode 100644
index 0000000..96868eb

tools/virtio/linux/module.h line 3

Quoted 3 lines
tools/virtio/linux/module.h new file +3 -0
@@ -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

Quoted 8 lines

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?

Quoted 6 lines
Signature · 4 lines
-- 
Regards,

Zhi Yong Wu
#6 lore raw
Quoted 65 lines · Michael S. Tsirkin
Quoted 55 lines · Zhi Yong Wu
Quoted 37 lines · Michael S. Tsirkin
Quoted 15 lines · Dongsu Park

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

Quoted 4 lines

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

tools/virtio/linux/module.h new file +0 -0
new file mode 100644
index 0000000..96868eb

tools/virtio/linux/module.h line 3

Quoted 3 lines
tools/virtio/linux/module.h new file +3 -0
@@ -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

Quoted 8 lines

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

Quoted 1 line

On which kernel version does this trigger?

[root@f15 linux-2.6]# git log
commit e22057c8599373e5caef0bc42bdb95d2a361ab0d
Merge: 496b919 df7a3ee
Author: Linus Torvalds <[email protected]>
Date: Sat Mar 24 12:20:25 2012 -0700

Merge tag 'stable/for-linus-3.4-tag-two' of git://git.kernel.org/pub/scm/lin

Pull more xen updates from Konrad Rzeszutek Wilk:
"One tiny feature that accidentally got lost in the initial git pull:
* Add fast-EOI acking of interrupts (clear a bit instead of hypercall)
And bug-fixes:
* Fix CPU bring-up code missing a call to notify other subsystems.
* Fix reading /sys/hypervisor even if PVonHVM drivers are not loaded.
* In Xen ACPI processor driver: remove too verbose WARN messages, fix up the Kconfig dependency to be a module by default, and add dependency on CPU_FREQ.
* Disable CPU frequency drivers from loading when booting under Xen (as we want the Xen ACPI processor to be used instead).
* Cleanups in tmem code."

* tag 'stable/for-linus-3.4-tag-two' of git://git.kernel.org/pub/scm/linux/k
xen/acpi: Fix Kconfig dependency on CPU_FREQ
[root@f15 linux-2.6]# cd tools/virtio/
[root@f15 virtio]# ls
linux Makefile vhost_test virtio_test.c virtio_test.d virtio_test.o [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:25:27: fatal error:
linux/hrtimer.h: No such file or directory
compilation terminated.
make: *** [virtio_ring.o] Error 1
[root@f15 virtio]# touch linux/hrtimer.h
[root@f15 virtio]# vi linux/hrtimer.h
[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
[root@f15 virtio]#

Quoted 7 lines
Quoted 7 lines

--
Regards,

Zhi Yong Wu

Signature · 3 lines
Regards,

Zhi Yong Wu
#7 lore raw
Quoted 66 lines · Zhi Yong Wu
Quoted 65 lines · Michael S. Tsirkin
Quoted 63 lines · Zhi Yong Wu
Quoted 37 lines · Michael S. Tsirkin
Quoted 15 lines · Dongsu Park

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

Quoted 4 lines

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

tools/virtio/linux/module.h new file +0 -0
new file mode 100644
index 0000000..96868eb

tools/virtio/linux/module.h line 3

Quoted 3 lines
tools/virtio/linux/module.h new file +3 -0
@@ -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

Quoted 6 lines
Quoted 1 line

On which kernel version does this trigger?

[root@f15 linux-2.6]# git log
commit e22057c8599373e5caef0bc42bdb95d2a361ab0d
Merge: 496b919 df7a3ee
Author: Linus Torvalds <[email protected]>
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).

#8 lore raw
Quoted 74 lines · Michael S. Tsirkin
Quoted 66 lines · Zhi Yong Wu
Quoted 65 lines · Michael S. Tsirkin
Quoted 63 lines · Zhi Yong Wu
Quoted 37 lines · Michael S. Tsirkin
Quoted 15 lines · Dongsu Park

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

Quoted 4 lines

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

tools/virtio/linux/module.h new file +0 -0
new file mode 100644
index 0000000..96868eb

tools/virtio/linux/module.h line 3

Quoted 3 lines
tools/virtio/linux/module.h new file +3 -0
@@ -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

Quoted 6 lines
Quoted 1 line

On which kernel version does this trigger?

[root@f15 linux-2.6]# git log
commit e22057c8599373e5caef0bc42bdb95d2a361ab0d
Merge: 496b919 df7a3ee
Author: Linus Torvalds <[email protected]>
Date:   Sat Mar 24 12:20:25 2012 -0700

Quoted 4 lines

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

Quoted 1 line
Signature · 3 lines
Regards,

Zhi Yong Wu
#9 lore raw
Quoted 92 lines · Zhi Yong Wu
Quoted 74 lines · Michael S. Tsirkin
Quoted 66 lines · Zhi Yong Wu
Quoted 65 lines · Michael S. Tsirkin
Quoted 63 lines · Zhi Yong Wu
Quoted 37 lines · Michael S. Tsirkin
Quoted 15 lines · Dongsu Park

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

Quoted 4 lines

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

tools/virtio/linux/module.h new file +0 -0
new file mode 100644
index 0000000..96868eb

tools/virtio/linux/module.h line 3

Quoted 3 lines
tools/virtio/linux/module.h new file +3 -0
@@ -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

Quoted 6 lines
Quoted 1 line

On which kernel version does this trigger?

[root@f15 linux-2.6]# git log
commit e22057c8599373e5caef0bc42bdb95d2a361ab0d
Merge: 496b919 df7a3ee
Author: Linus Torvalds <[email protected]>
Date:   Sat Mar 24 12:20:25 2012 -0700

Quoted 4 lines

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

Quoted 8 lines

[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.

Quoted 8 lines
Signature · 4 lines
-- 
Regards,

Zhi Yong Wu
#10 lore raw
In reply to Michael S. Tsirkin
Quoted 37 lines · Michael S. Tsirkin
Quoted 15 lines · Dongsu Park

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

Quoted 4 lines

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

tools/virtio/linux/module.h new file +0 -0
new file mode 100644
index 0000000..96868eb

tools/virtio/linux/module.h line 3

Quoted 3 lines
tools/virtio/linux/module.h new file +3 -0
@@ -0,0 +1,3 @@
+#ifndef LINUX_MODULE_H
+#define LINUX_MODULE_H
+#endif

I found that it is not only lack of this head file when i ran "make test", but also depend on other head files.

Quoted 5 lines

--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to [email protected]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

Signature · 3 lines
Regards,

Zhi Yong Wu