From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 101785 invoked by alias); 25 Dec 2017 19:47:05 -0000 Mailing-List: contact libc-alpha-help@sourceware.org; run by ezmlm Precedence: bulk List-Id: List-Subscribe: List-Archive: List-Post: List-Help: , Sender: libc-alpha-owner@sourceware.org Received: (qmail 101771 invoked by uid 89); 25 Dec 2017 19:47:04 -0000 Authentication-Results: sourceware.org; auth=none X-Virus-Found: No X-Spam-SWARE-Status: No, score=-26.4 required=5.0 tests=AWL,BAYES_00,GIT_PATCH_0,GIT_PATCH_1,GIT_PATCH_2,GIT_PATCH_3,RCVD_IN_DNSWL_NONE,SPF_PASS,URIBL_RED autolearn=ham version=3.3.2 spammy=HX-Received:10.159.230.3, subsequently X-HELO: mail-pl0-f66.google.com X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:date:subject:in-reply-to:cc:from:to:message-id :mime-version:content-transfer-encoding; bh=jhad9MVggBv9gftzkDUYT2vGRndixSWqw4YkVFoO7qQ=; b=rUkXu7fDuF8RbP180haIxEqyFzgh7s9Q64SEfbUIXOYrnMBlDV+SwxEm+Fjg3KfKJM OVhZxVtGF4Hc+1MTlnMdPXjtzJ4Zxt4YqxcwgHDCr+RfYe7hpc8x5Yx1fUvodpjKlc7E 7ekXH6Mq10SHJmcG9GQaAlv3w7zoB4RWdKhDb1QWUiJS2/zB5g8GCHddfZfYt7kaWMM1 JUStL0UKdMQd4aMzaEupXjKSiPrUIi0bUEOysLAKyxOLjd9rLPFvgHEPuelV/bepwYUW pA2MYhj/38gKh9tOMpmpMXlmcBBIz5uxFdEDxz4I4+Cyffitjc6NJKL3TLMNgIhSpjDR BBdw== X-Gm-Message-State: AKGB3mJBoOFr5ijqazSaYi0DvTmuf4xM5IE/v87OcL5nvKP3SDPgvcBC QRvapgWfV0EKZOqoMD6KlunGKM3lNvs= X-Google-Smtp-Source: ACJfBouLnnAAzI20em+Dq1pSQgtZ4S/bhfwfD+e3y724rovpoznWyg4Yr+S46K4JGr7HCMvWSMe+5A== X-Received: by 10.159.230.3 with SMTP id u3mr22481505plq.2.1514231220967; Mon, 25 Dec 2017 11:47:00 -0800 (PST) Date: Mon, 25 Dec 2017 19:47:00 -0000 X-Google-Original-Date: Mon, 25 Dec 2017 11:25:12 PST (-0800) Subject: Re: [PATCH v2 10/15] RISC-V: Linux Syscall Interface In-Reply-To: CC: libc-alpha@sourceware.org, Andrew Waterman , Darius Rad , dj@redhat.com From: Palmer Dabbelt To: joseph@codesourcery.com Message-ID: Mime-Version: 1.0 (MHng) Content-Type: text/plain; charset=utf-8; format=flowed Content-Transfer-Encoding: 8bit X-SW-Source: 2017-12/txt/msg00889.txt.bz2 On Wed, 20 Dec 2017 09:24:21 PST (-0800), joseph@codesourcery.com wrote: > On Tue, 19 Dec 2017, Palmer Dabbelt wrote: > >> diff --git a/sysdeps/unix/sysv/linux/riscv/getmsg.c b/sysdeps/unix/sysv/linux/riscv/getmsg.c >> new file mode 100644 >> index 000000000000..3a1fa0852504 >> --- /dev/null >> +++ b/sysdeps/unix/sysv/linux/riscv/getmsg.c >> @@ -0,0 +1 @@ >> +#include > > Really? I don't see getpmsg in the generic or RISC-V syscall ABI. > >> diff --git a/sysdeps/unix/sysv/linux/riscv/kernel-features.h b/sysdeps/unix/sysv/linux/riscv/kernel-features.h > > My comments from > still apply: > you shouldn't need this file. > >> diff --git a/sysdeps/unix/sysv/linux/riscv/putmsg.c b/sysdeps/unix/sysv/linux/riscv/putmsg.c >> new file mode 100644 >> index 000000000000..ebc1680ca7d1 >> --- /dev/null >> +++ b/sysdeps/unix/sysv/linux/riscv/putmsg.c >> @@ -0,0 +1 @@ >> +#include > > Same comment as for getmsg. Thanks, we must have gotten our signals crossed on your original messages. You're right here, I'll remove the files for the v3. >> diff --git a/sysdeps/unix/sysv/linux/riscv/rv32/readahead.c b/sysdeps/unix/sysv/linux/riscv/rv32/readahead.c >> new file mode 100644 >> index 000000000000..80170c3e8a4d >> --- /dev/null >> +++ b/sysdeps/unix/sysv/linux/riscv/rv32/readahead.c >> @@ -0,0 +1 @@ >> +#include > > I commented on this before > . Are you > sure about it? The ARM file is dealing with a peculiarity of the syscall > interface in the case where (a) it follows the C function interface and > (b) a 32-bit function argument followed by a 64-bit function argument > requires a one-register gap between them. > > Now, RISC-V doesn't seem to do anything special for this syscall in the > kernel, so I presume it does follow the C function interface. But > > says that aligned register pairs are only used for variadic arguments, and > readahead is not a variadic function. So I'd expect there not to be a gap > in the arguments to this syscall, and so use of the ARM function to be > wrong. (As the syscall has no errors and no testable semantic effect, as > long as the fd argument is valid, getting this wrong would not result in > any test failures.) Sorry, again, that we missed that. You're correct here, we'll remove it for the v3. >> +#ifdef __ASSEMBLER__ >> + >> +#include >> + >> +#define ENTRY(name) LEAF(name) > > Missing preprocessor indentation here and subsequently (inconsistently) in > this file. > >> +#endif /* linux/mips/sysdep.h */ > > This comment is clearly wrong here. These should all be fixed. Thanks!