Header terutama digunakan untuk pengujian ruang pengguna, seperti virtio_test
.
Dari git-log tools/virtio/virtio_test.c
:
Ini adalah bagian ruang pengguna dari alat ini:ini mencakup banyak stub untuk API Linux, agak mirip dengan linuxsched. Ini memungkinkan untuk mengkompilasi ulang kode dering di ruang pengguna.
Contoh pengujian kecil diimplementasikan dengan menggabungkan ini dengan vhost_testmodule.
Jadi ya, kodenya agak tidak aman (coding yang bersih akan menguji NULL
penunjuk sebelum memset()
dan keluar dengan pesan kesalahan yang sesuai), tetapi karena ini hanyalah alat pengujian, tampaknya dianggap tidak penting untuk melewati pengujian ini.
Ya, itu pasti terlihat seperti bug.
tools/
subdirektori adalah kumpulan alat ruang pengguna (seperti namanya). Anda juga dapat melihat ini dengan fakta bahwa beberapa header pustaka standar C disertakan. Jadi ini tentu saja bukan bug kernel (yang akan sangat buruk), hanya kesalahan kecil di virtio
alat pengujian.
virtio
itu alat pengujian tampaknya mendefinisikan ulang beberapa API kernel untuk meniru perilaku mereka di ruang pengguna. Fungsi itu sepertinya tidak pernah digunakan dalam praktik, hanya didefinisikan.
marco:~/git/linux/tools/virtio$ grep -r kzalloc
linux/kernel.h:static inline void *kzalloc(size_t s, gfp_t gfp)
ringtest/ptr_ring.c:static inline void *kzalloc(unsigned size, gfp_t flags)
marco:~/git/linux/tools/virtio$
Ini mungkin dimaksudkan untuk digunakan oleh seseorang yang ingin menguji beberapa kode kernel virtio di ruang pengguna.
Bagaimanapun, Anda dapat mencoba melaporkan bug tersebut. get_mantainer.pl
skrip menyarankan:
$ perl scripts/get_maintainer.pl -f tools/virtio/linux/kernel.h
Bad divisor in main::vcs_assign: 0
"Michael S. Tsirkin" <[email protected]> (maintainer:VIRTIO CORE AND NET DRIVERS)
Jason Wang <[email protected]> (maintainer:VIRTIO CORE AND NET DRIVERS)
[email protected] (open list:VIRTIO CORE AND NET DRIVERS)
[email protected] (open list)