Re: [PATCH] nvptx: Add _ssize_t as _READ_WRITE_RETURN_TYPE in newlib/libc/include/sys/config.h
Thomas Schwinge <[email protected]>
| Newsgroups | gmane.comp.lib.newlib |
|---|---|
| Message-ID | <[email protected]> |
Hi Arijit! On 2025-07-17T01:27:41+0530, Arijit Kumar Das <[email protected]> wrote: > Here's the final commit. I hope it's okay :-) Almost. ;-) > From 3089acec0f3b5606bffcbca3b6864023ccd2afa3 Mon Sep 17 00:00:00 2001 > From: Arijit Kumar Das <[email protected]> > Date: Thu, 17 Jul 2025 01:01:03 +0530 > Subject: [PATCH] [nvptx]: Use _READ_WRITE_RETURN_TYPE for return type and > _READ_WRITE_BUFSIZE_TYPE for count in read() and write() The important thing about this commit is the changes of types. I'd say: nvptx: Change 'read' and 'write' to 'ssize_t' return type, and 'size_t count' Your following text is just textually describing the commit: > - Changed the return type of read() from int to _READ_WRITE_RETURN_TYPE as per conventions. > - Changed the 'count' parameter of read() and write() to _READ_WRITE_BUFSIZE_TYPE. > - Defined both of the above macros in libc/include/sys/config.h under __nvptx__. > - _READ_WRITE_RETURN_TYPE defined as _ssize_t (ssize_t). > - _READ_WRITE_BUFSIZE_TYPE defined as __size_t (size_t). ..., so I personally wouldn't include that. Instead, you could add some rationale, perhaps: ... to match their specification in POSIX, and enable large files. > Signed-off-by: Arijit Kumar Das <[email protected]> > --- > newlib/libc/include/sys/config.h | 5 +++++ > newlib/libc/machine/nvptx/misc.c | 4 ++-- > newlib/libc/machine/nvptx/write.c | 3 ++- > 3 files changed, 9 insertions(+), 3 deletions(-) > --- a/newlib/libc/include/sys/config.h > +++ b/newlib/libc/include/sys/config.h > @@ -12,6 +12,11 @@ > #define __DYNAMIC_REENT__ > #endif > > +#ifdef __nvptx__ > +#define _READ_WRITE_RETURN_TYPE _ssize_t > +#define _READ_WRITE_BUFSIZE_TYPE __size_t > +#endif > + > /* exceptions first */ > #if defined(__H8500__) || defined(__W65__) > #define __SMALL_BITFIELDS ACK. But for the following two nvptx-specific implementation files: > --- a/newlib/libc/machine/nvptx/misc.c > +++ b/newlib/libc/machine/nvptx/misc.c > -int > -read(int fd, void *buf, size_t count) { > +_READ_WRITE_RETURN_TYPE > +read(int fd, void *buf, _READ_WRITE_BUFSIZE_TYPE count) { > --- a/newlib/libc/machine/nvptx/write.c > +++ b/newlib/libc/machine/nvptx/write.c > -_READ_WRITE_RETURN_TYPE write (int fd, const void *buf, size_t count) > +_READ_WRITE_RETURN_TYPE > +write (int fd, const void *buf, _READ_WRITE_BUFSIZE_TYPE count) > { ..., I'd like you to use the actual types. So, please here replace '_READ_WRITE_RETURN_TYPE' with 'ssize_t', and revert back '_READ_WRITE_BUFSIZE_TYPE' to 'size_t'. Grüße Thomas