- 21 Jun, 2017 1 commit
-
-
Mikio Hara authored
Change-Id: Ia73c7bfff664f91c8a4c97656d0bd9e576145aa4 Reviewed-on: https://go-review.googlesource.com/46230 Run-TryBot: Mikio Hara <mikioh.mikioh@gmail.com> TryBot-Result: Gobot Gobot <gobot@golang.org> Reviewed-by: Brad Fitzpatrick <bradfitz@golang.org>
-
- 19 Jun, 2017 2 commits
-
-
Brad Fitzpatrick authored
With Tom Bergan. Updates golang/go#20704 Change-Id: Ib71202801f8c72af2f22865899c93df1f3753fdd Reviewed-on: https://go-review.googlesource.com/46008 Run-TryBot: Brad Fitzpatrick <bradfitz@golang.org> TryBot-Result: Gobot Gobot <gobot@golang.org> Reviewed-by: Tom Bergan <tombergan@google.com>
-
Jaana Burcu Dogan authored
Fixes #20478. Change-Id: I739b6f1368889b735944d74be2d16b7e09eb11a2 Reviewed-on: https://go-review.googlesource.com/45998Reviewed-by: Brad Fitzpatrick <bradfitz@golang.org>
-
- 16 Jun, 2017 1 commit
-
-
Brad Fitzpatrick authored
Updates golang/go#18891 Change-Id: I866862d805dc1757b27817ddb30cf22dc48ac3ff Reviewed-on: https://go-review.googlesource.com/45993 Run-TryBot: Brad Fitzpatrick <bradfitz@golang.org> Reviewed-by: Ian Lance Taylor <iant@golang.org>
-
- 14 Jun, 2017 2 commits
-
-
Volker Dobler authored
Update the list to revision f47d806df99585862c8426c3e064a50eb5a278f5 (2017-06-14T11:49:01Z). The rules for the TLD zw changed thus changing the tests to bd which has the same rule as the old zw TLD. Change-Id: Ic4ed6eaeb3e97d20c50f44a4934576fa3f0393d7 Reviewed-on: https://go-review.googlesource.com/45731 Run-TryBot: Brad Fitzpatrick <bradfitz@golang.org> TryBot-Result: Gobot Gobot <gobot@golang.org> Reviewed-by: Brad Fitzpatrick <bradfitz@golang.org>
-
Brad Fitzpatrick authored
Updates golang/go#19103 (fixes after bundle into std) Change-Id: I847133e289e210dedf2b89ab529478edc5de11d1 Reviewed-on: https://go-review.googlesource.com/45773 Run-TryBot: Brad Fitzpatrick <bradfitz@golang.org> TryBot-Result: Gobot Gobot <gobot@golang.org> Reviewed-by: Ian Lance Taylor <iant@golang.org>
-
- 13 Jun, 2017 2 commits
-
-
Mikio Hara authored
Change-Id: I5c484662add4261f504607758521718f4c760375 Reviewed-on: https://go-review.googlesource.com/45294 TryBot-Result: Gobot Gobot <gobot@golang.org> Run-TryBot: Matt Layher <mdlayher@gmail.com> Reviewed-by: Matt Layher <mdlayher@gmail.com> Reviewed-by: Brad Fitzpatrick <bradfitz@golang.org>
-
Matt Layher authored
This interface can be implemented by types which are capable of attaching compiled BPF filters to themselves, such as x/net/ipv{4,6}.PacketConn. Fixes golang/go#19912 Change-Id: I4674c3e312c173d5a7a3beb3cd53704f8c08e29b Reviewed-on: https://go-review.googlesource.com/44972 Run-TryBot: Matt Layher <mdlayher@gmail.com> TryBot-Result: Gobot Gobot <gobot@golang.org> Reviewed-by: Mikio Hara <mikioh.mikioh@gmail.com>
-
- 10 Jun, 2017 1 commit
-
-
Brad Fitzpatrick authored
It apparently used to be called connErrorReason but when it was renamed the comment wasn't updated. Also, the comment was split via a blank line, detaching it from its decl node. Change-Id: I4ae510fc0e48fd61f40489428f9da4c6cab3ef2f Reviewed-on: https://go-review.googlesource.com/45273Reviewed-by: Hiroshi Ioka <hirochachacha@gmail.com> Reviewed-by: Brad Fitzpatrick <bradfitz@golang.org>
-
- 09 Jun, 2017 2 commits
-
-
Mikio Hara authored
Change-Id: I39f79ec43c73b2fcc90316713181940ada523150 Reviewed-on: https://go-review.googlesource.com/45114 Run-TryBot: Mikio Hara <mikioh.mikioh@gmail.com> Reviewed-by: Ian Lance Taylor <iant@golang.org>
-
Mikio Hara authored
Change-Id: I474b5832672e699f1eba1487f7f793bed3c1ff83 Reviewed-on: https://go-review.googlesource.com/45113 Run-TryBot: Mikio Hara <mikioh.mikioh@gmail.com> Reviewed-by: Ian Lance Taylor <iant@golang.org>
-
- 05 Jun, 2017 2 commits
-
-
Mikio Hara authored
Fixes golang/go#20558. Change-Id: I8813d1eadd40680bd8619bb9a6539a3c45dcd76e Reviewed-on: https://go-review.googlesource.com/44770 Run-TryBot: Mikio Hara <mikioh.mikioh@gmail.com> TryBot-Result: Gobot Gobot <gobot@golang.org> Reviewed-by: Ian Lance Taylor <iant@golang.org>
-
Mikio Hara authored
Fixes golang/go#20558. Change-Id: Iead39205e508aef4fa4cdbe5dabac96b0a60133a Reviewed-on: https://go-review.googlesource.com/44775 Run-TryBot: Mikio Hara <mikioh.mikioh@gmail.com> Reviewed-by: Ian Lance Taylor <iant@golang.org>
-
- 02 Jun, 2017 1 commit
-
-
Lucas Bremgartner authored
Fixes golang/go#20559 Change-Id: Ieb794badb56c6830e32028133f67223424323ea2 Reviewed-on: https://go-review.googlesource.com/44710Reviewed-by: Matt Layher <mdlayher@gmail.com> Run-TryBot: Matt Layher <mdlayher@gmail.com> TryBot-Result: Gobot Gobot <gobot@golang.org>
-
- 29 May, 2017 1 commit
-
-
Mikio Hara authored
Unlike routing messages, there's no need to tweak the alignment for socket control messages on freebsd/386 emulation. Change-Id: Iab4a2b05080868721f7e42cebd661d445f8c1030 Reviewed-on: https://go-review.googlesource.com/44391 Run-TryBot: Mikio Hara <mikioh.mikioh@gmail.com> TryBot-Result: Gobot Gobot <gobot@golang.org> Reviewed-by: Ian Lance Taylor <iant@golang.org>
-
- 27 May, 2017 2 commits
-
-
Mikio Hara authored
This change provides message IO functionality that may support the construction of modern datagram transport protocols. The modern datagram transport protocols on a multihomed node basically need to control each packet path for traffic engineering by using information belongs to network- or link-layer implementation. In addtion, it's desirable to be able to do simultaneous transmission across multiple network- or link-layer adjacencies wihtout any additional cost. The ReadBatch and WriteBatch methods of PacketConn can be used to read and write an IO message that contains the information of network- or link-layer implementation, and read and write a batch of IO messages on Linux. The Marshal and Parse methods of ControlMessage can help to marshal and parse information contained in IO messages. Updates golang/go#3661. Change-Id: I94484e2e135f4969ddf5c2548bf6be0cc16888bf Reviewed-on: https://go-review.googlesource.com/38276 Run-TryBot: Mikio Hara <mikioh.mikioh@gmail.com> TryBot-Result: Gobot Gobot <gobot@golang.org> Reviewed-by: Ian Lance Taylor <iant@golang.org>
-
Mikio Hara authored
This change provides message IO functionality that may support the construction of modern datagram transport protocols. The modern datagram transport protocols on a multihomed node basically need to control each packet path for traffic engineering by using information belongs to network- or link-layer implementation. In addtion, it's desirable to be able to do simultaneous transmission across multiple network- or link-layer adjacencies wihtout any additional cost. The ReadBatch and WriteBatch methods of PacketConn and RawConn can be used to read and write an IO message that contains the information of network- or link-layer implementation, and read and write a batch of IO messages on Linux. The Marshal and Parse methods of ControlMessage and Header can help to marshal and parse information contained in IO messages. Updates golang/go#3661. Change-Id: Ia84a9d3bc51641406eaaf4258f2a3066945cc323 Reviewed-on: https://go-review.googlesource.com/38275 Run-TryBot: Mikio Hara <mikioh.mikioh@gmail.com> TryBot-Result: Gobot Gobot <gobot@golang.org> Reviewed-by: Ian Lance Taylor <iant@golang.org>
-
- 26 May, 2017 4 commits
-
-
Tom Bergan authored
Case happens if Read is called after it has already returned an error previously. Verified that the new TestPipeCloseWithError test fails before this change but passes after. Updates golang/go#20501 Change-Id: I636fbb194f2d0019b0722556cc25a88da2d18e13 Reviewed-on: https://go-review.googlesource.com/44330 Run-TryBot: Tom Bergan <tombergan@google.com> TryBot-Result: Gobot Gobot <gobot@golang.org> Reviewed-by: Brad Fitzpatrick <bradfitz@golang.org>
-
David Lazar authored
Change-Id: I0febb967cf55118693952332bbb6f740616cfd39 Reviewed-on: https://go-review.googlesource.com/44271 Run-TryBot: David Lazar <lazard@golang.org> TryBot-Result: Gobot Gobot <gobot@golang.org> Reviewed-by: Brad Fitzpatrick <bradfitz@golang.org>
-
Mikio Hara authored
This change adds portable message IO methods of Conn, IO message and control message types, and parse methods for the types to provide those functionality to the ipv4 and ipv6 packages. With this change, the ipv4 and ipv6 packages can provide low-level (but less heap allocation and the cost of invoking system calls) API such as read and write operations for a batch of IO messages. On vanilla linux/amd64 virtual machine: BenchmarkUDP/Iter-1-2 1000000 8068 ns/op 408 B/op 14 allocs/op BenchmarkUDP/Batch-1-2 1000000 8610 ns/op 440 B/op 14 allocs/op BenchmarkUDP/Iter-2-2 500000 15390 ns/op 816 B/op 28 allocs/op BenchmarkUDP/Batch-2-2 500000 12715 ns/op 696 B/op 20 allocs/op BenchmarkUDP/Iter-4-2 200000 30763 ns/op 1632 B/op 56 allocs/op BenchmarkUDP/Batch-4-2 300000 21853 ns/op 1216 B/op 32 allocs/op BenchmarkUDP/Iter-8-2 100000 61460 ns/op 3264 B/op 112 allocs/op BenchmarkUDP/Batch-8-2 200000 39048 ns/op 2256 B/op 56 allocs/op BenchmarkUDP/Iter-16-2 50000 122408 ns/op 6528 B/op 224 allocs/op BenchmarkUDP/Batch-16-2 100000 72728 ns/op 4336 B/op 104 allocs/op BenchmarkUDP/Iter-32-2 30000 243137 ns/op 13056 B/op 448 allocs/op BenchmarkUDP/Batch-32-2 50000 141332 ns/op 8496 B/op 200 allocs/op BenchmarkUDP/Iter-64-2 20000 488125 ns/op 26112 B/op 896 allocs/op BenchmarkUDP/Batch-64-2 30000 282078 ns/op 16816 B/op 392 allocs/op BenchmarkUDP/Iter-128-2 10000 973752 ns/op 52224 B/op 1792 allocs/op BenchmarkUDP/Batch-128-2 10000 551021 ns/op 33456 B/op 776 allocs/op BenchmarkUDP/Iter-256-2 3000 1977852 ns/op 104448 B/op 3584 allocs/op BenchmarkUDP/Batch-256-2 10000 1252596 ns/op 66736 B/op 1544 allocs/op BenchmarkUDP/Iter-512-2 2000 4147495 ns/op 208896 B/op 7168 allocs/op BenchmarkUDP/Batch-512-2 3000 2175774 ns/op 121128 B/op 2612 allocs/op Change-Id: I3e08b28917b62dbea7936a86acb24e25ccaf5365 Reviewed-on: https://go-review.googlesource.com/38212 Run-TryBot: Mikio Hara <mikioh.mikioh@gmail.com> TryBot-Result: Gobot Gobot <gobot@golang.org> Reviewed-by: Ian Lance Taylor <iant@golang.org>
-
Mikio Hara authored
Change-Id: I951a1abc36083401d183d61c58a8186b5ce41c6c Reviewed-on: https://go-review.googlesource.com/38211Reviewed-by: Ian Lance Taylor <iant@golang.org>
-
- 25 May, 2017 1 commit
-
-
David du Colombier authored
This test is running out of memory on Plan 9. Updates golang/go#20489. Change-Id: I79cdea9c31f396b6ef5c47474674ad736362b232 Reviewed-on: https://go-review.googlesource.com/44130Reviewed-by: Brad Fitzpatrick <bradfitz@golang.org>
-
- 24 May, 2017 9 commits
-
-
Mikio Hara authored
Change-Id: I7267334f191a6da9929235e79ee71c412e95ed57 Reviewed-on: https://go-review.googlesource.com/44050 Run-TryBot: Mikio Hara <mikioh.mikioh@gmail.com> TryBot-Result: Gobot Gobot <gobot@golang.org> Reviewed-by: Matt Layher <mdlayher@gmail.com> Reviewed-by: Brad Fitzpatrick <bradfitz@golang.org>
-
Mikio Hara authored
As per RFC 3246, the registry renames the name for DSCP 101110 (binary) from EF PHB to EF to clarify that a particular per-hop behavior (PHB) is called expedited forwarding (EF). Change-Id: I022c2fcd4bb42a210ae5c6ec62200b7c5a638250 Reviewed-on: https://go-review.googlesource.com/43695Reviewed-by: Brad Fitzpatrick <bradfitz@golang.org>
-
Mikio Hara authored
This reverts https://go-review.googlesource.com/c/37401 Updates golang/go#19051. Change-Id: Ia3cbc42213e3c519f91650e6308a7ca1f56b6189 Reviewed-on: https://go-review.googlesource.com/37417Reviewed-by: Ian Lance Taylor <iant@golang.org>
-
Mikio Hara authored
Updates golang/go#19051. Change-Id: I4d86de8ea3fb03e40dd50bc0351562fbfa2c46a7 Reviewed-on: https://go-review.googlesource.com/38277Reviewed-by: Ian Lance Taylor <iant@golang.org>
-
Mikio Hara authored
This change uses the internal/socket package to ensure that the ipv6 package works with all supported versions of the Go standard library. Fixes golang/go#19051. Change-Id: I74911a8c5bba79e082a10d64e621ed415be1c033 Reviewed-on: https://go-review.googlesource.com/37042Reviewed-by: Ian Lance Taylor <iant@golang.org>
-
Mikio Hara authored
This change uses the internal/socket package to ensure that the ipv4 package works with all supported versions of the Go standard library. Fixes golang/go#19051. Change-Id: If0256007c749c319970533823a10afdc1ffbce31 Reviewed-on: https://go-review.googlesource.com/37036Reviewed-by: Ian Lance Taylor <iant@golang.org>
-
Mikio Hara authored
This is a counterpart of https://go-review.googlesource.com/37039. This change introduces a package that provides a portable interface for the manipulation of sockets using either syscall.Conn and syscall.RawConn interfaces or the internal/netreflect package appropriately. The package ensures that a package using this works with all supported versions of the Go standard library. Updates golang/go#19051. Change-Id: Ib72ea369e6839e77fed6e35b9aedc364e73c51cb Reviewed-on: https://go-review.googlesource.com/37035Reviewed-by: Ian Lance Taylor <iant@golang.org>
-
Brad Fitzpatrick authored
Fix by Martin Garton in https://golang.org/cl/43370 Change-Id: I5933b136ff667c0f67ec8ebffb52d6f1235232b3 Reviewed-on: https://go-review.googlesource.com/44030Reviewed-by: Matt Layher <mdlayher@gmail.com>
-
Tom Bergan authored
This is a better fix that https://golang.org/cl/43455. Instead of creating a separate goroutine to wait for the global shutdown channel, we reuse the new serverMsgCh, which was added in a prior CL. We also use the new net/http.Server.RegisterOnShutdown method to register a shutdown callback for each http2.Server. Updates golang/go#20302 Updates golang/go#18471 Change-Id: Icf29d5e4f65b3779d1fb4ea92924e4fb6bdadb2a Reviewed-on: https://go-review.googlesource.com/43230 Run-TryBot: Tom Bergan <tombergan@google.com> Reviewed-by: Brad Fitzpatrick <bradfitz@golang.org>
-
- 23 May, 2017 1 commit
-
-
Tom Bergan authored
After a response body is closed, we keep writing to the bufPipe. This accumulates bytes that will never be read, wasting memory. The fix is to discard the buffer on pipe.BreakWithError. Updates golang/go#20448 Change-Id: Ia2cf46cb8c401fd8091ef3785eb48fe7b188bb57 Reviewed-on: https://go-review.googlesource.com/43810 Run-TryBot: Tom Bergan <tombergan@google.com> TryBot-Result: Gobot Gobot <gobot@golang.org> Reviewed-by: Brad Fitzpatrick <bradfitz@golang.org>
-
- 22 May, 2017 3 commits
-
-
Brad Fitzpatrick authored
Updates golang/go#20448 Change-Id: I6366b0b0b36d81095ab347ca35e1e72169c05c15 Reviewed-on: https://go-review.googlesource.com/43853 Run-TryBot: Brad Fitzpatrick <bradfitz@golang.org> TryBot-Result: Gobot Gobot <gobot@golang.org> Reviewed-by: Tom Bergan <tombergan@google.com>
-
Dmitri Shuralyov authored
Move it to a _test.go file instead. After CL 43190, the pair function is no longer used by the hpack package, so it can be removed from it. It's still used by tests. This can help avoid future readers spending time on figuring out why pair exists in package, but is not used. It can also reduce chance of the pair function unintentionally being used in the package (if that needs to happen explicitly, then pair can be easily moved back to package). Change-Id: I12ee9b46f57a522bd09e5d0ee22296df4dee1f35 Reviewed-on: https://go-review.googlesource.com/43851Reviewed-by: Brad Fitzpatrick <bradfitz@golang.org> Run-TryBot: Brad Fitzpatrick <bradfitz@golang.org> TryBot-Result: Gobot Gobot <gobot@golang.org>
-
Todd Neal authored
Inlining isn't performed on generated init functions. Removing the pair function and initializing the structs directly saves another 16k on a simple http.ListenAndServe() binary. delta name old new -58 runtime.findfunctab 10471 10413 -0.55% -41 runtime.gcbss 910 869 -4.51% 41 runtime.gcdata 612 653 6.70% -408 runtime.pclntab 1036311 1035903 -0.04% -11711 vendor/golang_org/x/net/http2/hpack.init 12283 572 -95.34% Updates golang/go#6853 Change-Id: Ibccc796fe7403674cf4b4561acf9551d76ff11e8 Reviewed-on: https://go-review.googlesource.com/43190 Run-TryBot: Todd Neal <todd@tneal.org> TryBot-Result: Gobot Gobot <gobot@golang.org> Reviewed-by: Brad Fitzpatrick <bradfitz@golang.org>
-
- 17 May, 2017 1 commit
-
-
Mikio Hara authored
Change-Id: I5ee078009033eea6d4b9320de127a270bd3c439c Reviewed-on: https://go-review.googlesource.com/43471Reviewed-by: Brad Fitzpatrick <bradfitz@golang.org>
-
- 15 May, 2017 1 commit
-
-
Brad Fitzpatrick authored
This drops the number of select cases in serverConn.server from 10 to 6. It was 7 in Go 1.7. It increased to 10 in Go 1.8. * replace testing-only testHookCh with always-on grab-bag serveMsgCh to be used for both test purposes, and infrequently used message types * remove the settingsTimer.C case for the initial settings timer and use serveMsgCh and time.AfterFunc instead * ... and do the same for the idle timeout timer. * ... and for the shutdown timer. * remove wantStartPushCh and just send the *startPushRequest to serveMsgCh too I could go further with this (and plan to, later), but these are the safe and easy ones that don't require more work elsewhere. The speed gets better the more the request/response go via the serverConn.serve loop. (once per Request.Body.Read or ResponseWriter.Flush): name old time/op new time/op delta ServerGets-4 138µs ± 3% 134µs ± 2% -2.54% (p=0.002 n=10+10) ServerPosts-4 176µs ±27% 154µs ± 2% -12.62% (p=0.011 n=10+10) Updates kubernetes/kubernetes#45216 Updates golang/go#20302 Change-Id: I18019554089d7e3d76355d7137b5957e9597e803 Reviewed-on: https://go-review.googlesource.com/43034 Run-TryBot: Brad Fitzpatrick <bradfitz@golang.org> TryBot-Result: Gobot Gobot <gobot@golang.org> Reviewed-by: Tom Bergan <tombergan@google.com>
-
- 13 May, 2017 1 commit
-
-
Tom Bergan authored
gracefulShutdownCh is shared by all connections in a server. When a server accumulates many connections (e.g., 5000 in the kubemark-5000 benchmark), we have 5000 serverConn.serve goroutines selecting on this channel. This means 5000 goroutines hammer the channel's lock, which causes severe lock contention. The fix in this CL is to make a local proxy for gracefulShutdownCh in each connection so that each connection selects on gracefulShutdownCh at most once per connection rather than once per serverConn.serve loop iteration. This fix is intended to be backported quickly into Go 1.8.2. The downside of this fix is 2KB extra stack usage per connection. A better fix will be implemented in Go 1.9. Unfortunately, I have been unable to reproduce this problem locally. This fix was verified by the kubernetes team. See: https://github.com/kubernetes/kubernetes/issues/45216#issuecomment-300830243 Updates golang/go#20302 Change-Id: I19ab19268a6ccab9b6e9dffa0cfbc89b8c7d0f19 Reviewed-on: https://go-review.googlesource.com/43455 Run-TryBot: Tom Bergan <tombergan@google.com> TryBot-Result: Gobot Gobot <gobot@golang.org> Reviewed-by: Brad Fitzpatrick <bradfitz@golang.org>
-
- 10 May, 2017 1 commit
-
-
Todd Neal authored
This shrinks a binary that just does an http.ListenAndServe by about 90kb due to using less code for the static array. syms delta name old-size new-size pct-difference -54206 vendor/golang_org/x/net/http2/hpack.newStaticTable 55233 1027 -98.14% -4744 runtime.pclntab 1041055 1036311 -0.46% -204 runtime.findfunctab 10675 10471 -1.91% 8 runtime.typelink 9852 9860 0.08% 41 runtime.gcbss 869 910 4.72% 11711 vendor/golang_org/x/net/http2/hpack.init 572 12283 2047.38% sections delta name old-size new-size pct-difference -41888 .text 2185840 2143952 -1.92% -37644 .rodata 842131 804487 -4.47% -4744 .gopclntab 1041055 1036311 -0.46% -3343 .debug_info 981995 978652 -0.34% -2931 .debug_line 291295 288364 -1.01% 8 .typelink 9852 9860 0.08% 59 .debug_pubnames 81986 82045 0.07% 96 .symtab 186312 186408 0.05% 113 .debug_pubtypes 137500 137613 0.08% 128 .debug_frame 219140 219268 0.06% 220 .strtab 217109 217329 0.10% 2464 .bss 127752 130216 1.93% Updates golang/go#6853 Change-Id: I3383e63300585539507b75faac1072264d8f37e7 Reviewed-on: https://go-review.googlesource.com/43090Reviewed-by: Brad Fitzpatrick <bradfitz@golang.org> Run-TryBot: Brad Fitzpatrick <bradfitz@golang.org> TryBot-Result: Gobot Gobot <gobot@golang.org>
-
- 09 May, 2017 1 commit
-
-
Mikio Hara authored
This is a followup to https://go-review.googlesource.com/30576. Change-Id: I48bc5f1781275d2cef963876745fa59ac08b5eb5 Reviewed-on: https://go-review.googlesource.com/43070 Run-TryBot: Mikio Hara <mikioh.mikioh@gmail.com> Reviewed-by: Ian Lance Taylor <iant@golang.org> TryBot-Result: Gobot Gobot <gobot@golang.org>
-