Commit message (Collapse) | Author | Age | |
---|---|---|---|
* | Avoid the thread jump in server callback APIs. | Guantao Liu | 2019-01-07 |
| | | | | | | | Add a utility function in iomgr to check whether the caller thread is a worker for any background poller, and keep grpc combiner from offloading closures to the default executor if the current thread is a worker for any background poller. | ||
* | Extend ev_posix.* to prepare for the new background poller 'epollbg', | Guantao Liu | 2018-11-19 |
| | | | | | | | | | and get rid of the dependency loop on the grpc shutdown path. Make sure all background closures are complete before shutting down the other grpc modules. Avoid using the backup poller in TCP endpoints if using the background poller. | ||
* | Use union to make alignement robust. | Soheil Hassas Yeganeh | 2018-10-19 |
| | | | | Suggested-by: vjpai@google.com | ||
* | Do not waste cache lines with unnecessary paddings. | Soheil Hassas Yeganeh | 2018-10-19 |
| | | | | | | Make sure paddings are GPR_CACHELINE_SIZE minus the size of fields in that cache line. Otherwise, we will waste an additional cache line for no good reason. | ||
* | Add TODO in fd_global_shutdown() | Juanli Shen | 2018-09-27 |
| | |||
* | Support gRPC Python client-side fork with epoll1 | Eric Gribkoff | 2018-08-22 |
| | | | | | | | | | | | | | | | | | A process may fork after invoking grpc_init() and use gRPC in the child if and only if the child process first destroys all gRPC resources inherited from the parent process and invokes grpc_shutdown(). Subsequent to this, the child will be able to re-initialize and use gRPC. After fork, the parent process will be able to continue to use existing gRPC resources such as channels and calls without interference from the child process. To facilitate gRPC Python applications meeting the above constraints, gRPC Python will automatically destroy and shutdown all gRPC Core resources in the child's post-fork handler, including cancelling in-flight calls (see detailed design below). From the client's perspective, the child process is now free to create new channels and use gRPC. | ||
* | Merge master | Yash Tibrewal | 2018-07-27 |
|\ | |||
| * | Remove the notifier pollset from grpc event engine since it's not used anywhere | Yash Tibrewal | 2018-07-26 |
| | | |||
* | | Add API to grpc event engines to forcibly set underlying fd to be ↵ | Yash Tibrewal | 2018-07-26 |
|/ | | | | readable/writable/errored | ||
* | Merge pull request #15648 from apolcyn/remove_fd_shutdown_already_closed | apolcyn | 2018-06-12 |
|\ | | | | | Remove already_closed param from fd_orphan | ||
* \ | Merge branch 'master' into epollerr | Yash Tibrewal | 2018-06-11 |
|\ \ | |||
* | | | More comments | Yash Tibrewal | 2018-06-08 |
| | | | |||
| | * | Remove already_closed param from fd_orphan | Alexander Polcyn | 2018-06-07 |
| |/ | |||
* | | Add more detailed comments | Yash Tibrewal | 2018-06-05 |
| | | |||
* | | merge master | Yash Tibrewal | 2018-05-31 |
|\ \ | |||
| | * | Merge branch 'master' into prototype-cfstream | Muxi Yan | 2018-05-22 |
| | |\ | | |/ | |/| | |||
| | * | Comments | Muxi Yan | 2018-05-16 |
| | | | |||
| | * | Change existing build system for CFStream | Muxi Yan | 2018-05-15 |
| | | | |||
| * | | Change trace logging to use GPR_INFO instead of GPR_DEBUG. | Mark D. Roth | 2018-04-25 |
| |/ | |||
* / | Make linux polling engines capable of tracking errors separately with | Yash Tibrewal | 2018-04-20 |
|/ | | | | backward compatibility. | ||
* | Add a sanity check for inclusion of port_platform.h | Alexander Polcyn | 2018-02-23 |
| | |||
* | Run clang fmt | Noah Eisen | 2018-02-09 |
| | |||
* | Autofix c casts to c++ casts | Noah Eisen | 2018-02-09 |
| | |||
* | Merge branch 'master' into gpr_review | Vijay Pai | 2018-02-08 |
|\ | |||
| * | Merge branch 'master' into gpr_review_tls | Vijay Pai | 2018-02-08 |
| |\ | |||
* | | | Privatize useful.h and avl.h | Vijay Pai | 2018-02-02 |
| |/ |/| | |||
* | | Deprecate GPR_TIMER_BEGIN/END and replace with GPR_TIMER_SCOPE. | yang-g | 2018-01-31 |
| | | |||
| * | Privatize thread-local storage headers | Vijay Pai | 2018-01-25 |
|/ | |||
* | Use DEBUG level for polling engine trace logs. | yang-g | 2018-01-24 |
| | |||
* | Rename 'gpr++' directories to 'gprpp'. | Mark D. Roth | 2018-01-19 |
| | |||
* | Split lib/support into lib/gpr and lib/gpr++. | Mark D. Roth | 2018-01-18 |
| | |||
* | Eliminate GRPC_LINUX_LEGACY_EPOLL | Mehrdad Afshari | 2018-01-17 |
| | | | | | | | Rename: GRPC_LINUX_LEGACY_EPOLL to GRPC_LINUX_EPOLL, and GRPC_LINUX_EPOLL to GRPC_LINUX_EPOLL_CREATE1 | ||
* | Explicitly enable epoll on manylinux1 | Mehrdad Afshari | 2018-01-17 |
| | | | | | | | | | | | | For some reason, the glibc version check does not enable GRPC_LINUX_EPOLL on manylinux1. This commit: * Explicitly enables GRPC_LINUX_LEGACY_EPOLL on MANYLINUX1 * Switches the flag to enable epoll1 IO manager to GRPC_LINUX_LEGACY_EPOLL instead of GRPC_LINUX_EPOLL. This is to ensure epollex and epollsig that are not yet compatible with epoll_create (not epoll_create1) do not get activated unintentionally. | ||
* | Enable epoll on Python manylinux1 | Mehrdad Afshari | 2018-01-16 |
| | | | | | | | | | | | | | | The Python packages built for Linux and uploaded to PyPI are required to target a standardized platform specification dubbed `manylinux1`, which tries to cover a vast array of Linux distributions, thereby emulating a legacy lowest-common-denominator distribution, with an old `glibc` that does not support `epoll_create1`, but provides the `epoll_create` interface. While there are race condition risks associated with utilizing the latter interface and setting the `O_CLOEXEC` flag immediately on the file descriptor returned by `epoll_create`, the payoff is well worth the risks for our Python users, who currently end up falling back on `poll` polling engine when downloading our Linux binary packages. | ||
* | Merge branch v1.8.x into master | Mehrdad Afshari | 2017-12-31 |
|\ | | | | | | | Upmerge v1.8.3 into master | ||
| * | Relax log-level when polling engines are undefined | Mehrdad Afshari | 2017-12-29 |
| | | |||
* | | minor typo : becuase -> because | ita9naiwa | 2017-12-19 |
| | | |||
* | | Merge branch 'master' into cv-wait-monotonic | Sree Kuchibhotla | 2017-12-08 |
|\ \ | |||
| * | | Revert "Revert "All instances of exec_ctx being passed around in src/core ↵ | Yash Tibrewal | 2017-12-06 |
| | | | | | | | | | | | | removed"" | ||
| * | | Revert "All instances of exec_ctx being passed around in src/core removed" | Yash Tibrewal | 2017-12-06 |
| | | | |||
* | | | Change the code to use MONOTONIC clocks when calling gpr_cv_wait (condition ↵ | Sree Kuchibhotla | 2017-12-04 |
| |/ |/| | | | | | varialbes in linux support MONOTONIC clock type) | ||
| * | Merge master | Yash Tibrewal | 2017-11-21 |
| |\ | |/ |/| | |||
* | | Merge pull request #13454 from yang-g/lockfree_event | Yang Gao | 2017-11-20 |
|\ \ | | | | | | | Avoid calling dtor on grpc_fd before putting it in freelist | ||
| * | | Resolve comments | yang-g | 2017-11-20 |
| | | | |||
| * | | Avoid calling dtor on grpc_fd before putting it in freelist | yang-g | 2017-11-17 |
| | | | |||
| | * | Merge master | Yash Tibrewal | 2017-11-16 |
| | |\ | | |/ | |/| | |||
| | * | Move ExecCtx to grpc_core namespace. Make exec_ctx a private static in ↵ | Yash Tibrewal | 2017-11-14 |
| | | | | | | | | | | | | ExecCtx and some minor changes | ||
| | * | Address some PR comments | Yash Tibrewal | 2017-11-14 |
| | | | |||
* | | | Merge branch 'master' of https://github.com/grpc/grpc into tracing++ | Noah Eisen | 2017-11-13 |
|\| | | |||
* | | | Get NDEBUG to build | ncteisen | 2017-11-10 |
| | | |