From nobody Thu Oct 30 23:12:12 2025 Delivered-To: importer@patchew.org Received-SPF: pass (zohomail.com: domain of lists.xenproject.org designates 192.237.175.120 as permitted sender) client-ip=192.237.175.120; envelope-from=xen-devel-bounces@lists.xenproject.org; helo=lists.xenproject.org; Authentication-Results: mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of lists.xenproject.org designates 192.237.175.120 as permitted sender) smtp.mailfrom=xen-devel-bounces@lists.xenproject.org; dmarc=pass(p=none dis=none) header.from=gmail.com ARC-Seal: i=1; a=rsa-sha256; t=1753824743; cv=none; d=zohomail.com; s=zohoarc; b=XEO7awZl+a0EbpsdlMfAYWz/6HogxGBTJwIBQ9i2htgaJXP0rR00fgxfU3KLIZ9WUdJOlgAVvPrj9ab+kfjd8Tz4EfxannF6zFGaEMYHY5k1Yn6JdmK4Nx7Xal3alSqOT3obANDY7pfLBpFASjL12xqn53QTsTkjqIIH8NE7pA4= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1753824743; h=Content-Type:Content-Transfer-Encoding:Cc:Cc:Date:Date:From:From:In-Reply-To:List-Subscribe:List-Post:List-Id:List-Help:List-Unsubscribe:MIME-Version:Message-ID:References:Sender:Subject:Subject:To:To:Message-Id:Reply-To; bh=gYS1r36qs+Kqa8dRxSHhrgjOqY6KhuerE4DlOOPShYQ=; b=jBmCs8pnHB78b6WOliV/16ItPnXWCaueYs2n2dZHgFL82RMKmJTwp+G1AXzD8ogKwTWF9m+vVxrjldw2axIWhwPCCzsaXHqOLKC28HnmfOYqoFtPrP7bu10kYwSv+olA8jGi549jWpMkPMr7TFPux87awwF4VNLMUn2E7AXJjd0= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of lists.xenproject.org designates 192.237.175.120 as permitted sender) smtp.mailfrom=xen-devel-bounces@lists.xenproject.org; dmarc=pass header.from= (p=none dis=none) Return-Path: Received: from lists.xenproject.org (lists.xenproject.org [192.237.175.120]) by mx.zohomail.com with SMTPS id 1753824743023886.5413601285751; Tue, 29 Jul 2025 14:32:23 -0700 (PDT) Received: from list by lists.xenproject.org with outflank-mailman.1063124.1428913 (Exim 4.92) (envelope-from ) id 1ugrve-0000p4-Jn; Tue, 29 Jul 2025 21:32:10 +0000 Received: by outflank-mailman (output) from mailman id 1063124.1428913; Tue, 29 Jul 2025 21:32:10 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1ugrve-0000ox-Fh; Tue, 29 Jul 2025 21:32:10 +0000 Received: by outflank-mailman (input) for mailman id 1063124; Tue, 29 Jul 2025 21:32:09 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1ugrou-0004NS-Ie for xen-devel@lists.xenproject.org; Tue, 29 Jul 2025 21:25:12 +0000 Received: from mail-ed1-x52d.google.com (mail-ed1-x52d.google.com [2a00:1450:4864:20::52d]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id 8299ac26-6cc2-11f0-a320-13f23c93f187; Tue, 29 Jul 2025 23:25:12 +0200 (CEST) Received: by mail-ed1-x52d.google.com with SMTP id 4fb4d7f45d1cf-615234e9d3aso352079a12.0 for ; Tue, 29 Jul 2025 14:25:12 -0700 (PDT) Received: from lab.home (dynamic-2a00-1028-83a4-4bca-c0bb-96ff-feed-9d50.ipv6.o2.cz. [2a00:1028:83a4:4bca:c0bb:96ff:feed:9d50]) by smtp.gmail.com with ESMTPSA id 4fb4d7f45d1cf-6156591fe7bsm1587728a12.51.2025.07.29.14.25.10 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Tue, 29 Jul 2025 14:25:10 -0700 (PDT) X-Outflank-Mailman: Message body and most headers restored to incoming version X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 8299ac26-6cc2-11f0-a320-13f23c93f187 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1753824311; x=1754429111; darn=lists.xenproject.org; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=gYS1r36qs+Kqa8dRxSHhrgjOqY6KhuerE4DlOOPShYQ=; b=U5CQxhWZKvZnjz6Mj2dVSFW1JfGLGluXBdvF+Z743y6q2x7pGhY1JcwYlhmSupNykX IcL320zDtvOnFsYNQwf+n5cnj6t3mtpQ16RaUjcRbBh1BdnchqlDdNDR1wdqHoKzp6LT 2ROVV4wvmt8Vm0S/XgxKG5P1gg2B9zAj4CNaE8+3JOYuoi2HXqqg9nPLIA0uCqDnHMro lZmnKH+9+7ZeMdIu4+cJcU3NjSq7MUBwBEh4T9N+ZNDqim0SYAWA0VOBsk4eO5Iyo6IU eynwFARZ/jkT+4ET43vfvOBjfV55FdCqltpmfavFj7F8thSWn+uXYIMMU1KmtFmfnXEo aHHw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1753824311; x=1754429111; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=gYS1r36qs+Kqa8dRxSHhrgjOqY6KhuerE4DlOOPShYQ=; b=IU3c4/xvY+xgaITGLUKLSr99RQ7ovSjkLJliLYY9Jsf2XMeXRS3xnipVYdda3k9/o1 GNkExAcz0K/mHoPGzhUCL4I49X++fsC06opduUBpUywZfz53e4AKzzkEvIZQ+xBdPRvE 5XmT6jqjGk+1d+m2yOvZAW0NZIHGgtDj+n6Q7xovcFwo0myDPOERJijx9JXEzks4xUCE oceu997W2x7M9Iho3/B3NhpniE8Mqel1gBuNpIL2sg1WjoxeL94YHGd5cdzjozunvMuf hw9RobLX8yDhclZzK/3jEUov3pGxkXJgdI0bU/5SEEg7xafeWs/Jkx33ne6yjslelev+ 8lGA== X-Gm-Message-State: AOJu0YwSVSgFh6cNhqGE7mYjFM8XyB1ckYK8iGYz4IBSTBwXwdGL5pDB F4k7jqqwGFivrmmFvS4ln1JyrMykYjOQ3QQ+eqOR3SSlneqsD/W9aDiu0gExikudYe8= X-Gm-Gg: ASbGncvJT1MXGfaYNSc/HIjP58TKrRFlyUq5SzGhWxJeRZ1qa2v17IH/S1YxUsl9MDL cHT7A5MMHm59XntMQZa5aQ6nS3oXjUTkqObSukWEvi4bqOOlOwkVumW9M7OD/DZLsT1nQOBRBOP RZrfF3tdNApGEGOmG7s5KbiLves0ahnCuA2vB3vsJFzj5FibcrC3UCUZpNdTqiaa6/gFa5lXAqJ GrTEQrb4c8bA9Pxk4Matcgvr95hX1SPuZqvoapGHD1C88kSr4lffFNkVUpOyJcA+at3XLFEpJ/+ OZaB5aP2SXw51CA5WHkgf9TqWQlKHrdO5HKxovC1hzYoVyypBYWhIxJF2oU3QN7HU82Erl+tMhL CpAaAoQmUCXiCmu0xnib3PkS1QeaeTjujt0XEST5XpWyWKTy2320RUjiIYowNSZuM9iztTAcx3B zjEpI6KdAaQLQDYX9DGUguYg== X-Google-Smtp-Source: AGHT+IFUVt7RK+iIy4ct7MC7XBalbUEwTJ/tJpRWMV07x51wKB3a1AP0vBElMPIFL4EW2rRi0Ch/lw== X-Received: by 2002:a05:6402:2110:b0:615:61fb:49e9 with SMTP id 4fb4d7f45d1cf-615871f3892mr469186a12.7.1753824310880; Tue, 29 Jul 2025 14:25:10 -0700 (PDT) From: "=?UTF-8?q?Petr=20Bene=C5=A1?=" X-Google-Original-From: =?UTF-8?q?Petr=20Bene=C5=A1?= To: xen-devel@lists.xenproject.org Cc: =?UTF-8?q?Petr=20Bene=C5=A1?= , Anthony PERARD Subject: [PATCH v3 1/3] tools: add sizeof_field and offsetofend macros Date: Tue, 29 Jul 2025 21:25:04 +0000 Message-Id: <556d53ef59bf771a727bd49116e91bb515ed7ec6.1753823663.git.w1benny@gmail.com> X-Mailer: git-send-email 2.34.1 In-Reply-To: References: MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable X-ZohoMail-DKIM: pass (identity @gmail.com) X-ZM-MESSAGEID: 1753824744721116600 From: Petr Bene=C5=A1 'offsetofend' macro appears in Linux codebase, so the name was chosen to be consistent with it. Signed-off-by: Petr Bene=C5=A1 --- tools/include/xen-tools/common-macros.h | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/tools/include/xen-tools/common-macros.h b/tools/include/xen-to= ols/common-macros.h index 0088208c2e..c98a6beffd 100644 --- a/tools/include/xen-tools/common-macros.h +++ b/tools/include/xen-tools/common-macros.h @@ -83,6 +83,11 @@ #define __packed __attribute__((__packed__)) #endif =20 +#define sizeof_field(type, member) sizeof(((type *)NULL)->member) + +#define offsetofend(type, member) \ + (offsetof(type, member) + sizeof_field(type, member)) + #define container_of(ptr, type, member) ({ \ typeof(((type *)0)->member) *mptr__ =3D (ptr); \ (type *)((char *)mptr__ - offsetof(type, member)); \ --=20 2.34.1