From mboxrd@z Thu Jan 1 00:00:00 1970 X-Spam-Checker-Version: SpamAssassin 3.4.4 (2020-01-24) on inbox.vuxu.org X-Spam-Level: X-Spam-Status: No, score=-3.1 required=5.0 tests=DKIM_INVALID,DKIM_SIGNED, FREEMAIL_FROM,MAILING_LIST_MULTI,RCVD_IN_DNSWL_MED,RCVD_IN_MSPIKE_H3, RCVD_IN_MSPIKE_WL autolearn=ham autolearn_force=no version=3.4.4 Received: (qmail 16346 invoked from network); 3 Sep 2020 11:24:32 -0000 Received: from mother.openwall.net (195.42.179.200) by inbox.vuxu.org with ESMTPUTF8; 3 Sep 2020 11:24:32 -0000 Received: (qmail 16213 invoked by uid 550); 3 Sep 2020 11:24:02 -0000 Mailing-List: contact musl-help@lists.openwall.com; run by ezmlm Precedence: bulk List-Post: List-Help: List-Unsubscribe: List-Subscribe: List-ID: Reply-To: musl@lists.openwall.com Received: (qmail 15930 invoked from network); 3 Sep 2020 11:23:59 -0000 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=fastmail.com; h= from:to:cc:subject:date:message-id:in-reply-to:references :mime-version:content-transfer-encoding; s=fm3; bh=5GQSwtuMF0YzN 8qCX+H7RP7HvpINtQH3gtkDdSe4sOc=; b=blNbm2Kp1j6PGfP3xvPhali5EgJY8 FKjUBk5wT4CYcT84QIu2CmibX+5BKp6I+H4SddK4sDpwS24hVj1nMN+gD/g1lqiL S53AstDvRTzV8Di/fp+THTeSVifWpM+bvr0APYehbDAUPaqrykflWwzBakCCaIN4 EOe9SC98uCH5QpGBObh/d93SRTwe9tMERitV0+TKr+NAvOiS6Xde4zHB7eL/+ZG0 UiFBOGGmbhubNtG7Pt2fghl6lp1wOZbv2wTSYC7XSvcWJ01pWARsR2qcJqttIc7b 7wvYl5jMBc0p86VOumzzMjnApZa8ZoYNouQ7xBhjGXlWtgT1mL8GY0Sew== DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d= messagingengine.com; h=cc:content-transfer-encoding:date:from :in-reply-to:message-id:mime-version:references:subject:to :x-me-proxy:x-me-proxy:x-me-sender:x-me-sender:x-sasl-enc; s= fm3; bh=5GQSwtuMF0YzN8qCX+H7RP7HvpINtQH3gtkDdSe4sOc=; b=Q832nxYc iuE2m3aSLp5QT9Y6dz5tpGCKaa6d3rMA2iAdNFzgOIPiQKaLjxfZ24zLvS7NgncS t2JvTNDcFPBRYXOunbBDCCi414MtKK2GDfHv6bvbsoAQRXNUPDqKNTNEOKQNNHa0 rLV4zbhKb/4VZ7p367wZz9WzGDHaqb0sQBX7eVmpC2lb8N0f6BV/lf2NqCp836Jh 9vuX2+lOx+8UEmaPezo6teWtM2kNnMX1/OU2AhifSwdbXzTgMd7C4GU4sFEyYazY ealIwPty2asu1kM9zVY+A9rEvqrDXvvDd7TA4YB40sm+XmNmuFQTpO/OM5bfi/vq Y+67rK3HX28Gdg== X-ME-Sender: X-ME-Proxy-Cause: gggruggvucftvghtrhhoucdtuddrgeduiedrudeguddggedtucetufdoteggodetrfdotf fvucfrrhhofhhilhgvmecuhfgrshhtofgrihhlpdfqfgfvpdfurfetoffkrfgpnffqhgen uceurghilhhouhhtmecufedttdenucenucfjughrpefhvffufffkofgjfhgggfestdekre dtredttdenucfhrhhomhepufhtvghfrghnucfqkdftvggrrhcuoehsohhrvggrrhesfhgr shhtmhgrihhlrdgtohhmqeenucggtffrrghtthgvrhhnpeegueehieeifeehleevgfdvfe fgtefhhedtieduhfegiefhtdfghfdtteeijeelveenucfkphepvddtledriedrudehgedr feegnecuvehluhhsthgvrhfuihiivgeptdenucfrrghrrghmpehmrghilhhfrhhomhepsh horhgvrghrsehfrghsthhmrghilhdrtghomh X-ME-Proxy: From: Stefan O'Rear To: musl@lists.openwall.com Cc: Stefan O'Rear Date: Thu, 3 Sep 2020 07:22:58 -0400 Message-Id: <20200903112309.102601-4-sorear@fastmail.com> X-Mailer: git-send-email 2.25.4 In-Reply-To: <20200903112309.102601-1-sorear@fastmail.com> References: <20200903112309.102601-1-sorear@fastmail.com> MIME-Version: 1.0 Content-Transfer-Encoding: 8bit Subject: [musl] [PATCH 03/14] time64: Only getrlimit/setrlimit if they exist riscv32 and future architectures only provide prlimit64. --- src/misc/getrlimit.c | 6 +++++- src/misc/setrlimit.c | 6 +++++- 2 files changed, 10 insertions(+), 2 deletions(-) diff --git a/src/misc/getrlimit.c b/src/misc/getrlimit.c index 2ab2f0f4..bf676307 100644 --- a/src/misc/getrlimit.c +++ b/src/misc/getrlimit.c @@ -6,12 +6,13 @@ int getrlimit(int resource, struct rlimit *rlim) { - unsigned long k_rlim[2]; int ret = syscall(SYS_prlimit64, 0, resource, 0, rlim); if (!ret) { FIX(rlim->rlim_cur); FIX(rlim->rlim_max); } +#ifdef SYS_getrlimit + unsigned long k_rlim[2]; if (!ret || errno != ENOSYS) return ret; if (syscall(SYS_getrlimit, resource, k_rlim) < 0) @@ -21,6 +22,9 @@ int getrlimit(int resource, struct rlimit *rlim) FIX(rlim->rlim_cur); FIX(rlim->rlim_max); return 0; +#else + return ret; +#endif } weak_alias(getrlimit, getrlimit64); diff --git a/src/misc/setrlimit.c b/src/misc/setrlimit.c index 7a66ab29..62eba5f3 100644 --- a/src/misc/setrlimit.c +++ b/src/misc/setrlimit.c @@ -8,7 +8,6 @@ static int __setrlimit(int resource, const struct rlimit *rlim) { - unsigned long k_rlim[2]; struct rlimit tmp; if (SYSCALL_RLIM_INFINITY != RLIM_INFINITY) { tmp = *rlim; @@ -17,10 +16,15 @@ static int __setrlimit(int resource, const struct rlimit *rlim) rlim = &tmp; } int ret = __syscall(SYS_prlimit64, 0, resource, rlim, 0); +#ifdef SYS_setrlimit + unsigned long k_rlim[2]; if (ret != -ENOSYS) return ret; k_rlim[0] = MIN(rlim->rlim_cur, MIN(-1UL, SYSCALL_RLIM_INFINITY)); k_rlim[1] = MIN(rlim->rlim_max, MIN(-1UL, SYSCALL_RLIM_INFINITY)); return __syscall(SYS_setrlimit, resource, k_rlim); +#else + return ret; +#endif } struct ctx { -- 2.25.4