From mboxrd@z Thu Jan  1 00:00:00 1970
Received: from us-smtp-delivery-124.mimecast.com (us-smtp-delivery-124.mimecast.com [170.10.129.124])
	by passt.top (Postfix) with ESMTP id B1CD85A0278
	for <passt-dev@passt.top>; Thu, 29 Feb 2024 17:59:59 +0100 (CET)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com;
	s=mimecast20190719; t=1709225998;
	h=from:from:reply-to:subject:subject:date:date:message-id:message-id:
	 to:to:cc:cc:mime-version:mime-version:content-type:content-type:
	 content-transfer-encoding:content-transfer-encoding;
	bh=u78Xn08r/3y4eo9NLUWjHEw97ZFcvfGNgwBGUmNwtZU=;
	b=RGuEiC4N3sO4Oy2Sed0U2vEQvgEGefEY+lVH5ZUodCCS+8MN/NCfxCtS9q/Um/c2D97YbB
	gsMKyV0AUC6EbrokSVDEsoFyw7iybOLjO2fP3u4axipSkeZ4LT658wZ+1yDE8HR3M6Cvrw
	kX83n2SaKww+xY6Typf1FKi6VR/K7qE=
Received: from mimecast-mx02.redhat.com (mimecast-mx02.redhat.com
 [66.187.233.88]) by relay.mimecast.com with ESMTP with STARTTLS
 (version=TLSv1.3, cipher=TLS_AES_256_GCM_SHA384) id
 us-mta-313-WplXasmdPRCJtisHK3BFVg-1; Thu, 29 Feb 2024 11:59:56 -0500
X-MC-Unique: WplXasmdPRCJtisHK3BFVg-1
Received: from smtp.corp.redhat.com (int-mx06.intmail.prod.int.rdu2.redhat.com [10.11.54.6])
	(using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)
	 key-exchange X25519 server-signature RSA-PSS (2048 bits) server-digest SHA256)
	(No client certificate requested)
	by mimecast-mx02.redhat.com (Postfix) with ESMTPS id 71A5B85A58C
	for <passt-dev@passt.top>; Thu, 29 Feb 2024 16:59:56 +0000 (UTC)
Received: from virtlab218.virt.lab.eng.bos.redhat.com (virtlab218.virt.lab.eng.bos.redhat.com [10.19.152.190])
	by smtp.corp.redhat.com (Postfix) with ESMTP id 58FE22166B5D;
	Thu, 29 Feb 2024 16:59:56 +0000 (UTC)
From: Laurent Vivier <lvivier@redhat.com>
To: passt-dev@passt.top
Subject: [PATCH v4 0/8] Add vhost-user support to passt (part 1)
Date: Thu, 29 Feb 2024 17:59:47 +0100
Message-ID: <20240229165955.829476-1-lvivier@redhat.com>
MIME-Version: 1.0
X-Scanned-By: MIMEDefang 3.4.1 on 10.11.54.6
X-Mimecast-Spam-Score: 0
X-Mimecast-Originator: redhat.com
Content-Type: text/plain; charset="utf-8"
Content-Transfer-Encoding: 8bit
Message-ID-Hash: URQWQAKGMT6SC5EUQRY4OEV4MGFNJZOU
X-Message-ID-Hash: URQWQAKGMT6SC5EUQRY4OEV4MGFNJZOU
X-MailFrom: lvivier@redhat.com
X-Mailman-Rule-Misses: dmarc-mitigation; no-senders; approved; emergency; loop; banned-address; member-moderation; nonmember-moderation; administrivia; implicit-dest; max-recipients; max-size; news-moderation; no-subject; digests; suspicious-header
CC: Laurent Vivier <lvivier@redhat.com>
X-Mailman-Version: 3.3.8
Precedence: list
List-Id: Development discussion and patches for passt <passt-dev.passt.top>
Archived-At: <https://archives.passt.top/passt-dev/20240229165955.829476-1-lvivier@redhat.com/>
Archived-At: <https://passt.top/hyperkitty/list/passt-dev@passt.top/message/URQWQAKGMT6SC5EUQRY4OEV4MGFNJZOU/>
List-Archive: <https://archives.passt.top/passt-dev/>
List-Archive: <https://passt.top/hyperkitty/list/passt-dev@passt.top/>
List-Help: <mailto:passt-dev-request@passt.top?subject=help>
List-Owner: <mailto:passt-dev-owner@passt.top>
List-Post: <mailto:passt-dev@passt.top>
List-Subscribe: <mailto:passt-dev-join@passt.top>
List-Unsubscribe: <mailto:passt-dev-leave@passt.top>

v4:
  - rebase
  - see detailed v4 history log in each patch

v3:
  - add a patch that has been extracted from:
    "tcp: extract buffer management from tcp_send_flag()"
    -> "tcp: Introduce ipv4_fill_headers()/ipv6_fill_headers()"
  - see detailed v3 history log in each patch
  - I didn't address the alignment problem when we provide a pointer
    to a sub-structure in the internal buffer structure.
    (for the last patches of the series).

v2 comparing to vhost-user full part:
  - part 1 includes only preliminary patches (checksum, iovec, cleanup)
  - see detailed v2 history log in each patch.

Full series v1 available at:

  [PATCH 00/24] Add vhost-user support to passt.
  https://url.corp.redhat.com/passt-vhost-user-v1

Thanks,
Laurent

Laurent Vivier (8):
  pcap: add pcap_iov()
  checksum: align buffers
  checksum: add csum_iov()
  util: move IP stuff from util.[ch] to ip.[ch]
  checksum: use csum_ip4_header() in udp.c and tcp.c
  checksum: introduce functions to compute the header part checksum for
    TCP/UDP
  tap: make tap_update_mac() generic
  tcp: Introduce ipv4_fill_headers()/ipv6_fill_headers()

 Makefile     |  10 +--
 checksum.c   | 173 ++++++++++++++++++++++++++++++-----------
 checksum.h   |   9 ++-
 conf.c       |   1 +
 dhcp.c       |   1 +
 flow.c       |   1 +
 fwd.c        |   1 +
 icmp.c       |   1 +
 inany.c      |   1 +
 ip.c         |  72 +++++++++++++++++
 ip.h         |  86 +++++++++++++++++++++
 ndp.c        |   1 +
 pcap.c       |  26 ++++++-
 pcap.h       |   1 +
 qrap.c       |   1 +
 tap.c        |  14 ++--
 tap.h        |   2 +-
 tcp.c        | 214 +++++++++++++++++++++++++++++----------------------
 tcp_splice.c |   1 +
 udp.c        |  38 ++++-----
 util.c       |  55 -------------
 util.h       |  76 ------------------
 22 files changed, 475 insertions(+), 310 deletions(-)
 create mode 100644 ip.c
 create mode 100644 ip.h

-- 
2.42.0