1. 22 Aug, 2016 13 commits
  2. 21 Aug, 2016 18 commits
  3. 20 Aug, 2016 3 commits
  4. 19 Aug, 2016 6 commits
    • Jaana Burcu Dogan's avatar
      net/http/httptrace: test the order of hooks when ctx has multi ClientTraces · c10f8700
      Jaana Burcu Dogan authored
      Change-Id: I95cae14bb5561947ada9577fb05053f93321a4a8
      Reviewed-on: https://go-review.googlesource.com/27400
      Run-TryBot: Jaana Burcu Dogan <jbd@google.com>
      Reviewed-by: default avatarBrad Fitzpatrick <bradfitz@golang.org>
      c10f8700
    • Michael Matloob's avatar
      cmd/link/internal: rename LSym to Symbol, and add a doc comment. · a072fc2e
      Michael Matloob authored
      I'd also like to document some of its fields, but I don't know
      what they are.
      
      Change-Id: I87d341e255f785d351a8a73e645be668e02b2689
      Reviewed-on: https://go-review.googlesource.com/27399Reviewed-by: default avatarDavid Crawshaw <crawshaw@golang.org>
      Run-TryBot: David Crawshaw <crawshaw@golang.org>
      TryBot-Result: Gobot Gobot <gobot@golang.org>
      a072fc2e
    • Emmanuel Odeke's avatar
      encoding/gob: error out instead of panicking on nil dereference · 0a2a64d8
      Emmanuel Odeke authored
      Do not panic when we encounter nil interface values which are
      invalid values for gob. Previously this wasn't caught yet
      we were calling reflect.*.Type() on reflect.Invalid values
      thereby causing panic:
        `panic: reflect: call of reflect.Value.Type on zero Value.`
      which is a panic not enforced by encoding/gob itself.
      We can catch this and send back an error to the caller.
      
      Fixes #16204
      
      Change-Id: Ie646796db297759a74a02eee5267713adbe0c3a0
      Reviewed-on: https://go-review.googlesource.com/24989Reviewed-by: default avatarRob Pike <r@golang.org>
      Run-TryBot: Rob Pike <r@golang.org>
      0a2a64d8
    • Dmitry Vyukov's avatar
      runtime: increase malloc size classes · 14e59511
      Dmitry Vyukov authored
      When we calculate class sizes, in some cases we discard considerable
      amounts of memory without an apparent reason. For example, we choose
      size 8448 with 6 objects in 7 pages. But we can well use object
      size 9472, which is also 6 objects in 7 pages but +1024 bytes (+12.12%).
      
      Increase class sizes to the max value that leads to the same
      page count/number of objects. Full list of affected size classes:
      
      class 36: pages: 2 size: 1664->1792 +128 (7.69%)
      class 39: pages: 1 size: 2560->2688 +128 (5.0%)
      class 40: pages: 3 size: 2816->3072 +256 (9.9%)
      class 41: pages: 2 size: 3072->3200 +128 (4.16%)
      class 42: pages: 3 size: 3328->3456 +128 (3.84%)
      class 44: pages: 3 size: 4608->4864 +256 (5.55%)
      class 47: pages: 4 size: 6400->6528 +128 (2.0%)
      class 48: pages: 5 size: 6656->6784 +128 (1.92%)
      class 51: pages: 7 size: 8448->9472 +1024 (12.12%)
      class 52: pages: 6 size: 8704->9728 +1024 (11.76%)
      class 53: pages: 5 size: 9472->10240 +768 (8.10%)
      class 54: pages: 4 size: 10496->10880 +384 (3.65%)
      class 57: pages: 7 size: 14080->14336 +256 (1.81%)
      class 59: pages: 9 size: 16640->18432 +1792 (10.76%)
      class 60: pages: 7 size: 17664->19072 +1408 (7.97%)
      class 62: pages: 8 size: 21248->21760 +512 (2.40%)
      class 64: pages: 10 size: 24832->27264 +2432 (9.79%)
      class 65: pages: 7 size: 28416->28672 +256 (0.90%)
      
      name                      old time/op    new time/op    delta
      BinaryTree17-12              2.59s ± 5%     2.52s ± 4%    ~     (p=0.132 n=6+6)
      Fannkuch11-12                2.13s ± 3%     2.17s ± 3%    ~     (p=0.180 n=6+6)
      FmtFprintfEmpty-12          47.0ns ± 3%    46.6ns ± 1%    ~     (p=0.355 n=6+5)
      FmtFprintfString-12          131ns ± 0%     131ns ± 1%    ~     (p=0.476 n=4+6)
      FmtFprintfInt-12             121ns ± 6%     122ns ± 2%    ~     (p=0.511 n=6+6)
      FmtFprintfIntInt-12          182ns ± 2%     186ns ± 1%  +2.20%  (p=0.015 n=6+6)
      FmtFprintfPrefixedInt-12     184ns ± 5%     181ns ± 2%    ~     (p=0.645 n=6+6)
      FmtFprintfFloat-12           272ns ± 7%     265ns ± 1%    ~     (p=1.000 n=6+5)
      FmtManyArgs-12               783ns ± 2%     802ns ± 2%  +2.38%  (p=0.017 n=6+6)
      GobDecode-12                7.04ms ± 4%    7.00ms ± 2%    ~     (p=1.000 n=6+6)
      GobEncode-12                6.36ms ± 6%    6.17ms ± 6%    ~     (p=0.240 n=6+6)
      Gzip-12                      242ms ±14%     233ms ± 7%    ~     (p=0.310 n=6+6)
      Gunzip-12                   36.6ms ±22%    36.0ms ± 9%    ~     (p=0.841 n=5+5)
      HTTPClientServer-12         93.1µs ±29%    88.0µs ±32%    ~     (p=0.240 n=6+6)
      JSONEncode-12               27.1ms ±39%    26.2ms ±35%    ~     (p=0.589 n=6+6)
      JSONDecode-12               71.7ms ±36%    71.5ms ±36%    ~     (p=0.937 n=6+6)
      Mandelbrot200-12            4.78ms ±10%    4.70ms ±16%    ~     (p=0.394 n=6+6)
      GoParse-12                  4.86ms ±34%    4.95ms ±36%    ~     (p=1.000 n=6+6)
      RegexpMatchEasy0_32-12       110ns ±37%     110ns ±36%    ~     (p=0.660 n=6+6)
      RegexpMatchEasy0_1K-12       240ns ±38%     234ns ±47%    ~     (p=0.554 n=6+6)
      RegexpMatchEasy1_32-12      77.2ns ± 2%    77.2ns ±10%    ~     (p=0.699 n=6+6)
      RegexpMatchEasy1_1K-12       337ns ± 5%     331ns ± 4%    ~     (p=0.552 n=6+6)
      RegexpMatchMedium_32-12      125ns ±13%     132ns ±26%    ~     (p=0.561 n=6+6)
      RegexpMatchMedium_1K-12     35.9µs ± 3%    36.1µs ± 5%    ~     (p=0.818 n=6+6)
      RegexpMatchHard_32-12       1.81µs ± 4%    1.82µs ± 5%    ~     (p=0.452 n=5+5)
      RegexpMatchHard_1K-12       52.4µs ± 2%    54.4µs ± 3%  +3.84%  (p=0.002 n=6+6)
      Revcomp-12                   401ms ± 2%     390ms ± 1%  -2.82%  (p=0.002 n=6+6)
      Template-12                 54.5ms ± 3%    54.6ms ± 1%    ~     (p=0.589 n=6+6)
      TimeParse-12                 294ns ± 1%     298ns ± 2%    ~     (p=0.160 n=6+6)
      TimeFormat-12                323ns ± 4%     318ns ± 5%    ~     (p=0.297 n=6+6)
      
      name                      old speed      new speed      delta
      GobDecode-12               109MB/s ± 4%   110MB/s ± 2%    ~     (p=1.000 n=6+6)
      GobEncode-12               121MB/s ± 6%   125MB/s ± 6%    ~     (p=0.240 n=6+6)
      Gzip-12                   80.4MB/s ±12%  83.3MB/s ± 7%    ~     (p=0.310 n=6+6)
      Gunzip-12                  495MB/s ±41%   541MB/s ± 9%    ~     (p=0.931 n=6+5)
      JSONEncode-12             80.7MB/s ±39%  82.8MB/s ±34%    ~     (p=0.589 n=6+6)
      JSONDecode-12             30.4MB/s ±40%  31.0MB/s ±37%    ~     (p=0.937 n=6+6)
      GoParse-12                13.2MB/s ±33%  13.2MB/s ±35%    ~     (p=1.000 n=6+6)
      RegexpMatchEasy0_32-12     321MB/s ±34%   326MB/s ±34%    ~     (p=0.699 n=6+6)
      RegexpMatchEasy0_1K-12    4.49GB/s ±31%  4.74GB/s ±37%    ~     (p=0.589 n=6+6)
      RegexpMatchEasy1_32-12     414MB/s ± 2%   415MB/s ± 9%    ~     (p=0.699 n=6+6)
      RegexpMatchEasy1_1K-12    3.03GB/s ± 5%  3.09GB/s ± 4%    ~     (p=0.699 n=6+6)
      RegexpMatchMedium_32-12   7.99MB/s ±12%  7.68MB/s ±22%    ~     (p=0.589 n=6+6)
      RegexpMatchMedium_1K-12   28.5MB/s ± 3%  28.4MB/s ± 5%    ~     (p=0.818 n=6+6)
      RegexpMatchHard_32-12     17.7MB/s ± 4%  17.0MB/s ±15%    ~     (p=0.351 n=5+6)
      RegexpMatchHard_1K-12     19.6MB/s ± 2%  18.8MB/s ± 3%  -3.67%  (p=0.002 n=6+6)
      Revcomp-12                 634MB/s ± 2%   653MB/s ± 1%  +2.89%  (p=0.002 n=6+6)
      Template-12               35.6MB/s ± 3%  35.5MB/s ± 1%    ~     (p=0.615 n=6+6)
      
      Change-Id: I465a47f74227f316e3abea231444f48c7a30ef85
      Reviewed-on: https://go-review.googlesource.com/24493
      Run-TryBot: Dmitry Vyukov <dvyukov@google.com>
      TryBot-Result: Gobot Gobot <gobot@golang.org>
      Reviewed-by: default avatarKeith Randall <khr@golang.org>
      Reviewed-by: default avatarAustin Clements <austin@google.com>
      14e59511
    • Jaana Burcu Dogan's avatar
      context: test WithCancel with canceled parent · ab9137dd
      Jaana Burcu Dogan authored
      Change-Id: I32079cc12cfffb8520f0073a8b5119705dc0cd1b
      Reviewed-on: https://go-review.googlesource.com/27401Reviewed-by: default avatarBrad Fitzpatrick <bradfitz@golang.org>
      Run-TryBot: Brad Fitzpatrick <bradfitz@golang.org>
      TryBot-Result: Gobot Gobot <gobot@golang.org>
      ab9137dd
    • Austin Clements's avatar
      runtime: fix check for vacuous page boundary rounding again · 3de7dbb1
      Austin Clements authored
      The previous fix for this, commit 336dad2a, had everything right in
      the commit message, but reversed the test in the code. Fix the test in
      the code.
      
      This reversal effectively disabled the scavenger on large page systems
      *except* in the rare cases where this code was originally wrong, which
      is why it didn't obviously show up in testing.
      
      Fixes #16644. Again. :(
      
      Change-Id: I27cce4aea13de217197db4b628f17860f27ce83e
      Reviewed-on: https://go-review.googlesource.com/27402
      Run-TryBot: Austin Clements <austin@google.com>
      Reviewed-by: default avatarBrad Fitzpatrick <bradfitz@golang.org>
      3de7dbb1