Closed selltc closed 8 years ago
I'm getting cold feet now about removing the handle_command_failed
logic. Just because we can't think of a current scenario where controlvm messages might need to be throttled, isn't a good reason to remove retry logic that has already been proven to work.
Getting rid of poll_count
is a "no-brainer" though.
Good, my quick look at this earlier this week had my gut was agreeing with you. There are a lot of changes that need to happen for the handle_command_failed logic and I don't want to completely remove it. It was put there once because it was needed and worked.
Glad we agree.
Commit 25c8f86e6a3d98ea6e752eff2b239067381f7995 (staging: unisys: visorbus: remove unnecessary poll_count logic) regression tests and checkpatches clean.
Thanks Tim.
I've cherry-picked the patch over to upstream-next. I'm in the process of submitting it and Alex's patches. I'm switching this issue to queued/[upstream-next].
Thanks David. I should have issue #10 wrapped up shortly too.
Creating this ticket as a result of some observations concerns pointed out by @davidker:
Based upon this excerpt in the https://ustr-svn-1.na.uis.unisys.com/trac/spar/changeset/6443 / r6443 (9 years ago!) log comment, the purpose of poll_count is solely to make testing scenarios work better, therefore I think we can safely remove it:
I believe
handle_command_failed
attempts to recover from the scenarios where the controlvm channel queue temporarily fills up, resulting insignalinsert()
errors. HOWEVER, we never hit this error condition until we started to use the controlvm channel for file transfer operations (CONTROLVM_TRANSMIT_FILE
) in https://ustr-svn-1.na.uis.unisys.com/trac/spar/changeset/20223 / r20223. Of course, these file transfer operations are never used in guest environments, so we could arguably simplify things by removing this retry logic.