search for: eagain

Displaying 20 results from an estimated 1195 matches for "eagain".

Did you mean: again
2016 May 26
1
A lot of EAGAIN (Resource temporarily unavailable) using nutdrv_qx
...ee that it was using too much CPU time (or at least, too much for what I think it should be normal), I used strace to see what is was using, and got a lot of lines like these: %<------------%<------------%<------------%<------------ ioctl(4, USBDEVFS_REAPURBNDELAY, 0x7ffdca143278) = -1 EAGAIN (Resource temporarily unavailable) select(5, NULL, [4], NULL, {0, 1000}) = 0 (Timeout) ioctl(4, USBDEVFS_REAPURBNDELAY, 0x7ffdca143278) = -1 EAGAIN (Resource temporarily unavailable) select(5, NULL, [4], NULL, {0, 1000}) = 0 (Timeout) ioctl(4, USBDEVFS_REAPURBNDELAY, 0x7ffdca143278) = -1 EAGAIN...
2007 Feb 14
3
severe performance problem (mail cache related?)
Hi all, we're having a bad day with email :) I have a user who was complaining of poor performance today when opening mailboxes. Total time to open the box was about 1 minute. Upon truss'ing the imap process during an open, I saw the trace quoted below at the end of the email. As you can see, for each "FETCH" line of response, we were seeing dovecot do a ton of work-- mmaping
2019 Jul 24
5
[PATCH] mm/hmm: replace hmm_update with mmu_notifier_range
...mm->mirrors, list) { > > int rc; > > > > - rc = mirror->ops->sync_cpu_device_pagetables(mirror, &update); > > + rc = mirror->ops->sync_cpu_device_pagetables(mirror, nrange); > > if (rc) { > > - if (WARN_ON(update.blockable || rc != -EAGAIN)) > > + if (WARN_ON(mmu_notifier_range_blockable(nrange) || > > + rc != -EAGAIN)) > > continue; > > ret = -EAGAIN; > > break; > > This magic handling of error seems odd. I think we should merge rc and > ret into one variable and just bre...
2013 Nov 29
2
nsd 4.0 EAGAIN loop in sendmmsg(2)
On NetBSD 6.99.28-CURRENT, nsd 3.2.16 works fine, however nsd 4.0.0 is spinning chewing CPU. The logs show: Nov 28 23:07:00 xxx nsd[466]: sendmmsg failed: Resource temporarily unavailable ktruss shows it getting EAGAIN from sendmmsg(2) over and over again. According to the man page: [EAGAIN|EWOULDBLOCK] The socket is marked non-blocking and the requested operation would block. Sounds like it's blocking when it shouldn't? -Dustin -------------- next...
2019 Jul 23
4
[PATCH] mm/hmm: replace hmm_update with mmu_notifier_range
...date) + const struct mmu_notifier_range *update) { struct nouveau_svmm *svmm = container_of(mirror, typeof(*svmm), mirror); unsigned long start = update->start; unsigned long limit = update->end; - if (!update->blockable) + if (!mmu_notifier_range_blockable(update)) return -EAGAIN; SVMM_DBG(svmm, "invalidate %016lx-%016lx", start, limit); diff --git a/include/linux/hmm.h b/include/linux/hmm.h index 9f32586684c9..659e25a15700 100644 --- a/include/linux/hmm.h +++ b/include/linux/hmm.h @@ -340,29 +340,6 @@ static inline uint64_t hmm_device_entry_from_pfn(const str...
2019 Sep 16
2
ssh client is setting O_NONBLOCK on a pipe shared with other processes
> So the make process gets an EAGAIN on the write syscall and doesn't > retry? That sounds like a bug in whatever make you're using, since > that could potentially occur in other circumstances too. What other circumstances? EAGAIN means that something put the device into non-blocking mode, and normally, that should on...
2019 Sep 24
3
Is Nouveau really using the io_reserve_lru?
Hi guys, while working through more old TTM functionality I stumbled over the io_reserve_lru. Basic idea is that when this flag is set the driver->io_mem_reserve() callback can return -EAGAIN resulting in unmapping of other BOs. But Nouveau doesn't seem to return -EAGAIN in the call path of io_mem_reserve anywhere. So is this unused or am I missing something? Regards, Christian.
2019 Jul 24
2
[PATCH] mm/hmm: replace hmm_update with mmu_notifier_range
...> > > > > > > - rc = mirror->ops->sync_cpu_device_pagetables(mirror, &update); > > > > + rc = mirror->ops->sync_cpu_device_pagetables(mirror, nrange); > > > > if (rc) { > > > > - if (WARN_ON(update.blockable || rc != -EAGAIN)) > > > > + if (WARN_ON(mmu_notifier_range_blockable(nrange) || > > > > + rc != -EAGAIN)) > > > > continue; > > > > ret = -EAGAIN; > > > > break; > > > > > > This magic handling of error seems odd....
2019 Jun 09
0
[PATCH libnbd] states: In recv_into_rbuf and send_from_wbuf loop until EAGAIN.
Previously we performed a single call to recv(2) or send(2) (or the GnuTLS equivalents), and even if more data/space was immediately available to receive/send we would return to poll. Instead of this, loop until the socket returns EAGAIN. --- generator/states.c | 91 ++++++++++++++++++++++------------------------ 1 file changed, 43 insertions(+), 48 deletions(-) diff --git a/generator/states.c b/generator/states.c index 145e8c1..cde934a 100644 --- a/generator/states.c +++ b/generator/states.c @@ -46,43 +46,40 @@ recv_into_rbuf (s...
2019 Jul 30
0
[PATCH 01/13] amdgpu: remove -EAGAIN handling for hmm_range_fault
hmm_range_fault can only return -EAGAIN if called with the block argument set to false, so remove the special handling for it. Signed-off-by: Christoph Hellwig <hch at lst.de> --- drivers/gpu/drm/amd/amdgpu/amdgpu_ttm.c | 23 +++-------------------- 1 file changed, 3 insertions(+), 20 deletions(-) diff --git a/drivers/gpu/drm/am...
2019 Jul 22
2
[PATCH 1/6] mm: always return EBUSY for invalid ranges in hmm_range_{fault, snapshot}
On Mon, Jul 22, 2019 at 3:14 PM Christoph Hellwig <hch at lst.de> wrote: > > We should not have two different error codes for the same condition. In > addition this really complicates the code due to the special handling of > EAGAIN that drops the mmap_sem due to the FAULT_FLAG_ALLOW_RETRY logic > in the core vm. > > Signed-off-by: Christoph Hellwig <hch at lst.de> > Reviewed-by: Ralph Campbell <rcampbell at nvidia.com> > Reviewed-by: Felix Kuehling <Felix.Kuehling at amd.com> > --- > Do...
2019 Jul 24
10
hmm_range_fault related fixes and legacy API removal v3
...by nouveau. The first 4 patches are a bug fix for nouveau, which I suspect should go into this merge window even if the code is marked as staging, just to avoid people copying the breakage. Changes since v2: - new patch from Jason to document FAULT_FLAG_ALLOW_RETRY semantics better - remove -EAGAIN handling in nouveau earlier Changes since v1: - don't return the valid state from hmm_range_unregister - additional nouveau cleanups
2019 Jun 09
2
[PATCH libnbd] states: In recv_into_rbuf and send_from_wbuf loop until EAGAIN.
I thought this should produce a fairly dramatic performance gain. In fact I couldn't measure any performance difference at all. I think what's happening is we're actually paying an extra syscall (to discover the socket would block) and then doing the poll anyway. So I don't know if it's worth having this patch. It could be argued that it makes the code shorter (therefore
2019 Jul 22
15
hmm_range_fault related fixes and legacy API removal v2
Hi Jérôme, Ben and Jason, below is a series against the hmm tree which fixes up the mmap_sem locking in nouveau and while at it also removes leftover legacy HMM APIs only used by nouveau. The first 4 patches are a bug fix for nouveau, which I suspect should go into this merge window even if the code is marked as staging, just to avoid people copying the breakage. Changes since v1: - don't
2000 Jul 06
2
2.1.1p2 HP-UX 11 timing error
...ch I have very crudely addressed for now by hacking out that check entirely. *** atomicio.c Thu Jun 22 07:32:31 2000 --- /tmp/atomicio.c Thu Jul 6 09:03:30 2000 *************** *** 46,52 **** res = (f) (fd, s + pos, n - pos); switch (res) { case -1: ! if (errno == EINTR || errno == EAGAIN) continue; case 0: return (res); --- 46,56 ---- res = (f) (fd, s + pos, n - pos); switch (res) { case -1: ! if (errno == EINTR || errno == EAGAIN ! #ifdef _HPUX_SOURCE ! || (errno == EWOULDBLOCK) ! #endif ! ) continue; case 0: return (res); Ste...
2014 Jul 31
0
Re: hang after seabios
...0, {it_interval={0, 0}, it_value={0, 250000}}, NULL) = 0 timer_gettime(0x8, {it_interval={0, 0}, it_value={0, 204443}}) = 0 select(16, [0 6 9 13 15], [], [], {1, 0}) = 2 (in [6 13], left {0, 999998}) read(13, "\1\0\0\0\0\0\0\0", 4096) = 8 read(13, 0x7fffa2ed3f70, 4096) = -1 EAGAIN (Resource temporarily unavailable) read(6, "\0", 512) = 1 read(6, 0x7fffa2ed4d70, 512) = -1 EAGAIN (Resource temporarily unavailable) select(16, [0 6 9 13 15], [], [], {1, 0}) = 1 (in [15], left {0, 999998}) read(15, "\16\0\0\0\0\0\0\0\376\377\377\377\...
2019 Jul 24
0
[PATCH] mm/hmm: replace hmm_update with mmu_notifier_range
...gt; > int rc; > > > > > > - rc = mirror->ops->sync_cpu_device_pagetables(mirror, &update); > > > + rc = mirror->ops->sync_cpu_device_pagetables(mirror, nrange); > > > if (rc) { > > > - if (WARN_ON(update.blockable || rc != -EAGAIN)) > > > + if (WARN_ON(mmu_notifier_range_blockable(nrange) || > > > + rc != -EAGAIN)) > > > continue; > > > ret = -EAGAIN; > > > break; > > > > This magic handling of error seems odd. I think we should merge rc and >...
2005 May 08
0
EAGAIN when handling file uploads
Hey guys, There''s a new ticket (1268) which covers someone getting EAGAIN from cgi.rb when handling file uploads. So stdin.read is raising EAGAIN and nothing is retrying, the error makes its way all the way up to the controller. Is this something that we want to fix, or shall we just report it to the cgi.rb maintainers? http://dev.rubyonrails.org/ticket/1268 -- Ch...
2014 Jan 15
0
EAGAIN in dict proxy
...cause Thunderbird thought it would be a good idea to hardcode having a quota check at 45 seconds past the minute, and thus every Thunderbird client makes several GETQUOTAROOT requests simultaneously. This causes dovecot to make many client connections to the quota proxy, and many of them fail with EAGAIN. In the log we see: Jan 15 16:52:46 imap25 dovecot: imap(rplatel at tucows.com): Error: net_connect_unix(/var/run/auth_proxy_dovecot/quotasocket) failed: Resource temporarily unavailable And the client gets: * QUOTAROOT Spam "User quota"[0d][0a] * QUOTA "User quota" ()[0d][0a...
2019 Sep 15
4
ssh client is setting O_NONBLOCK on a pipe shared with other processes
...on stdout and stderr if they do not refer to a tty. During our build, stderr refers to a pipe that other jobs run by make (and make itself) may also write to, and since this is a parallel build, they may write to that pipe while ssh has it in non-blocking mode. Make occasionally gets an unexpected EAGAIN error and fails the build with the error message "make: write error". We have a workaround, but it seems to me that this could cause problems with other background uses of ssh too. Should ssh really be setting O_NONBLOCK if it is running non-interactively? For more details, please see...