From nobody Mon Feb 9 15:10:50 2026 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=reject dis=none) header.from=citrix.com ARC-Seal: i=1; a=rsa-sha256; t=1700755746; cv=none; d=zohomail.com; s=zohoarc; b=MSgo7a5bKekHCP65adbM2/t9zda1ssFo+F7X4bFLjJiVSyBNiVN0QYDF0mAML0PegcS+ciBWfZUJUaO7aCPY1YbLRU1tlFMGT+QkMTkcH69B+FedLe5DodxC4ecixOqTGZEUEQFteUgREU+AK5KZU9AN+4nXLt+0mkqsnf0TnRI= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1700755746; 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=nfobU6oQZA/gb41m+Lcagy1PuTHLFIO9Dot16l0EkH8=; b=IqXT0XOqasrS8bLi758IpytcW3cwq8mOqB9EWI0RL5t5vilpJ+oHzXf9S4/J2FsScobULOxyCMPBkbYW7S52OYsBYi7Mu5kF+Odn2U4Ow43OMObUDjIwkjm3K9sFmENYBmi5QTGamV2Ajoq8EOjbRQMm3XJgy5PZjbV6Qo1D0LE= 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=reject dis=none) Return-Path: Received: from lists.xenproject.org (lists.xenproject.org [192.237.175.120]) by mx.zohomail.com with SMTPS id 1700755746585356.646778687257; Thu, 23 Nov 2023 08:09:06 -0800 (PST) Received: from list by lists.xenproject.org with outflank-mailman.639826.997529 (Exim 4.92) (envelope-from ) id 1r6CFs-0003IT-0W; Thu, 23 Nov 2023 16:08:40 +0000 Received: by outflank-mailman (output) from mailman id 639826.997529; Thu, 23 Nov 2023 16:08:39 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1r6CFr-0003IM-T7; Thu, 23 Nov 2023 16:08:39 +0000 Received: by outflank-mailman (input) for mailman id 639826; Thu, 23 Nov 2023 16:08:38 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1r6CFq-0002oi-DN for xen-devel@lists.xenproject.org; Thu, 23 Nov 2023 16:08:38 +0000 Received: from mail-lj1-x230.google.com (mail-lj1-x230.google.com [2a00:1450:4864:20::230]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id 8efde5f9-8a1a-11ee-9b0e-b553b5be7939; Thu, 23 Nov 2023 17:08:36 +0100 (CET) Received: by mail-lj1-x230.google.com with SMTP id 38308e7fff4ca-2c5b7764016so11767431fa.1 for ; Thu, 23 Nov 2023 08:08:36 -0800 (PST) Received: from localhost ([213.195.113.99]) by smtp.gmail.com with ESMTPSA id z4-20020a1c4c04000000b0040b32edf626sm2389446wmf.31.2023.11.23.08.08.35 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 23 Nov 2023 08:08:35 -0800 (PST) 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: 8efde5f9-8a1a-11ee-9b0e-b553b5be7939 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=citrix.com; s=google; t=1700755716; x=1701360516; 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=nfobU6oQZA/gb41m+Lcagy1PuTHLFIO9Dot16l0EkH8=; b=n3/NcrC++yMlQc7SToGcbcGxTQbrfQjd+Oj1O6IF9vwHzVGD2bpiEotcmLvPXVSIgV UgS0yq1fusDeYRSYfjVvaTIEEf0eizxBSRToesjCW4YIlbZ2v907U+9mWsyY0Ee2VZtX 9nAXkeUgRCCI+kFAdz+N742wh1DkkVxIUaGvw= X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1700755716; x=1701360516; 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=nfobU6oQZA/gb41m+Lcagy1PuTHLFIO9Dot16l0EkH8=; b=Ov9b16DQcrk5M5UF/r5Bn477l7zjxmesJtREr4tdIV9adxuG+HNzg6ebQtERcBCG75 j0JQtppOToMT5A2Ou7smbiHLcZ25B5vot8UdIBskaP4Qv2aBOQJlahaZ5o8+FygsswUQ xTAUlPNOc37WeJ6DdnubyzDsz2DvZQNxg9aVu/zdOSN+L5fm4X4k5m9K4PZgZVICIdfR 7Dh+BovYt88NFkKQPmozLZvaglQte/+If0axk0IFEHtPur7bK78i0CUqsKFu+GL72hTR 0eNiaWopgnkA2VnSylCoJP54djA0VvFABIYqJDDHRaojUj41mffNSuxfZA4cqrlm7+rS A2hQ== X-Gm-Message-State: AOJu0Yz/+1IDQxV+U+1Uf6oXPBPLU6UvjZFKRFq93P6b89FmPKwqpDpN Y5jDKpP8djCh91LtuECKa2M66/z7ODz3BpyZrH8= X-Google-Smtp-Source: AGHT+IErJ5LvfgBLNdXMU2XeRi7CmqTTb4oF0dHB65UIsSG26Lhx5thivbpCT/4zNzHhguujexxr8A== X-Received: by 2002:a2e:9f4e:0:b0:2c5:f1a:1f31 with SMTP id v14-20020a2e9f4e000000b002c50f1a1f31mr3188351ljk.1.1700755716042; Thu, 23 Nov 2023 08:08:36 -0800 (PST) From: Roger Pau Monne To: xen-devel@lists.xenproject.org Cc: Konrad Rzeszutek Wilk , Ross Lagerwall , Roger Pau Monne Subject: [PATCH 2/2] livepatch-build-tools: do not use readlink -m option Date: Thu, 23 Nov 2023 17:05:35 +0100 Message-ID: <20231123160535.18658-3-roger.pau@citrix.com> X-Mailer: git-send-email 2.43.0 In-Reply-To: <20231123160535.18658-1-roger.pau@citrix.com> References: <20231123160535.18658-1-roger.pau@citrix.com> MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable X-ZohoMail-DKIM: pass (identity @citrix.com) X-ZM-MESSAGEID: 1700755748821100003 Busybox readlink implementation only supports the -f option to follow symli= nks, so adjust the logic in order to keep the same behaviour without using the -m option. Singed-off-by: Roger Pau Monn=C3=A9 Reviewed-by: Ross Lagerwall --- livepatch-build | 29 ++++++++++++++++------------- 1 file changed, 16 insertions(+), 13 deletions(-) diff --git a/livepatch-build b/livepatch-build index 26c88a2ed2c3..2f35e98d30a3 100755 --- a/livepatch-build +++ b/livepatch-build @@ -336,8 +336,8 @@ while [[ $# -gt 0 ]]; do ;; --xen-syms) shift - XENSYMS=3D"$(readlink -m -- "$1")" - [ -f "$XENSYMS" ] || die "xen-syms file does not exist" + [ -f "$1" ] || die "xen-syms file does not exist" + XENSYMS=3D"$(readlink -f -- "$1")" shift ;; --depends) @@ -366,22 +366,20 @@ while [[ $# -gt 0 ]]; do done =20 [ -z "$srcarg" ] && die "Xen directory not given" +[ -d "$srcarg" ] || die "Xen directory does not exist" [ -z "$patcharg" ] && die "Patchfile not given" +[ -f "$patcharg" ] || die "Patchfile does not exist" [ -z "$configarg" ] && die ".config not given" +[ -f "$configarg" ] || die ".config does not exist" [ -z "$outputarg" ] && die "Output directory not given" [ -z "$DEPENDS" ] && die "Build-id dependency not given" [ -z "$XEN_DEPENDS" ] && die "Xen Build-id dependency not given" =20 -SRCDIR=3D"$(readlink -m -- "$srcarg")" +SRCDIR=3D"$(readlink -f -- "$srcarg")" # We need an absolute path because we move around, but we need to # retain the name of the symlink (=3D realpath -s) PATCHFILE=3D"$(readlink -f "$(dirname "$patcharg")")/$(basename "$patcharg= ")" -CONFIGFILE=3D"$(readlink -m -- "$configarg")" -OUTPUT=3D"$(readlink -m -- "$outputarg")" - -[ -d "${SRCDIR}" ] || die "Xen directory does not exist" -[ -f "${PATCHFILE}" ] || die "Patchfile does not exist" -[ -f "${CONFIGFILE}" ] || die ".config does not exist" +CONFIGFILE=3D"$(readlink -f -- "$configarg")" =20 PATCHNAME=3D$(make_patch_name "${PATCHFILE}") =20 @@ -390,17 +388,20 @@ echo echo "Xen directory: ${SRCDIR}" echo "Patch file: ${PATCHFILE}" echo ".config file: ${CONFIGFILE}" -echo "Output directory: ${OUTPUT}" +echo "Output directory: $outputarg" echo "=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D" echo =20 if [ "${SKIP}" !=3D "build" ]; then - [ -e "${OUTPUT}" ] && die "Output directory exists" + # Make sure output directory doesn't exist, and create it. + [ -e "$outputarg" ] && die "Output directory exists" + mkdir -p "$outputarg" || die + OUTPUT=3D"$(readlink -f -- "$outputarg")" + grep -q 'CONFIG_LIVEPATCH=3Dy' "${CONFIGFILE}" || die "CONFIG_LIVEPATC= H must be enabled" cd "$SRCDIR" || die patch -s -N -p1 -f --fuzz=3D0 --dry-run < "$PATCHFILE" || die "Source = patch file failed to apply" =20 - mkdir -p "${OUTPUT}" || die cp -f "${CONFIGFILE}" "${OUTPUT}/.config" cp -f "${OUTPUT}/.config" "xen/.config" =20 @@ -453,7 +454,9 @@ if [ "${SKIP}" !=3D "build" ]; then fi =20 if [ "${SKIP}" !=3D "diff" ]; then - [ -d "${OUTPUT}" ] || die "Output directory does not exist" + cd "${SCRIPTDIR}" || die + [ -d "$outputarg" ] || die "Output directory does not exist" + OUTPUT=3D"$(readlink -f -- "$outputarg")" =20 cd "${OUTPUT}" || die create_patch --=20 2.43.0