Bug 135942
| Summary: | Possible problems with O_NONBLOCK | ||||||
|---|---|---|---|---|---|---|---|
| Product: | [Fedora] Fedora | Reporter: | Dave Malcolm <dmalcolm> | ||||
| Component: | evolution | Assignee: | Dave Malcolm <dmalcolm> | ||||
| Status: | CLOSED WONTFIX | QA Contact: | |||||
| Severity: | medium | Docs Contact: | |||||
| Priority: | medium | ||||||
| Version: | rawhide | CC: | dwmw2, jeff, marius.andreiana, twaugh | ||||
| Target Milestone: | --- | ||||||
| Target Release: | --- | ||||||
| Hardware: | All | ||||||
| OS: | Linux | ||||||
| Whiteboard: | |||||||
| Fixed In Version: | Doc Type: | Bug Fix | |||||
| Doc Text: | Story Points: | --- | |||||
| Clone Of: | Environment: | ||||||
| Last Closed: | 2006-01-13 05:04:33 UTC | Type: | --- | ||||
| Regression: | --- | Mount Type: | --- | ||||
| Documentation: | --- | CRM: | |||||
| Verified Versions: | Category: | --- | |||||
| oVirt Team: | --- | RHEL 7.3 requirements from Atomic Host: | |||||
| Cloudforms Team: | --- | Target Upstream Version: | |||||
| Embargoed: | |||||||
| Bug Depends On: | |||||||
| Bug Blocks: | 150221 | ||||||
| Attachments: |
|
||||||
|
Description
Dave Malcolm
2004-10-15 20:26:33 UTC
FWIW, a similar grep of the evolution-data-server source comes back empty *** Bug 136075 has been marked as a duplicate of this bug. *** Created attachment 105355 [details]
Don't set O_NONBLOCK on regular files.
I'm not sure entirely how O_NONBLOCK on regular files is supposed to work. Evo
gets stuck in select(). It seems safest not to do it at all, rather than to try
to make it work as expected. That's certainly the portable option. This fixes
the case that actually bit me.
(Adding to FC4 target tracker for now) Is this actually an issue anymore? My understanding is that setting O_NONBLOCK
ought not to hurt when opening a regular file.
From man 2 open:
O_NONBLOCK or O_NDELAY
When possible, the file is opened in non-blocking mode. Neither
the open() nor any subsequent operations on the file descriptor
which is returned will cause the calling process to wait. For the
handling of FIFOs (named pipes), see also fifo(4). This
mode need not have any effect on files other than FIFOs.
I think the standard theoretically allows for the behaviour which rawhide kernels once briefly exhibited. But there's just too much buggy software out there, perhaps encouraged by the man pages you quoted. I think that strictly speaking, it's still wrong -- but it's unlikely to become an issue because I don't think there'll be another attempt to make the kernel do whatever it was doing before for O_NONBLOCK files. Thanks for the clarification. For now I'm going to close this as WONTFIX, so as to avoid diverging from upstream and to keep bugzilla a bit cleaner. Feel free to reopen if need be. |