{"push_id":771438632,"size":543,"distinct_size":12,"ref":"refs/heads/ovn-rpm","head":"787a9a869896e8e3f3580292abdaef4d86a12f0b","before":"f2df365b35c669e303a097fd1a480d4cb6a5ec65","commits":[{"sha":"433637881ca5d1b71eed693afef162df8e529bff","author":{"email":"95dcc1879f3489c0d5163907cdd946775296b2dd@nicira.com","name":"Pravin B Shelar"},"message":"datapath: define compat __skb_gso_segment()\n\nOVS correctly define skb_gso_segment() to handle MPLS and VLAN\nsegmentation correctly. But OVS also uses __skb_gso_segment() in\nsome cases. Following patch defines compat __skb_gso_segment()\nto handle all segmentation cases.\n\nSigned-off-by: Pravin B Shelar <pshelar@nicira.com>\nAcked-by: Jesse Gross <jesse@nicira.com>","distinct":false,"url":"https://api.github.com/repos/russellb/ovs/commits/433637881ca5d1b71eed693afef162df8e529bff"},{"sha":"d0000b68f948536045cbf528198148020e1362eb","author":{"email":"bf7fdd7c3fd6489d712d8237c77d2ead4a52a687@cloudbasesolutions.com","name":"Sorin Vinturis"},"message":"datapath-windows: Added new function for native forwarded traffic\n\nSigned-off-by: Sorin Vinturis <svinturis@cloudbasesolutions.com>\nAcked-by: Nithin Raju <nithin@vmware.com>\nSigned-off-by: Ben Pfaff <blp@nicira.com>","distinct":false,"url":"https://api.github.com/repos/russellb/ovs/commits/d0000b68f948536045cbf528198148020e1362eb"},{"sha":"caa63627b5d885f1008142cf75fdfa97314df0b5","author":{"email":"bf7fdd7c3fd6489d712d8237c77d2ead4a52a687@cloudbasesolutions.com","name":"Sorin Vinturis"},"message":"datapath-windows: Correctly link newly allocated NBL\n\nOvsPartialCopyToMultipleNBLs function failed to correctly link the newly\ncreated NBL with single NB to the multiple NBLs list.\n\nSigned-off-by: Sorin Vinturis <svinturis@cloudbasesolutions.com>\nCo-authored-by: Alin Gabriel Serdean <aserdean@cloudbasesolutions.com>\nAcked-by: Nithin Raju <nithin@vmware.com>\nSigned-off-by: Ben Pfaff <blp@nicira.com>","distinct":false,"url":"https://api.github.com/repos/russellb/ovs/commits/caa63627b5d885f1008142cf75fdfa97314df0b5"},{"sha":"37ec7b365631bf4a8951b7567e7fb94aba80066a","author":{"email":"59969d4426ca8e68344c28a9fcbac155693c4b00@nicira.com","name":"Joe Stringer"},"message":"travis: Fix clang build for DPDK-2.0.\n\n-Wno-cast-align is a CFLAG, not a configure option.\n\nSigned-off-by: Joe Stringer <joestringer@nicira.com>\nAcked-by: Daniele Di Proietto <diproiettod@vmware.com>","distinct":false,"url":"https://api.github.com/repos/russellb/ovs/commits/37ec7b365631bf4a8951b7567e7fb94aba80066a"},{"sha":"3afcde4381bd0fdcb9eb711bf49b14a48d64e944","author":{"email":"59969d4426ca8e68344c28a9fcbac155693c4b00@nicira.com","name":"Joe Stringer"},"message":"datapath: Add support for 4.0 kernel.\n\nSigned-off-by: Joe Stringer <joestringer@nicira.com>\nAcked-by: Jesse Gross <jesse@nicira.com>","distinct":false,"url":"https://api.github.com/repos/russellb/ovs/commits/3afcde4381bd0fdcb9eb711bf49b14a48d64e944"},{"sha":"36be51c5b09c97a62c342e8ff0bb2d1a33ea2b68","author":{"email":"6f50513b21952446fbc8c95a8f361b7aa434b7c7@nicira.com","name":"Ben Pfaff"},"message":"ofp-util: Use OFPGMFC_OUT_OF_BUCKETS for indirect groups with !=1 buckets.\n\nOpenFlow 1.3 says:\n\n    If a switch cannot add the incoming group entry due to restrictions\n    (hardware or otherwise) limiting the number of group buckets, it must\n    refuse to add the group entry and must send an ofp_error_msg with\n    OFPET_GROUP_MOD_FAILED type and OFPGMFC_OUT_OF_BUCKETS code.\n\nThis indicates that OFPGMFC_OUT_OF_BUCKETS is appropriate for an indirect\ngroup with the wrong number of buckets, but OVS was using a different\nerror.  This fixes the problem.\n\nONF-JIRA: EXT-546\nReported-by: Mrinmoy Das <mrdas@ixiacom.com>\nSigned-off-by: Ben Pfaff <blp@nicira.com>\nAcked-by: Justin Pettit <jpettit@nicira.com>","distinct":false,"url":"https://api.github.com/repos/russellb/ovs/commits/36be51c5b09c97a62c342e8ff0bb2d1a33ea2b68"},{"sha":"c875bb948df059855c18b29bdfbfbfcb986e607a","author":{"email":"0a27e12d062ad71673d57f9c2799b207af316885@nicira.com","name":"Ethan Jackson"},"message":"utilities: Add new pipeline generator script.\n\nWhen doing OVS performance testing, it's important to have both\nrealistic traffic traces and OpenFlow pipelines on which to evaluate\nprospective changes.  As a first step in this direction, this patch\nadds a python script which generates an OpenFlow pipeline intended to\nsimulate typical network virtualization workloads.\n\nSigned-off-by: Ethan Jackson <ethan@nicira.com>\nAcked-by: Daniele Di Proietto <diproiettod@vmware.com>","distinct":false,"url":"https://api.github.com/repos/russellb/ovs/commits/c875bb948df059855c18b29bdfbfbfcb986e607a"},{"sha":"4345e1b5bf563ebfd7a7dcf489eac0fdf68135cf","author":{"email":"8acc8660885e65b042541ee2d72caf0d18b08108@intel.com","name":"Kevin Traynor"},"message":"netdev-dpdk: Change phy rx burst size.\n\nChange phy rx burst size from 192 to 32. This aligns the\nburst size with the other dpdk interfaces and significantly\nimproves performance when forwarding to dpdk vhost ports.\n\nSigned-off-by: Kevin Traynor <kevin.traynor@intel.com>\nAcked-by: Pravin B Shelar <pshelar@nicira.com>","distinct":false,"url":"https://api.github.com/repos/russellb/ovs/commits/4345e1b5bf563ebfd7a7dcf489eac0fdf68135cf"},{"sha":"95e9881f843896751a76481cfe7869e2c0c1270b","author":{"email":"8acc8660885e65b042541ee2d72caf0d18b08108@intel.com","name":"Kevin Traynor"},"message":"netdev-dpdk: Add vhost enqueue retries.\n\nThe max allowed burst size for a single vhost enqueue is 32.\nThis code facilitates trying to send greater than the burst\nsize of packets to the vhost interface by adding a retry loop\nand calling vhost enqueue multiple times. As this could\npotentially block, a timeout is added.\n\nSigned-off-by: Kevin Traynor <kevin.traynor@intel.com>\nSigned-off-by: Pravin B Shelar <pshelar@nicira.com>","distinct":false,"url":"https://api.github.com/repos/russellb/ovs/commits/95e9881f843896751a76481cfe7869e2c0c1270b"},{"sha":"9899125aaae9f0634f43307cc0ff72f5afb287bb","author":{"email":"f9c2e26bb78c757b024259fd6820f5914319755d@canonical.com","name":"Oleg Strikov"},"message":"INSTALL.DPDK: Notes on running ovs-vswitchd/dpdk inside a VM\n\nAdditional configuration is required if you want to run ovs-vswitchd\nwith DPDK backend inside a QEMU virtual machine. This happens because,\nby default, virtio NIC provided to the guest doesn't support multiple\nTX queues which are required by ovs-vswitchd/dpdk. This commit updates\nINSTALL.DPDK.md to provide guidelines on how to enable support for\nmultiple TX queues using QEMU command line and Libvirt config file.\n\nSigned-off-by: Oleg Strikov <oleg.strikov@canonical.com>\nAcked-by: Pravin B Shelar <pshelar@nicira.com>","distinct":false,"url":"https://api.github.com/repos/russellb/ovs/commits/9899125aaae9f0634f43307cc0ff72f5afb287bb"},{"sha":"d23239a29f566f4c73d1d871a6cf55da90a9fa8e","author":{"email":"95dcc1879f3489c0d5163907cdd946775296b2dd@nicira.com","name":"Pravin B Shelar"},"message":"datapath: backport kfree_skb_list()\n\nSigned-off-by: Pravin B Shelar <pshelar@nicira.com>\nAcked-by: Jesse Gross <jesse@nicira.com>","distinct":false,"url":"https://api.github.com/repos/russellb/ovs/commits/d23239a29f566f4c73d1d871a6cf55da90a9fa8e"},{"sha":"91f831671269ade5e936812ae1dc1950105c748d","author":{"email":"95dcc1879f3489c0d5163907cdd946775296b2dd@nicira.com","name":"Pravin B Shelar"},"message":"datapath: Fix Sparse warning.\n\nCHECK   /home/pravin/ovs/w8/datapath/linux/flow_table.c\n/home/pravin/ovs/w8/datapath/linux/flow_table.c:536:6: warning: symbol\n'ovs_flow_cmp_unmasked_key' was not declared. Should it be static?\n\nSigned-off-by: Pravin B Shelar <pshelar@nicira.com>\nAcked-by: Jesse Gross <jesse@nicira.com>","distinct":false,"url":"https://api.github.com/repos/russellb/ovs/commits/91f831671269ade5e936812ae1dc1950105c748d"},{"sha":"401aa90e33befe59f47c48a21221613149bf811e","author":{"email":"c6b3e065ce2d7a6de7979198ff8ba237dcfdb756@nicira.com","name":"Jarno Rajahalme"},"message":"ofproto: Fix memory leak in flow deletion.\n\nFix a memory leak that was introduced in commit 834fe5cb997b (ofproto:\nAdditional simplifications.).  We used to unref the flow\nasynchronously, but forgot to do it when the support for asynchronous\noperations was removed.\n\nSigned-off-by: Jarno Rajahalme <jrajahalme@nicira.com>\nAcked-by: Ben Pfaff <blp@nicira.com>","distinct":false,"url":"https://api.github.com/repos/russellb/ovs/commits/401aa90e33befe59f47c48a21221613149bf811e"},{"sha":"8613db65be6a4641eebc01765637701287f78efc","author":{"email":"40d7d146beb884a90ded29e4fa403bf5a1c3b72e@vmware.com","name":"Daniele Di Proietto"},"message":"dp-packet: Remove 'list' member.\n\nThe 'list' member is only used (two users) in the slow path.\nThis commit removes it to reduce the struct size\n\nSigned-off-by: Daniele Di Proietto <diproiettod@vmware.com>\nAcked-by: Pravin B Shelar <pshelar@nicira.com>","distinct":false,"url":"https://api.github.com/repos/russellb/ovs/commits/8613db65be6a4641eebc01765637701287f78efc"},{"sha":"82eb5b0abaf0125898a89e032f27fdd08e03169b","author":{"email":"40d7d146beb884a90ded29e4fa403bf5a1c3b72e@vmware.com","name":"Daniele Di Proietto"},"message":"dp-packet: Remove 'frame' member.\n\nIn 'struct ofpbuf' the 'frame' pointer was used to parse different kinds of\ndata (Ethernet, OpenFlow, Netlink attributes).  For Ethernet packets the\n'frame' pointer was supposed to have the same value as the 'data'\npointer.\n\nSince 'struct dp_packet' is only used for Ethernet packets, there's no\nneed for a separate 'frame' pointer: we can use the 'data' pointer\ninstead.\n\nSigned-off-by: Daniele Di Proietto <diproiettod@vmware.com>\nAcked-by: Pravin B Shelar <pshelar@nicira.com>","distinct":false,"url":"https://api.github.com/repos/russellb/ovs/commits/82eb5b0abaf0125898a89e032f27fdd08e03169b"},{"sha":"11a6fbd553ec46b890459e82e5387d28a2664695","author":{"email":"40d7d146beb884a90ded29e4fa403bf5a1c3b72e@vmware.com","name":"Daniele Di Proietto"},"message":"dp-packet: Merge 'allocated' member with DPDK mbuf 'buf_len'.\n\nDPDK buf_len is only 16-bit wide ('allocated' was 32-bit), but it should\nbe enough to store the number of allocated bytes.\n\nThis will reduce 'struct dp_packet' size.\n\nSigned-off-by: Daniele Di Proietto <diproiettod@vmware.com>\nAcked-by: Pravin B Shelar <pshelar@nicira.com>","distinct":false,"url":"https://api.github.com/repos/russellb/ovs/commits/11a6fbd553ec46b890459e82e5387d28a2664695"},{"sha":"5a07c6e177af50a38bf37600c315f6d4a6b47b91","author":{"email":"40d7d146beb884a90ded29e4fa403bf5a1c3b72e@vmware.com","name":"Daniele Di Proietto"},"message":"dp-packet: Style fixes.\n\nAlso, removes an unused function\n\nSigned-off-by: Daniele Di Proietto <diproiettod@vmware.com>\nAcked-by: Pravin B Shelar <pshelar@nicira.com>","distinct":false,"url":"https://api.github.com/repos/russellb/ovs/commits/5a07c6e177af50a38bf37600c315f6d4a6b47b91"},{"sha":"efa2bcbb358b0cb71524d5ad329edb495c123d11","author":{"email":"40d7d146beb884a90ded29e4fa403bf5a1c3b72e@vmware.com","name":"Daniele Di Proietto"},"message":"dpif-netdev: Store pkt_metadata structure in dp_netdev_port.\n\nInitializing a struct pkt_metadata for every packet can be surprisingly\nexpensive.  It's much faster to keep a copy for each port and copying it\non each packet.\n\nSuggested-by: Pravin Shelar <pshelar@nicira.com>\nSigned-off-by: Daniele Di Proietto <diproiettod@vmware.com>\nAcked-by: Pravin B Shelar <pshelar@nicira.com>","distinct":false,"url":"https://api.github.com/repos/russellb/ovs/commits/efa2bcbb358b0cb71524d5ad329edb495c123d11"},{"sha":"11e5cf1f9043637613502f4477c8fd5ce6d65f12","author":{"email":"40d7d146beb884a90ded29e4fa403bf5a1c3b72e@vmware.com","name":"Daniele Di Proietto"},"message":"dpif-netdev: Store batch pointer in dp_netdev_flow.\n\nThe userspace datapath\n\n1. receives a batch of packets.\n2. finds a 'netdev_flow' (megaflow) for each packet.\n3. groups the packets in output batches based on the 'netdev_flow'.\n\nUntil now the grouping (2) was done using a simple algorithm with a\nO(N^2) runtime, where N is the number of distinct megaflows of the packets\nin the incoming batch.  This could quickly become a bottleneck, even with\na small number of megaflows.\n\nWith this commit the datapath simply stores in the 'netdev_flow' (the\nmegaflow) a pointer to the output batch, if one has been created for the\ncurrent input batch.  The pointer will be cleared when the output batch\nis sent.\n\nIn a simple phy2phy test with 128 megaflows the throughput is more than\ndoubled.\n\nThe reason that stopped us from doing this change was that the\n'netdev_flow' memory was shared between multiple threads: this is no\nlonger the case with the per-thread classifier.\n\nAlso, this commit reorders struct dp_netdev_flow to group toghether the\nmembers used in the fastpath.\n\nSigned-off-by: Daniele Di Proietto <diproiettod@vmware.com>\nAcked-by: Pravin B Shelar <pshelar@nicira.com>","distinct":false,"url":"https://api.github.com/repos/russellb/ovs/commits/11e5cf1f9043637613502f4477c8fd5ce6d65f12"},{"sha":"8aaa125dab663595329063560b33fe7d62839b7a","author":{"email":"40d7d146beb884a90ded29e4fa403bf5a1c3b72e@vmware.com","name":"Daniele Di Proietto"},"message":"dpif-netdev: Share emc and fast path output batches.\n\nUntil now the exact match cache processing was able to handle only four\nmegaflows.  The rest of the packets was passed to the megaflow\nclassifier.\n\nThe limit was arbitraly set to four also because the algorithm used to\ngroup packets in output batches didn't perform well with a lot of\nmegaflows.\n\nAfter changing the algorithm and after some performance testing it seems\nmuch better just to share the same output batches between the exact\nmatch cache and the megaflow classifier.\n\nSigned-off-by: Daniele Di Proietto <diproiettod@vmware.com>\nAcked-by: Pravin B Shelar <pshelar@nicira.com>","distinct":false,"url":"https://api.github.com/repos/russellb/ovs/commits/8aaa125dab663595329063560b33fe7d62839b7a"}]}