[GHC] #10317: Event manager: Multishot registrations only fire once
#10317: Event manager: Multishot registrations only fire once -------------------------------------+------------------------------------- Reporter: bgamari | Owner: Type: bug | Status: new Priority: normal | Milestone: 7.10.2 Component: Compiler | Version: 7.10.1 Keywords: | Operating System: Unknown/Multiple Architecture: | Type of failure: Incorrect result Unknown/Multiple | at runtime Test Case: | Blocked By: Blocking: | Related Tickets: Differential Revisions: | -------------------------------------+------------------------------------- Since D347 the event manager has had support for multishot event registration semantics, allowing the user to receive multiple events on an fd without requiring re-registration. Unfortunately the implementation drops the registration after it fires, resulting in only one callback invocation. -- Ticket URL: <http://ghc.haskell.org/trac/ghc/ticket/10317> GHC <http://www.haskell.org/ghc/> The Glasgow Haskell Compiler
#10317: Event manager: Multishot registrations only fire once -------------------------------------+------------------------------------- Reporter: bgamari | Owner: Type: bug | Status: new Priority: normal | Milestone: 7.10.2 Component: Compiler | Version: 7.10.1 Resolution: | Keywords: Operating System: Unknown/Multiple | Architecture: Type of failure: Incorrect result | Unknown/Multiple at runtime | Test Case: Blocked By: | Blocking: Related Tickets: | Differential Revisions: -------------------------------------+------------------------------------- Changes (by AndreasVoellmy): * cc: AndreasVoellmy (added) -- Ticket URL: <http://ghc.haskell.org/trac/ghc/ticket/10317#comment:1> GHC <http://www.haskell.org/ghc/> The Glasgow Haskell Compiler
#10317: Event manager: Multishot registrations only fire once -------------------------------------+------------------------------------- Reporter: bgamari | Owner: Type: bug | Status: new Priority: normal | Milestone: 7.10.2 Component: Compiler | Version: 7.10.1 Resolution: | Keywords: Operating System: Unknown/Multiple | Architecture: Type of failure: Incorrect result | Unknown/Multiple at runtime | Test Case: Blocked By: | Blocking: Related Tickets: | Differential Revisions: -------------------------------------+------------------------------------- Changes (by basvandijk): * cc: basvandijk (added) -- Ticket URL: <http://ghc.haskell.org/trac/ghc/ticket/10317#comment:2> GHC <http://www.haskell.org/ghc/> The Glasgow Haskell Compiler
#10317: Event manager: Multishot registrations only fire once -------------------------------------+------------------------------------- Reporter: bgamari | Owner: Type: bug | Status: new Priority: normal | Milestone: 7.10.2 Component: Compiler | Version: 7.10.1 Resolution: | Keywords: Operating System: Unknown/Multiple | Architecture: Type of failure: Incorrect result | Unknown/Multiple at runtime | Test Case: Blocked By: | Blocking: Related Tickets: | Differential Revisions: D849 -------------------------------------+------------------------------------- Changes (by bgamari): * differential: => D849 Comment: I've written a pair of tests exercising both failure modes, https://github.com/bgamari/event-manager-tests -- Ticket URL: <http://ghc.haskell.org/trac/ghc/ticket/10317#comment:3> GHC <http://www.haskell.org/ghc/> The Glasgow Haskell Compiler
#10317: Event manager: Multishot registrations only fire once -------------------------------------+------------------------------------- Reporter: bgamari | Owner: Type: bug | Status: new Priority: normal | Milestone: 7.10.2 Component: Compiler | Version: 7.10.1 Resolution: | Keywords: Operating System: Unknown/Multiple | Architecture: Type of failure: Incorrect result | Unknown/Multiple at runtime | Test Case: Blocked By: | Blocking: Related Tickets: | Differential Revisions: D849 -------------------------------------+------------------------------------- Changes (by liyang): * cc: liyang (added) -- Ticket URL: <http://ghc.haskell.org/trac/ghc/ticket/10317#comment:4> GHC <http://www.haskell.org/ghc/> The Glasgow Haskell Compiler
#10317: Event manager: Multishot registrations only fire once -------------------------------------+------------------------------------- Reporter: bgamari | Owner: Type: bug | Status: new Priority: normal | Milestone: 7.10.2 Component: Compiler | Version: 7.10.1 Resolution: | Keywords: Operating System: Unknown/Multiple | Architecture: Type of failure: Incorrect result | Unknown/Multiple at runtime | Test Case: Blocked By: | Blocking: Related Tickets: | Differential Revisions: Phab:D849 -------------------------------------+------------------------------------- Changes (by bgamari): * differential: D849 => Phab:D849 -- Ticket URL: <http://ghc.haskell.org/trac/ghc/ticket/10317#comment:5> GHC <http://www.haskell.org/ghc/> The Glasgow Haskell Compiler
#10317: Event manager: Multishot registrations only fire once -------------------------------------+------------------------------------- Reporter: bgamari | Owner: Type: bug | Status: patch Priority: normal | Milestone: 7.10.2 Component: Compiler | Version: 7.10.1 Resolution: | Keywords: Operating System: Unknown/Multiple | Architecture: Type of failure: Incorrect result | Unknown/Multiple at runtime | Test Case: Blocked By: | Blocking: Related Tickets: | Differential Revisions: Phab:D849 -------------------------------------+------------------------------------- Changes (by bgamari): * status: new => patch -- Ticket URL: <http://ghc.haskell.org/trac/ghc/ticket/10317#comment:6> GHC <http://www.haskell.org/ghc/> The Glasgow Haskell Compiler
#10317: Event manager: Multishot registrations only fire once -------------------------------------+------------------------------------- Reporter: bgamari | Owner: Type: bug | Status: patch Priority: normal | Milestone: 7.10.2 Component: Compiler | Version: 7.10.1 Resolution: | Keywords: Operating System: Unknown/Multiple | Architecture: Type of failure: Incorrect result | Unknown/Multiple at runtime | Test Case: Blocked By: | Blocking: Related Tickets: | Differential Revisions: Phab:D849 -------------------------------------+------------------------------------- Comment (by Austin Seipp <austin@…>): In [changeset:"1c3832597b3e75456fc61628c4cd289d211c733b/ghc"]: {{{ #!CommitTicketReference repository="ghc" revision="1c3832597b3e75456fc61628c4cd289d211c733b" Fix dropped event registrations D347 introduced a bug wherein the event manager would drop registrations that should be retained during processing. This occurs when an fd has multiple registrations, not all of which fire, as well as the case of multi-shot registrations. I also do some general house-keeping, try to better document things, and fix a bug which could result in unnecessary calls to `epoll_ctl` Reviewed By: austin Differential Revision: https://phabricator.haskell.org/D849 GHC Trac Issues: #10317 }}} -- Ticket URL: <http://ghc.haskell.org/trac/ghc/ticket/10317#comment:7> GHC <http://www.haskell.org/ghc/> The Glasgow Haskell Compiler
#10317: Event manager: Multishot registrations only fire once -------------------------------------+------------------------------------- Reporter: bgamari | Owner: Type: bug | Status: merge Priority: normal | Milestone: 7.10.2 Component: Compiler | Version: 7.10.1 Resolution: | Keywords: Operating System: Unknown/Multiple | Architecture: Type of failure: Incorrect result | Unknown/Multiple at runtime | Test Case: Blocked By: | Blocking: Related Tickets: | Differential Revisions: Phab:D849 -------------------------------------+------------------------------------- Changes (by thoughtpolice): * status: patch => merge -- Ticket URL: <http://ghc.haskell.org/trac/ghc/ticket/10317#comment:8> GHC <http://www.haskell.org/ghc/> The Glasgow Haskell Compiler
#10317: Event manager: Multishot registrations only fire once -------------------------------------+------------------------------------- Reporter: bgamari | Owner: Type: bug | Status: closed Priority: normal | Milestone: 7.10.2 Component: Compiler | Version: 7.10.1 Resolution: fixed | Keywords: Operating System: Unknown/Multiple | Architecture: Type of failure: Incorrect result | Unknown/Multiple at runtime | Test Case: Blocked By: | Blocking: Related Tickets: | Differential Revisions: Phab:D849 -------------------------------------+------------------------------------- Changes (by thoughtpolice): * status: merge => closed * resolution: => fixed Comment: Merged to `ghc-7.10`. -- Ticket URL: <http://ghc.haskell.org/trac/ghc/ticket/10317#comment:9> GHC <http://www.haskell.org/ghc/> The Glasgow Haskell Compiler
participants (1)
-
GHC