Skip to content

Commit

Permalink
Fix race due to use of TryLock where
Browse files Browse the repository at this point in the history
grpc_event_engine::experimental::TimerList::TimerCheck
could miss an existing timer and leave the wakeup time to InfiniteFuture.
  • Loading branch information
scwhittle committed Jun 6, 2024
1 parent 8c6be41 commit a4dee22
Show file tree
Hide file tree
Showing 17 changed files with 21 additions and 23 deletions.
10 changes: 4 additions & 6 deletions src/core/lib/event_engine/posix_engine/timer.cc
Original file line number Diff line number Diff line change
Expand Up @@ -298,12 +298,10 @@ TimerList::TimerCheck(grpc_core::Timestamp* next) {
return std::vector<experimental::EventEngine::Closure*>();
}

if (!checker_mu_.TryLock()) return absl::nullopt;
std::vector<experimental::EventEngine::Closure*> run =
FindExpiredTimers(now, next);
checker_mu_.Unlock();

return std::move(run);
{
absl::MutexLock lock(&checker_mu_);
return FindExpiredTimers(now, next);
}
}

} // namespace experimental
Expand Down
4 changes: 2 additions & 2 deletions src/core/lib/event_engine/posix_engine/timer.h
Original file line number Diff line number Diff line change
Expand Up @@ -149,8 +149,8 @@ class TimerList {
grpc_core::Mutex mu_;
// The deadline of the next timer due across all timer shards
std::atomic<uint64_t> min_timer_;
// Allow only one FindExpiredTimers at once (used as a TryLock, protects no
// fields but ensures limits on concurrency)
// Allow only one FindExpiredTimers at once (protects no fields but ensures
// limits on concurrency)
grpc_core::Mutex checker_mu_;
// Array of timer shards. Whenever a timer (Timer *) is added, its address
// is hashed to select the timer shard to add the timer to
Expand Down
2 changes: 1 addition & 1 deletion third_party/benchmark
Submodule benchmark updated 81 files
+0 −1 .clang-tidy
+4 −5 .github/install_bazel.sh
+1 −1 .github/libcxx-setup.sh
+1 −1 .github/workflows/bazel.yml
+53 −6 .github/workflows/build-and-test.yml
+2 −1 .github/workflows/clang-format-lint.yml
+38 −0 .github/workflows/pre-commit.yml
+0 −28 .github/workflows/pylint.yml
+8 −7 .github/workflows/test_bindings.yml
+44 −33 .github/workflows/wheels.yml
+1 −0 .gitignore
+18 −0 .pre-commit-config.yaml
+99 −94 .ycm_extra_conf.py
+1 −0 AUTHORS
+40 −13 BUILD.bazel
+26 −11 CMakeLists.txt
+2 −0 CONTRIBUTORS
+27 −10 MODULE.bazel
+11 −9 WORKSPACE
+16 −19 bazel/benchmark_deps.bzl
+0 −3 bindings/python/BUILD
+0 −25 bindings/python/build_defs.bzl
+3 −16 bindings/python/google_benchmark/BUILD
+18 −39 bindings/python/google_benchmark/__init__.py
+4 −1 bindings/python/google_benchmark/example.py
+7 −0 bindings/python/google_benchmark/version.py
+0 −17 bindings/python/nanobind.BUILD
+0 −6 bindings/python/python_headers.BUILD
+4 −26 cmake/GetGitVersion.cmake
+7 −0 cmake/benchmark_main.pc.in
+4 −4 docs/python_bindings.md
+2 −4 docs/reducing_variance.md
+4 −14 docs/releasing.md
+28 −2 docs/user_guide.md
+61 −12 include/benchmark/benchmark.h
+38 −2 pyproject.toml
+101 −66 setup.py
+10 −1 src/CMakeLists.txt
+33 −4 src/benchmark.cc
+3 −2 src/benchmark_register.cc
+2 −2 src/benchmark_register.h
+6 −5 src/benchmark_runner.cc
+3 −3 src/colorprint.cc
+29 −14 src/complexity.cc
+9 −5 src/console_reporter.cc
+2 −2 src/counter.cc
+11 −3 src/csv_reporter.cc
+26 −13 src/cycleclock.h
+1 −5 src/internal_macros.h
+7 −0 src/json_reporter.cc
+3 −2 src/perf_counters.cc
+10 −5 src/statistics.cc
+1 −1 src/string_util.cc
+38 −22 src/sysinfo.cc
+17 −5 src/timers.cc
+28 −1 src/timers.h
+5 −0 test/BUILD
+49 −40 test/CMakeLists.txt
+1 −1 test/basic_test.cc
+1 −1 test/benchmark_gtest.cc
+26 −0 test/benchmark_test.cc
+101 −59 test/complexity_test.cc
+2 −2 test/diagnostics_test.cc
+1 −1 test/link_main_test.cc
+1 −1 test/memory_manager_test.cc
+1 −0 test/output_test_helper.cc
+1 −1 test/perf_counters_gtest.cc
+1 −1 test/perf_counters_test.cc
+7 −4 test/reporter_output_test.cc
+1 −1 test/skip_with_error_test.cc
+2 −2 test/statistics_gtest.cc
+6 −3 test/user_counters_tabular_test.cc
+7 −7 test/user_counters_test.cc
+3 −2 tools/BUILD.bazel
+261 −170 tools/compare.py
+18 −0 tools/gbench/Inputs/test5_run0.json
+18 −0 tools/gbench/Inputs/test5_run1.json
+4 −4 tools/gbench/__init__.py
+1,071 −653 tools/gbench/report.py
+71 −43 tools/gbench/util.py
+65 −53 tools/strip_asm.py
2 changes: 1 addition & 1 deletion third_party/boringssl-with-bazel
2 changes: 1 addition & 1 deletion third_party/cares/cares
Submodule cares updated 424 files
2 changes: 1 addition & 1 deletion third_party/envoy-api
Submodule envoy-api updated 91 files
+10 −2 BUILD
+6 −12 bazel/BUILD
+10 −11 bazel/api_build_system.bzl
+4 −2 bazel/cc_proto_descriptor_library/BUILD
+0 −4 bazel/cc_proto_descriptor_library/builddefs.bzl
+2 −2 bazel/external_proto_deps.bzl
+6 −7 bazel/repositories.bzl
+43 −21 bazel/repository_locations.bzl
+9 −0 contrib/envoy/extensions/compression/qatzstd/compressor/v3alpha/BUILD
+69 −0 contrib/envoy/extensions/compression/qatzstd/compressor/v3alpha/qatzstd.proto
+16 −1 contrib/envoy/extensions/filters/network/generic_proxy/action/v3/action.proto
+12 −0 contrib/envoy/extensions/filters/network/generic_proxy/codecs/http1/v3/BUILD
+49 −0 contrib/envoy/extensions/filters/network/generic_proxy/codecs/http1/v3/http1.proto
+7 −1 envoy/admin/v3/server_info.proto
+1 −0 envoy/config/accesslog/v3/accesslog.proto
+16 −1 envoy/config/bootstrap/v3/bootstrap.proto
+25 −0 envoy/config/cluster/v3/cluster.proto
+7 −1 envoy/config/cluster/v3/outlier_detection.proto
+52 −2 envoy/config/core/v3/base.proto
+3 −5 envoy/config/core/v3/config_source.proto
+11 −1 envoy/config/core/v3/grpc_service.proto
+16 −4 envoy/config/core/v3/health_check.proto
+31 −7 envoy/config/core/v3/protocol.proto
+6 −0 envoy/config/endpoint/v3/endpoint.proto
+4 −1 envoy/config/listener/v3/listener.proto
+11 −2 envoy/config/listener/v3/quic_config.proto
+0 −1 envoy/config/metrics/v3/metrics_service.proto
+5 −1 envoy/config/rbac/v3/rbac.proto
+11 −4 envoy/config/route/v3/route_components.proto
+7 −3 envoy/config/trace/v3/dynamic_ot.proto
+65 −26 envoy/config/trace/v3/opencensus.proto
+6 −1 envoy/config/trace/v3/zipkin.proto
+4 −1 envoy/data/accesslog/v3/accesslog.proto
+10 −1 envoy/data/core/v3/health_check_event.proto
+24 −0 envoy/data/core/v3/tlv_metadata.proto
+12 −0 envoy/extensions/access_loggers/fluentd/v3/BUILD
+94 −0 envoy/extensions/access_loggers/fluentd/v3/fluentd.proto
+6 −1 envoy/extensions/access_loggers/open_telemetry/v3/logs_service.proto
+2 −2 envoy/extensions/common/dynamic_forward_proxy/v3/dns_cache.proto
+1 −0 envoy/extensions/filters/http/alternate_protocols_cache/v3/BUILD
+5 −5 envoy/extensions/filters/http/alternate_protocols_cache/v3/alternate_protocols_cache.proto
+46 −0 envoy/extensions/filters/http/aws_lambda/v3/aws_lambda.proto
+26 −3 envoy/extensions/filters/http/aws_request_signing/v3/aws_request_signing.proto
+16 −0 envoy/extensions/filters/http/basic_auth/v3/basic_auth.proto
+6 −1 envoy/extensions/filters/http/cache/v3/cache.proto
+1 −2 envoy/extensions/filters/http/composite/v3/composite.proto
+5 −1 envoy/extensions/filters/http/cors/v3/cors.proto
+17 −12 envoy/extensions/filters/http/credential_injector/v3/credential_injector.proto
+47 −1 envoy/extensions/filters/http/ext_authz/v3/ext_authz.proto
+108 −19 envoy/extensions/filters/http/ext_proc/v3/ext_proc.proto
+4 −1 envoy/extensions/filters/http/json_to_metadata/v3/BUILD
+7 −1 envoy/extensions/filters/http/json_to_metadata/v3/json_to_metadata.proto
+1 −0 envoy/extensions/filters/http/jwt_authn/v3/BUILD
+45 −1 envoy/extensions/filters/http/jwt_authn/v3/config.proto
+13 −1 envoy/extensions/filters/http/oauth2/v3/oauth.proto
+9 −1 envoy/extensions/filters/http/rbac/v3/rbac.proto
+13 −0 envoy/extensions/filters/http/thrift_to_metadata/v3/BUILD
+190 −0 envoy/extensions/filters/http/thrift_to_metadata/v3/thrift_to_metadata.proto
+15 −0 envoy/extensions/filters/listener/proxy_protocol/v3/proxy_protocol.proto
+7 −1 envoy/extensions/filters/network/ext_authz/v3/ext_authz.proto
+5 −1 envoy/extensions/filters/network/http_connection_manager/v3/http_connection_manager.proto
+2 −0 envoy/extensions/filters/network/tcp_proxy/v3/tcp_proxy.proto
+0 −0 envoy/extensions/http/injected_credentials/generic/v3/BUILD
+4 −43 envoy/extensions/http/injected_credentials/generic/v3/generic.proto
+0 −0 envoy/extensions/http/injected_credentials/oauth2/v3/BUILD
+11 −5 envoy/extensions/http/injected_credentials/oauth2/v3/oauth2.proto
+1 −0 envoy/extensions/load_balancing_policies/least_request/v3/BUILD
+34 −5 envoy/extensions/load_balancing_policies/least_request/v3/least_request.proto
+7 −0 envoy/extensions/network/dns_resolver/cares/v3/cares_dns_resolver.proto
+12 −0 envoy/extensions/outlier_detection_monitors/common/v3/BUILD
+44 −0 envoy/extensions/outlier_detection_monitors/common/v3/error_types.proto
+12 −0 envoy/extensions/outlier_detection_monitors/consecutive_errors/v3/BUILD
+34 −0 envoy/extensions/outlier_detection_monitors/consecutive_errors/v3/consecutive_errors.proto
+9 −0 envoy/extensions/quic/connection_debug_visitor/v3/BUILD
+18 −0 envoy/extensions/quic/connection_debug_visitor/v3/connection_debug_visitor_basic.proto
+1 −0 envoy/extensions/quic/server_preferred_address/v3/BUILD
+37 −9 envoy/extensions/quic/server_preferred_address/v3/fixed_server_preferred_address_config.proto
+12 −0 envoy/extensions/string_matcher/lua/v3/BUILD
+37 −0 envoy/extensions/string_matcher/lua/v3/lua.proto
+4 −1 envoy/extensions/tracers/opentelemetry/samplers/v3/BUILD
+54 −0 envoy/extensions/tracers/opentelemetry/samplers/v3/dynatrace_sampler.proto
+12 −6 envoy/extensions/transport_sockets/tls/v3/common.proto
+6 −12 envoy/extensions/transport_sockets/tls/v3/tls.proto
+5 −9 envoy/extensions/wasm/v3/wasm.proto
+33 −4 envoy/service/auth/v3/attribute_context.proto
+1 −0 envoy/service/ext_proc/v3/BUILD
+49 −41 envoy/service/ext_proc/v3/external_processor.proto
+1 −1 envoy/type/http/v3/cookie.proto
+1 −0 envoy/type/matcher/v3/BUILD
+7 −1 envoy/type/matcher/v3/string.proto
+10 −2 versioning/BUILD
2 changes: 1 addition & 1 deletion third_party/googleapis
Submodule googleapis updated 8483 files
2 changes: 1 addition & 1 deletion third_party/googletest
Submodule googletest updated 61 files
+0 −43 .github/workflows/gtest-ci.yml
+1 −0 .gitignore
+17 −0 BUILD.bazel
+9 −0 CMakeLists.txt
+1 −0 CONTRIBUTORS
+61 −0 MODULE.bazel
+14 −12 WORKSPACE
+35 −0 WORKSPACE.bzlmod
+6 −4 ci/linux-presubmit.sh
+2 −1 ci/macos-presubmit.sh
+2 −2 ci/windows-presubmit.bat
+15 −5 docs/advanced.md
+32 −3 docs/gmock_cook_book.md
+2 −0 docs/gmock_for_dummies.md
+17 −18 docs/primer.md
+24 −3 docs/reference/testing.md
+33 −0 fake_fuchsia_sdk.bzl
+4 −3 googlemock/CMakeLists.txt
+27 −9 googlemock/include/gmock/gmock-actions.h
+90 −89 googlemock/include/gmock/gmock-matchers.h
+4 −3 googlemock/include/gmock/gmock-more-actions.h
+1 −0 googlemock/include/gmock/gmock.h
+8 −6 googlemock/include/gmock/internal/gmock-internal-utils.h
+4 −4 googlemock/include/gmock/internal/gmock-port.h
+3 −2 googlemock/src/gmock-internal-utils.cc
+13 −14 googlemock/src/gmock-matchers.cc
+2 −1 googlemock/src/gmock-spec-builders.cc
+9 −0 googlemock/test/gmock-matchers-comparisons_test.cc
+14 −3 googlemock/test/gmock-matchers-containers_test.cc
+39 −1 googlemock/test/gmock-more-actions_test.cc
+9 −0 googlemock/test/gmock_link_test.h
+1 −1 googletest/CMakeLists.txt
+4 −0 googletest/cmake/Config.cmake.in
+3 −1 googletest/cmake/internal_utils.cmake
+1 −1 googletest/include/gtest/gtest-assertion-result.h
+4 −4 googletest/include/gtest/gtest-death-test.h
+4 −4 googletest/include/gtest/gtest-param-test.h
+35 −21 googletest/include/gtest/gtest-printers.h
+65 −61 googletest/include/gtest/gtest-typed-test.h
+32 −14 googletest/include/gtest/gtest.h
+25 −26 googletest/include/gtest/internal/gtest-death-test-internal.h
+7 −1 googletest/include/gtest/internal/gtest-filepath.h
+25 −63 googletest/include/gtest/internal/gtest-internal.h
+78 −76 googletest/include/gtest/internal/gtest-param-util.h
+2 −0 googletest/include/gtest/internal/gtest-port-arch.h
+51 −20 googletest/include/gtest/internal/gtest-port.h
+18 −16 googletest/src/gtest-death-test.cc
+28 −16 googletest/src/gtest-internal-inl.h
+34 −19 googletest/src/gtest-port.cc
+165 −115 googletest/src/gtest.cc
+1 −0 googletest/test/googletest-color-test.py
+39 −37 googletest/test/googletest-death-test-test.cc
+15 −0 googletest/test/googletest-json-output-unittest.py
+4 −1 googletest/test/googletest-options-test.cc
+0 −5 googletest/test/googletest-output-test-golden-lin.txt
+52 −44 googletest/test/gtest_environment_test.cc
+3 −0 googletest/test/gtest_json_test_utils.py
+1 −3 googletest/test/gtest_repeat_test.cc
+18 −26 googletest/test/gtest_unittest.cc
+9 −6 googletest/test/gtest_xml_output_unittest.py
+14 −8 googletest_deps.bzl
2 changes: 1 addition & 1 deletion third_party/opencensus-proto
Submodule opencensus-proto updated 53 files
+59 −0 Makefile
+8 −0 README.md
+20 −20 RELEASING.md
+1 −1 build.gradle
+17 −21 gen-go/agent/common/v1/common.pb.go
+127 −11 gen-go/agent/metrics/v1/metrics_service.pb.go
+8 −16 gen-go/agent/metrics/v1/metrics_service.pb.gw.go
+0 −126 gen-go/agent/metrics/v1/metrics_service_grpc.pb.go
+201 −11 gen-go/agent/trace/v1/trace_service.pb.go
+8 −16 gen-go/agent/trace/v1/trace_service.pb.gw.go
+0 −200 gen-go/agent/trace/v1/trace_service_grpc.pb.go
+25 −30 gen-go/metrics/v1/metrics.pb.go
+6 −11 gen-go/resource/v1/resource.pb.go
+10 −15 gen-go/stats/v1/stats.pb.go
+21 −26 gen-go/trace/v1/trace.pb.go
+6 −11 gen-go/trace/v1/trace_config.pb.go
+30 −57 gen-openapi/opencensus/proto/agent/metrics/v1/metrics_service.swagger.json
+76 −104 gen-openapi/opencensus/proto/agent/trace/v1/trace_service.swagger.json
+80 −59 gen-python/opencensus/proto/agent/common/v1/common_pb2.py
+20 −16 gen-python/opencensus/proto/agent/metrics/v1/metrics_service_pb2.py
+61 −35 gen-python/opencensus/proto/agent/metrics/v1/metrics_service_pb2_grpc.py
+35 −28 gen-python/opencensus/proto/agent/trace/v1/trace_service_pb2.py
+99 −55 gen-python/opencensus/proto/agent/trace/v1/trace_service_pb2_grpc.py
+154 −126 gen-python/opencensus/proto/metrics/v1/metrics_pb2.py
+23 −21 gen-python/opencensus/proto/resource/v1/resource_pb2.py
+86 −70 gen-python/opencensus/proto/stats/v1/stats_pb2.py
+45 −35 gen-python/opencensus/proto/trace/v1/trace_config_pb2.py
+225 −183 gen-python/opencensus/proto/trace/v1/trace_pb2.py
+1 −1 gen-python/version.py
+38 −35 gen-ruby/opencensus/proto/agent/common/v1/common_pb.rb
+10 −8 gen-ruby/opencensus/proto/agent/metrics/v1/metrics_service_pb.rb
+2 −2 gen-ruby/opencensus/proto/agent/metrics/v1/metrics_service_services_pb.rb
+20 −18 gen-ruby/opencensus/proto/agent/trace/v1/trace_service_pb.rb
+3 −3 gen-ruby/opencensus/proto/agent/trace/v1/trace_service_services_pb.rb
+96 −94 gen-ruby/opencensus/proto/metrics/v1/metrics_pb.rb
+6 −4 gen-ruby/opencensus/proto/resource/v1/resource_pb.rb
+53 −51 gen-ruby/opencensus/proto/stats/v1/stats_pb.rb
+30 −28 gen-ruby/opencensus/proto/trace/v1/trace_config_pb.rb
+133 −130 gen-ruby/opencensus/proto/trace/v1/trace_pb.rb
+17 −0 go.mod
+23 −0 go.sum
+0 −146 src/install-protoc.sh
+0 −37 src/mkgogen.sh
+0 −27 src/mkpygen.sh
+0 −25 src/mkrubygen.sh
+1 −1 src/opencensus/proto/agent/common/v1/common.proto
+1 −1 src/opencensus/proto/agent/metrics/v1/metrics_service.proto
+1 −1 src/opencensus/proto/agent/trace/v1/trace_service.proto
+1 −1 src/opencensus/proto/metrics/v1/metrics.proto
+1 −1 src/opencensus/proto/resource/v1/resource.proto
+1 −1 src/opencensus/proto/stats/v1/stats.proto
+1 −1 src/opencensus/proto/trace/v1/trace.proto
+1 −1 src/opencensus/proto/trace/v1/trace_config.proto
2 changes: 1 addition & 1 deletion third_party/opentelemetry
Submodule opentelemetry updated 42 files
+4 −1 .github/CODEOWNERS
+2 −1 .github/auto_assign.yml
+48 −0 .github/workflows/build-check.yaml
+2 −0 .gitignore
+22 −0 .markdown_link_check_config.json
+14 −0 .markdownlint.yaml
+220 −11 CHANGELOG.md
+60 −8 Makefile
+58 −22 README.md
+15 −87 RELEASING.md
+6 −0 buf.yaml
+8 −0 docs/README.md
+19 −0 docs/design-goals.md
+ docs/img/otlp-client-server.png
+ docs/img/otlp-concurrent.png
+ docs/img/otlp-multi-destination.png
+ docs/img/otlp-request-response.png
+ docs/img/otlp-sequential.png
+99 −0 docs/requirements.md
+717 −0 docs/specification.md
+43 −0 examples/README.md
+101 −0 examples/logs.json
+107 −0 examples/metrics.json
+51 −0 examples/trace.json
+1 −0 opentelemetry/proto/collector/README.md
+35 −4 opentelemetry/proto/collector/logs/v1/logs_service.proto
+35 −1 opentelemetry/proto/collector/metrics/v1/metrics_service.proto
+78 −0 opentelemetry/proto/collector/profiles/v1experimental/profiles_service.proto
+9 −0 opentelemetry/proto/collector/profiles/v1experimental/profiles_service_http.yaml
+35 −1 opentelemetry/proto/collector/trace/v1/trace_service.proto
+2 −2 opentelemetry/proto/collector/trace/v1/trace_service_http.yaml
+14 −14 opentelemetry/proto/common/v1/common.proto
+99 −28 opentelemetry/proto/logs/v1/logs.proto
+0 −102 opentelemetry/proto/metrics/experimental/metrics_config_service.proto
+239 −239 opentelemetry/proto/metrics/v1/metrics.proto
+388 −0 opentelemetry/proto/profiles/v1experimental/pprofextended.proto
+191 −0 opentelemetry/proto/profiles/v1experimental/profiles.proto
+5 −2 opentelemetry/proto/resource/v1/resource.proto
+136 −105 opentelemetry/proto/trace/v1/trace.proto
+0 −78 opentelemetry/proto/trace/v1/trace_config.proto
+1,375 −0 package-lock.json
+6 −0 package.json
2 changes: 1 addition & 1 deletion third_party/opentelemetry-cpp
Submodule opentelemetry-cpp updated 427 files
2 changes: 1 addition & 1 deletion third_party/protobuf
Submodule protobuf updated 1166 files
2 changes: 1 addition & 1 deletion third_party/protoc-gen-validate
2 changes: 1 addition & 1 deletion third_party/re2
Submodule re2 updated 129 files
2 changes: 1 addition & 1 deletion third_party/xds
Submodule xds updated 90 files
+0 −1 .gitignore
+0 −11 bazel/BUILD
+12 −13 bazel/api_build_system.bzl
+36 −31 bazel/dependency_imports.bzl
+1 −1 bazel/envoy_http_archive.bzl
+6 −2 bazel/external_proto_deps.bzl
+5 −1 bazel/repositories.bzl
+23 −13 bazel/repository_locations.bzl
+32 −0 ci/azure-pipelines.yml
+14 −4 go/go.mod
+26 −0 go/go.sum
+5 −4 go/udpa/annotations/migrate.pb.go
+111 −4 go/udpa/annotations/migrate.pb.validate.go
+5 −5 go/udpa/annotations/security.pb.go
+38 −1 go/udpa/annotations/security.pb.validate.go
+4 −4 go/udpa/annotations/sensitive.pb.go
+2 −0 go/udpa/annotations/sensitive.pb.validate.go
+4 −4 go/udpa/annotations/status.pb.go
+39 −2 go/udpa/annotations/status.pb.validate.go
+5 −4 go/udpa/annotations/versioning.pb.go
+38 −1 go/udpa/annotations/versioning.pb.validate.go
+38 −39 go/udpa/data/orca/v1/orca_load_report.pb.go
+72 −13 go/udpa/data/orca/v1/orca_load_report.pb.validate.go
+6 −117 go/udpa/service/orca/v1/orca.pb.go
+58 −2 go/udpa/service/orca/v1/orca.pb.validate.go
+135 −0 go/udpa/service/orca/v1/orca_grpc.pb.go
+7 −7 go/udpa/type/v1/typed_struct.pb.go
+58 −3 go/udpa/type/v1/typed_struct.pb.validate.go
+1 −1 go/xds/annotations/v3/migrate.pb.go
+111 −4 go/xds/annotations/v3/migrate.pb.validate.go
+5 −5 go/xds/annotations/v3/security.pb.go
+38 −1 go/xds/annotations/v3/security.pb.validate.go
+1 −1 go/xds/annotations/v3/sensitive.pb.go
+2 −0 go/xds/annotations/v3/sensitive.pb.validate.go
+1 −1 go/xds/annotations/v3/status.pb.go
+147 −5 go/xds/annotations/v3/status.pb.validate.go
+1 −1 go/xds/annotations/v3/versioning.pb.go
+38 −1 go/xds/annotations/v3/versioning.pb.validate.go
+7 −7 go/xds/core/v3/authority.pb.go
+43 −2 go/xds/core/v3/authority.pb.validate.go
+13 −13 go/xds/core/v3/cidr.pb.go
+48 −3 go/xds/core/v3/cidr.pb.validate.go
+13 −13 go/xds/core/v3/collection_entry.pb.go
+172 −11 go/xds/core/v3/collection_entry.pb.validate.go
+8 −8 go/xds/core/v3/context_params.pb.go
+39 −2 go/xds/core/v3/context_params.pb.validate.go
+6 −6 go/xds/core/v3/extension.pb.go
+48 −3 go/xds/core/v3/extension.pb.validate.go
+11 −11 go/xds/core/v3/resource.pb.go
+78 −3 go/xds/core/v3/resource.pb.validate.go
+7 −7 go/xds/core/v3/resource_locator.pb.go
+199 −15 go/xds/core/v3/resource_locator.pb.validate.go
+8 −8 go/xds/core/v3/resource_name.pb.go
+63 −4 go/xds/core/v3/resource_name.pb.validate.go
+52 −53 go/xds/data/orca/v3/orca_load_report.pb.go
+88 −17 go/xds/data/orca/v3/orca_load_report.pb.validate.go
+6 −117 go/xds/service/orca/v3/orca.pb.go
+58 −2 go/xds/service/orca/v3/orca.pb.validate.go
+135 −0 go/xds/service/orca/v3/orca_grpc.pb.go
+8 −8 go/xds/type/matcher/v3/cel.pb.go
+63 −3 go/xds/type/matcher/v3/cel.pb.validate.go
+8 −8 go/xds/type/matcher/v3/domain.pb.go
+120 −6 go/xds/type/matcher/v3/domain.pb.validate.go
+9 −9 go/xds/type/matcher/v3/http_inputs.pb.go
+38 −1 go/xds/type/matcher/v3/http_inputs.pb.validate.go
+8 −8 go/xds/type/matcher/v3/ip.pb.go
+139 −6 go/xds/type/matcher/v3/ip.pb.validate.go
+1 −1 go/xds/type/matcher/v3/matcher.pb.go
+998 −71 go/xds/type/matcher/v3/matcher.pb.validate.go
+1 −1 go/xds/type/matcher/v3/range.pb.go
+415 −20 go/xds/type/matcher/v3/range.pb.validate.go
+1 −1 go/xds/type/matcher/v3/regex.pb.go
+124 −9 go/xds/type/matcher/v3/regex.pb.validate.go
+68 −45 go/xds/type/matcher/v3/string.pb.go
+247 −15 go/xds/type/matcher/v3/string.pb.validate.go
+88 −52 go/xds/type/v3/cel.pb.go
+239 −14 go/xds/type/v3/cel.pb.validate.go
+1 −1 go/xds/type/v3/range.pb.go
+110 −4 go/xds/type/v3/range.pb.validate.go
+7 −7 go/xds/type/v3/typed_struct.pb.go
+58 −3 go/xds/type/v3/typed_struct.pb.validate.go
+1 −1 udpa/annotations/migrate.proto
+1 −1 udpa/annotations/security.proto
+1 −1 udpa/annotations/sensitive.proto
+1 −1 udpa/annotations/status.proto
+1 −1 udpa/annotations/versioning.proto
+6 −6 xds/type/matcher/v3/BUILD
+6 −1 xds/type/matcher/v3/string.proto
+2 −0 xds/type/v3/BUILD
+20 −4 xds/type/v3/cel.proto
2 changes: 1 addition & 1 deletion third_party/zlib
Submodule zlib updated 89 files
+208 −0 .github/workflows/c-std.yml
+12 −3 .github/workflows/cmake.yml
+3 −3 .github/workflows/configure.yml
+1 −1 .github/workflows/fuzz.yml
+11 −1 .gitignore
+30 −20 CMakeLists.txt
+13 −0 ChangeLog
+2 −3 FAQ
+1 −1 LICENSE
+8 −8 Makefile.in
+3 −5 README
+11 −8 configure
+1 −1 contrib/ada/readme.txt
+1 −1 contrib/delphi/ZLib.pas
+1 −1 contrib/dotzlib/DotZLib/ChecksumImpl.cs
+1 −1 contrib/dotzlib/DotZLib/UnitTests.cs
+574 −574 contrib/gcc_gvmat64/gvmat64.S
+3 −3 contrib/infback9/inftree9.c
+2 −2 contrib/infback9/inftree9.h
+2 −2 contrib/iostream3/zfstream.h
+2 −2 contrib/minizip/Makefile
+1 −1 contrib/minizip/configure.ac
+1 −1 contrib/minizip/ioapi.h
+12 −4 contrib/minizip/iowin32.c
+1 −1 contrib/minizip/make_vms.com
+24 −10 contrib/minizip/miniunz.c
+8 −6 contrib/minizip/minizip.c
+32 −29 contrib/minizip/mztools.c
+360 −0 contrib/minizip/skipset.h
+6 −10 contrib/minizip/unzip.c
+5 −1 contrib/minizip/unzip.h
+254 −7 contrib/minizip/zip.c
+17 −11 contrib/minizip/zip.h
+43 −0 contrib/nuget/nuget.csproj
+22 −0 contrib/nuget/nuget.sln
+1 −1 contrib/pascal/zlibpas.pas
+4 −4 contrib/puff/puff.c
+4 −0 contrib/puff/pufftest.c
+81 −75 contrib/vstudio/readme.txt
+4 −4 contrib/vstudio/vc10/zlib.rc
+4 −4 contrib/vstudio/vc11/zlib.rc
+4 −4 contrib/vstudio/vc12/zlib.rc
+4 −4 contrib/vstudio/vc14/zlib.rc
+409 −0 contrib/vstudio/vc17/miniunz.vcxproj
+405 −0 contrib/vstudio/vc17/minizip.vcxproj
+473 −0 contrib/vstudio/vc17/testzlib.vcxproj
+409 −0 contrib/vstudio/vc17/testzlibdll.vcxproj
+32 −0 contrib/vstudio/vc17/zlib.rc
+602 −0 contrib/vstudio/vc17/zlibstat.vcxproj
+158 −0 contrib/vstudio/vc17/zlibvc.def
+179 −0 contrib/vstudio/vc17/zlibvc.sln
+875 −0 contrib/vstudio/vc17/zlibvc.vcxproj
+4 −4 contrib/vstudio/vc9/zlib.rc
+46 −20 deflate.c
+33 −2 deflate.h
+1 −1 doc/algorithm.txt
+2 −2 examples/gzlog.c
+4 −0 examples/gznorm.c
+4 −0 examples/zpipe.c
+114 −97 examples/zran.c
+6 −4 examples/zran.h
+32 −35 gzguts.h
+22 −19 gzlib.c
+2 −1 gzread.c
+1 −1 inflate.c
+1 −1 inflate.h
+3 −3 inftrees.c
+2 −2 inftrees.h
+1 −1 msdos/Makefile.dj2
+1 −1 old/Makefile.riscos
+1 −1 old/visual-basic.txt
+1 −1 os400/README400
+4 −4 os400/zlib.inc
+6 −6 qnx/package.qpg
+20 −13 test/example.c
+3 −3 test/infcover.c
+60 −49 test/minigzip.c
+2 −2 treebuild.xml
+18 −4 trees.c
+3 −19 win32/DLL_FAQ.txt
+4 −4 win32/README-WIN32.txt
+10 −20 zconf.h
+10 −20 zconf.h.cmakein
+10 −20 zconf.h.in
+4 −4 zlib.3
+ zlib.3.pdf
+30 −27 zlib.h
+100 −100 zlib.map
+8 −30 zutil.h

0 comments on commit a4dee22

Please sign in to comment.