On 1/21/2016 7:09 PM, Tetsuya Mukawa wrote:
+static void
+qtest_handle_one_message(struct qtest_session *s, char *buf)
+{
+ int ret;
+
+ if (strncmp(buf, interrupt_message, strlen(interrupt_message)) == 0) {
+ if (rte_atomic16_read(&s->enable_intr) == 0)
+ return;
+
+ /* relay interrupt to pipe */
+ ret = write(s->irqfds.writefd, "1", 1);
How about the interrupt latency? Seems it is quite long.
+ if (ret < 0)
+ rte_panic("cannot relay interrupt\n");
+ } else {
+ /* relay normal message to pipe */
+ ret = qtest_raw_send(s->msgfds.writefd, buf, strlen(buf));
+ if (ret < 0)
+ rte_panic("cannot relay normal message\n");
+ }
+}