Skip to content

Commit c697d92

Browse files
authored
patch contrib/grpc: Fix bug in Tx0cp code path in posix endpoint. (#20962)
2 parents 11a5577 + 5a44ae4 commit c697d92

File tree

2 files changed

+14
-1
lines changed

2 files changed

+14
-1
lines changed
Lines changed: 13 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,13 @@
1+
diff --git a/src/core/lib/event_engine/posix_engine/posix_endpoint.cc b/src/core/lib/event_engine/posix_engine/posix_endpoint.cc
2+
index 7634bb1334b81..c5708db02c57a 100644
3+
--- a/src/core/lib/event_engine/posix_engine/posix_endpoint.cc
4+
+++ b/src/core/lib/event_engine/posix_engine/posix_endpoint.cc
5+
@@ -236,7 +236,7 @@ msg_iovlen_type TcpZerocopySendRecord::PopulateIovs(size_t* unwind_slice_idx,
6+
iov_size++) {
7+
MutableSlice& slice = internal::SliceCast<MutableSlice>(
8+
buf_.MutableSliceAt(out_offset_.slice_idx));
9+
- iov[iov_size].iov_base = slice.begin();
10+
+ iov[iov_size].iov_base = slice.begin() + out_offset_.byte_idx;
11+
iov[iov_size].iov_len = slice.length() - out_offset_.byte_idx;
12+
*sending_length += iov[iov_size].iov_len;
13+
++(out_offset_.slice_idx);

contrib/libs/grpc/src/core/lib/event_engine/posix_engine/posix_endpoint.cc

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -238,7 +238,7 @@ msg_iovlen_type TcpZerocopySendRecord::PopulateIovs(size_t* unwind_slice_idx,
238238
iov_size++) {
239239
MutableSlice& slice = internal::SliceCast<MutableSlice>(
240240
buf_.MutableSliceAt(out_offset_.slice_idx));
241-
iov[iov_size].iov_base = slice.begin();
241+
iov[iov_size].iov_base = slice.begin() + out_offset_.byte_idx;
242242
iov[iov_size].iov_len = slice.length() - out_offset_.byte_idx;
243243
*sending_length += iov[iov_size].iov_len;
244244
++(out_offset_.slice_idx);

0 commit comments

Comments
 (0)