Commit c768a84b authored by Mikio Hara's avatar Mikio Hara

net: remove the dregs of old built-in poll server

We don't need placeholders for the old built-in poll server any more.

Change-Id: I3a510aec6a30bc2ac97676c400177cdfe557b8dc
Reviewed-on: https://go-review.googlesource.com/3863Reviewed-by: 's avatarDmitry Vyukov <dvyukov@google.com>
parent d2abbf3c
......@@ -18,18 +18,11 @@ func (pd *pollDesc) Init(fd *netFD) error { pd.fd = fd; return nil }
func (pd *pollDesc) Close() {}
func (pd *pollDesc) Lock() {}
func (pd *pollDesc) Unlock() {}
func (pd *pollDesc) Wakeup() {}
func (pd *pollDesc) Evict() bool {
func (pd *pollDesc) Evict() {
pd.closing = true
if pd.fd != nil {
syscall.StopIO(pd.fd.sysfd)
}
return false
}
func (pd *pollDesc) Prepare(mode int) error {
......
......@@ -48,23 +48,12 @@ func (pd *pollDesc) Close() {
pd.runtimeCtx = 0
}
func (pd *pollDesc) Lock() {
}
func (pd *pollDesc) Unlock() {
}
func (pd *pollDesc) Wakeup() {
}
// Evict evicts fd from the pending list, unblocking any I/O running on fd.
// Return value is whether the pollServer should be woken up.
func (pd *pollDesc) Evict() bool {
func (pd *pollDesc) Evict() {
if pd.runtimeCtx == 0 {
return false
return
}
runtime_pollUnblock(pd.runtimeCtx)
return false
}
func (pd *pollDesc) Prepare(mode int) error {
......
......@@ -187,9 +187,7 @@ func (fd *netFD) writeUnlock() {
}
func (fd *netFD) Close() error {
fd.pd.Lock() // needed for both fd.incref(true) and pollDesc.Evict
if !fd.fdmu.IncrefAndClose() {
fd.pd.Unlock()
return errClosing
}
// Unblock any I/O. Once it all unblocks and returns,
......@@ -197,12 +195,8 @@ func (fd *netFD) Close() error {
// the final decref will close fd.sysfd. This should happen
// fairly quickly, since all the I/O is non-blocking, and any
// attempts to block in the pollDesc will return errClosing.
doWakeup := fd.pd.Evict()
fd.pd.Unlock()
fd.pd.Evict()
fd.decref()
if doWakeup {
fd.pd.Wakeup()
}
return nil
}
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment