From owner-soc-status@FreeBSD.ORG Thu Jul 21 00:33:40 2011 Return-Path: Delivered-To: soc-status@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 90CAE106566B; Thu, 21 Jul 2011 00:33:40 +0000 (UTC) (envelope-from syuu@dokukino.com) Received: from mail-qw0-f54.google.com (mail-qw0-f54.google.com [209.85.216.54]) by mx1.freebsd.org (Postfix) with ESMTP id 241EE8FC0C; Thu, 21 Jul 2011 00:33:39 +0000 (UTC) Received: by qwc9 with SMTP id 9so536085qwc.13 for ; Wed, 20 Jul 2011 17:33:39 -0700 (PDT) Received: by 10.229.49.17 with SMTP id t17mr375548qcf.57.1311208419107; Wed, 20 Jul 2011 17:33:39 -0700 (PDT) MIME-Version: 1.0 Received: by 10.229.229.71 with HTTP; Wed, 20 Jul 2011 17:32:59 -0700 (PDT) From: Takuya ASADA Date: Thu, 21 Jul 2011 09:32:59 +0900 Message-ID: To: soc-status@freebsd.org, Kazuya Goda , "Robert N. M. Watson" , George Neville-Neil Content-Type: text/plain; charset=UTF-8 Cc: Subject: [mq_bpf] status report #8 X-BeenThere: soc-status@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: Summer of Code Status Reports and Discussion List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 21 Jul 2011 00:33:40 -0000 *Project summary The project goal is to support multiqueue network interface on BPF, and provide interfaces for multithreaded packet processing using BPF. Modern high performance NICs have multiple receive/send queues and RSS feature, this allows to process packet concurrently on multiple processors. Main purpose of the project is to support these hardware and get benefit of parallelism. Here's status update from last week: - Implemented test_mqbpf - Move tests to src/tools/regression/bpf/mq_bpf - I realized d->bd_qmask is not protected from parallel access, it was the reason mq_bpf was unstable. BPFQ_LOCK added for it - BPFIF_LOCK rewrited as rwlock again - Measuring performance of mq_bpf using test_sqbpf/test_mqbpf Commit logs: http://p4web.freebsd.org/@@196193?ac=10 test_mqbpf implemented. http://p4web.freebsd.org/@@196219?ac=10 test_mqbpf fix, BPFIF_LOCK reverted to mtx to stabilize, remove LOG_DEBUG and SDT for debugging, HASHTYPE support for igb http://p4web.freebsd.org/@@196221?ac=10 test_mqbpf bug fix http://p4web.freebsd.org/@@196391?ac=10 remove debug logging/dtrace probe http://p4web.freebsd.org/@@196392?ac=10 Define RSSTYPE on header. http://p4web.freebsd.org/@@196395?ac=10 follow style(9). http://p4web.freebsd.org/@@196397?ac=10 NULL check before free() http://p4web.freebsd.org/@@196400?ac=10 unified variable name from rxq/txq to rxqueue/txqueue. http://p4web.freebsd.org/@@196403?ac=10 skip genarating flowid on multiqueue if. http://p4web.freebsd.org/@@196458?ac=10 lock bpf_d during reading/writing qmask, reduce number of threads on test_mqbpf http://p4web.freebsd.org/@@196464?ac=10 Rewrite BPFIF_LOCK to rwlock, rwlock for bpf_qmask added, tests moved to src/tools/regression/bpf/mq_bpf http://p4web.freebsd.org/@@196466?ac=10 NULL check is not needed for free(9), pointed out by Joshua Neal