Impala Public Jenkins has submitted this change and it was merged. ( 
http://gerrit.cloudera.org:8080/24653 )

Change subject: IMPALA-15235: Fix ARM crash in 
KrpcDataStreamSender::SerializeBatch
......................................................................

IMPALA-15235: Fix ARM crash in KrpcDataStreamSender::SerializeBatch

The crash was caused by the following mismatch:
-OutboundRowBatch::AppendRowWithDedup returns a Status struct (sret)
-The LLVM function created in
 OutboundRowBatch::CodegenAppendRowWithDedup created a function
 prototype with the first "status" argument being a normal argument (no
 sret)
-When replacing the call sites between these two, the registers were
 mismatched (on ARM, where the registers are shifted on sret), causing
 garbage values, eventually leading to a load on an unexpected value

The crash was introduced with IMPALA-14852.

The fix is to mark first "status" argument of the function prototype
explicitly as sret in OutboundRowBatch::CodegenAppendRowWithDedup.

Change-Id: I00e5dd328d7b2c7e44b1d2af3eebda4d14ec99c2
Reviewed-on: http://gerrit.cloudera.org:8080/24653
Reviewed-by: Csaba Ringhofer <[email protected]>
Tested-by: Impala Public Jenkins <[email protected]>
---
M be/src/runtime/outbound-row-batch.cc
1 file changed, 3 insertions(+), 0 deletions(-)

Approvals:
  Csaba Ringhofer: Looks good to me, approved
  Impala Public Jenkins: Verified

--
To view, visit http://gerrit.cloudera.org:8080/24653
To unsubscribe, visit http://gerrit.cloudera.org:8080/settings

Gerrit-Project: Impala-ASF
Gerrit-Branch: master
Gerrit-MessageType: merged
Gerrit-Change-Id: I00e5dd328d7b2c7e44b1d2af3eebda4d14ec99c2
Gerrit-Change-Number: 24653
Gerrit-PatchSet: 2
Gerrit-Owner: Balazs Hevele <[email protected]>
Gerrit-Reviewer: Csaba Ringhofer <[email protected]>
Gerrit-Reviewer: Impala Public Jenkins <[email protected]>
Gerrit-Reviewer: Yida Wu <[email protected]>

Reply via email to