Re: [BUG] 2.44.0 t7704.9 Fails on NonStop ia64
- From
Patrick Steinhardt <ps@pks.im>
- Date
- Feb 27, 2024, 08:45 UTC
- Message-ID
- <Zd2hMmIzHKQ7JE45@tanuki>
- In-Reply-To
- <5e807c1c-20a0-407b-9fc2-acd38521ba45@gmail.com>
On Mon, Feb 26, 2024 at 03:32:14PM +0000, Phillip Wood wrote:
Show 14 quoted lines
> Hi Randal > > [cc'ing Patrick for the reftable writer] > > > The question is which call is bad? The cruft stuff is > > relatively new and I don't know the code. > > > > > > reftable/writer.c: int n = w->write(w->write_arg, zeroed, > > > > w->pending_padding); > > > > reftable/writer.c: n = w->write(w->write_arg, data, len); > > Neither of these appear to check for short writes and reftable_fd_write() is > a thin wrapper around write(). Maybe reftable_fd_write() should be using > write_in_full()?
It already does starting with 85a8c899ce (reftable: handle interrupted writes, 2023-12-11):
```
static ssize_t reftable_fd_write(void *arg, const void *data, size_t sz)
{
int *fdp = (int *)arg;
return write_in_full(*fdp, data, sz);
}
```Patrick