* [PATCH 2/5] kvm tools: Use macro in uip_tx_do_ipv4()
2011-10-31 14:39 [PATCH 1/5] kvm tools: Drop unused variable in struct uip_buf Asias He
@ 2011-10-31 14:39 ` Asias He
2011-10-31 14:39 ` [PATCH 3/5] kvm tools: Fix a vertical indentation for net/uip/udp.c Asias He
` (2 subsequent siblings)
3 siblings, 0 replies; 5+ messages in thread
From: Asias He @ 2011-10-31 14:39 UTC (permalink / raw)
To: Pekka Enberg; +Cc: Cyrill Gorcunov, Ingo Molnar, Sasha Levin, kvm, Asias He
Use marcro instead of magic number in uip_tx_do_ipv4()
Signed-off-by: Asias He <asias.hejun@gmail.com>
---
tools/kvm/include/kvm/uip.h | 1 +
tools/kvm/net/uip/ipv4.c | 6 +++---
2 files changed, 4 insertions(+), 3 deletions(-)
diff --git a/tools/kvm/include/kvm/uip.h b/tools/kvm/include/kvm/uip.h
index bded986..4497f6a 100644
--- a/tools/kvm/include/kvm/uip.h
+++ b/tools/kvm/include/kvm/uip.h
@@ -19,6 +19,7 @@
#define UIP_IP_TTL 0X40
#define UIP_IP_P_UDP 0X11
#define UIP_IP_P_TCP 0X06
+#define UIP_IP_P_ICMP 0X01
#define UIP_TCP_HDR_LEN 0x50
#define UIP_TCP_WIN_SIZE 14600
diff --git a/tools/kvm/net/uip/ipv4.c b/tools/kvm/net/uip/ipv4.c
index 4def129..58373fd 100644
--- a/tools/kvm/net/uip/ipv4.c
+++ b/tools/kvm/net/uip/ipv4.c
@@ -12,13 +12,13 @@ int uip_tx_do_ipv4(struct uip_tx_arg *arg)
}
switch (ip->proto) {
- case 0x01: /* ICMP */
+ case UIP_IP_P_ICMP:
uip_tx_do_ipv4_icmp(arg);
break;
- case 0x06: /* TCP */
+ case UIP_IP_P_TCP:
uip_tx_do_ipv4_tcp(arg);
break;
- case 0x11: /* UDP */
+ case UIP_IP_P_UDP:
uip_tx_do_ipv4_udp(arg);
break;
default:
--
1.7.7.1
^ permalink raw reply related [flat|nested] 5+ messages in thread* [PATCH 3/5] kvm tools: Fix a vertical indentation for net/uip/udp.c
2011-10-31 14:39 [PATCH 1/5] kvm tools: Drop unused variable in struct uip_buf Asias He
2011-10-31 14:39 ` [PATCH 2/5] kvm tools: Use macro in uip_tx_do_ipv4() Asias He
@ 2011-10-31 14:39 ` Asias He
2011-10-31 14:39 ` [PATCH 4/5] kvm tools: Fix ndev mutex and condition variable initialization Asias He
2011-10-31 14:39 ` [PATCH 5/5] kvm tools: Remove dead code virt_queue__trigger_irq() Asias He
3 siblings, 0 replies; 5+ messages in thread
From: Asias He @ 2011-10-31 14:39 UTC (permalink / raw)
To: Pekka Enberg; +Cc: Cyrill Gorcunov, Ingo Molnar, Sasha Levin, kvm, Asias He
Signed-off-by: Asias He <asias.hejun@gmail.com>
---
tools/kvm/net/uip/udp.c | 2 +-
1 files changed, 1 insertions(+), 1 deletions(-)
diff --git a/tools/kvm/net/uip/udp.c b/tools/kvm/net/uip/udp.c
index 39c2b57..d4518b2 100644
--- a/tools/kvm/net/uip/udp.c
+++ b/tools/kvm/net/uip/udp.c
@@ -182,7 +182,7 @@ static void *uip_udp_socket_thread(void *p)
/*
* Get free buffer to send data to guest
*/
- buf = uip_buf_get_free(info);
+ buf = uip_buf_get_free(info);
uip_udp_make_pkg(info, sk, buf, payload, payload_len);
--
1.7.7.1
^ permalink raw reply related [flat|nested] 5+ messages in thread
* [PATCH 4/5] kvm tools: Fix ndev mutex and condition variable initialization
2011-10-31 14:39 [PATCH 1/5] kvm tools: Drop unused variable in struct uip_buf Asias He
2011-10-31 14:39 ` [PATCH 2/5] kvm tools: Use macro in uip_tx_do_ipv4() Asias He
2011-10-31 14:39 ` [PATCH 3/5] kvm tools: Fix a vertical indentation for net/uip/udp.c Asias He
@ 2011-10-31 14:39 ` Asias He
2011-10-31 14:39 ` [PATCH 5/5] kvm tools: Remove dead code virt_queue__trigger_irq() Asias He
3 siblings, 0 replies; 5+ messages in thread
From: Asias He @ 2011-10-31 14:39 UTC (permalink / raw)
To: Pekka Enberg; +Cc: Cyrill Gorcunov, Ingo Molnar, Sasha Levin, kvm, Asias He
This patch fixes the initialization of the following variables:
ndev->io_tx_lock
ndev->io_rx_lock
ndev->io_tx_cond
ndev->io_rx_cond
Signed-off-by: Asias He <asias.hejun@gmail.com>
---
tools/kvm/virtio/net.c | 6 +++---
1 files changed, 3 insertions(+), 3 deletions(-)
diff --git a/tools/kvm/virtio/net.c b/tools/kvm/virtio/net.c
index 1b59972..7cd6794 100644
--- a/tools/kvm/virtio/net.c
+++ b/tools/kvm/virtio/net.c
@@ -248,14 +248,14 @@ fail:
static void virtio_net__io_thread_init(struct kvm *kvm, struct net_dev *ndev)
{
+ pthread_mutex_init(&ndev->io_tx_lock, NULL);
pthread_mutex_init(&ndev->io_rx_lock, NULL);
- pthread_cond_init(&ndev->io_tx_cond, NULL);
- pthread_mutex_init(&ndev->io_rx_lock, NULL);
pthread_cond_init(&ndev->io_tx_cond, NULL);
+ pthread_cond_init(&ndev->io_rx_cond, NULL);
- pthread_create(&ndev->io_rx_thread, NULL, virtio_net_rx_thread, ndev);
pthread_create(&ndev->io_tx_thread, NULL, virtio_net_tx_thread, ndev);
+ pthread_create(&ndev->io_rx_thread, NULL, virtio_net_rx_thread, ndev);
}
static inline int tap_ops_tx(struct iovec *iov, u16 out, struct net_dev *ndev)
--
1.7.7.1
^ permalink raw reply related [flat|nested] 5+ messages in thread* [PATCH 5/5] kvm tools: Remove dead code virt_queue__trigger_irq()
2011-10-31 14:39 [PATCH 1/5] kvm tools: Drop unused variable in struct uip_buf Asias He
` (2 preceding siblings ...)
2011-10-31 14:39 ` [PATCH 4/5] kvm tools: Fix ndev mutex and condition variable initialization Asias He
@ 2011-10-31 14:39 ` Asias He
3 siblings, 0 replies; 5+ messages in thread
From: Asias He @ 2011-10-31 14:39 UTC (permalink / raw)
To: Pekka Enberg; +Cc: Cyrill Gorcunov, Ingo Molnar, Sasha Levin, kvm, Asias He
This function is not used anymore. Instead, We are using
virtio_pci__signal_vq() to trigger interrupt right now.
Signed-off-by: Asias He <asias.hejun@gmail.com>
---
tools/kvm/include/kvm/virtio.h | 3 ---
tools/kvm/virtio/core.c | 12 ------------
2 files changed, 0 insertions(+), 15 deletions(-)
diff --git a/tools/kvm/include/kvm/virtio.h b/tools/kvm/include/kvm/virtio.h
index 3442338..c6c380d 100644
--- a/tools/kvm/include/kvm/virtio.h
+++ b/tools/kvm/include/kvm/virtio.h
@@ -57,9 +57,6 @@ u16 virt_queue__get_iov(struct virt_queue *queue, struct iovec iov[], u16 *out,
u16 virt_queue__get_inout_iov(struct kvm *kvm, struct virt_queue *queue,
struct iovec in_iov[], struct iovec out_iov[],
u16 *in, u16 *out);
-
-void virt_queue__trigger_irq(struct virt_queue *vq, int irq, u8 *isr, struct kvm *kvm);
-
int virtio__get_dev_specific_field(int offset, bool msix, bool features_hi, u32 *config_off);
#endif /* KVM__VIRTIO_H */
diff --git a/tools/kvm/virtio/core.c b/tools/kvm/virtio/core.c
index d7c132b..0466e07 100644
--- a/tools/kvm/virtio/core.c
+++ b/tools/kvm/virtio/core.c
@@ -89,18 +89,6 @@ u16 virt_queue__get_inout_iov(struct kvm *kvm, struct virt_queue *queue,
return head;
}
-
-void virt_queue__trigger_irq(struct virt_queue *vq, int irq, u8 *isr, struct kvm *kvm)
-{
- if (vq->vring.avail->flags & VRING_AVAIL_F_NO_INTERRUPT)
- return;
-
- if (*isr == VIRTIO_IRQ_LOW) {
- *isr = VIRTIO_IRQ_HIGH;
- kvm__irq_line(kvm, irq, VIRTIO_IRQ_HIGH);
- }
-}
-
int virtio__get_dev_specific_field(int offset, bool msix, bool features_hi, u32 *config_off)
{
if (msix) {
--
1.7.7.1
^ permalink raw reply related [flat|nested] 5+ messages in thread