{"shas":[["37817796c4890683a7e41ed0f3a2fa6a53e1edc7","0394b495c98d596e4d5b95185816fa3ab07b5776@sinenomine.net","libafs: Set tvcp->callback before BulkStatus\n\nWhen we call InlineBulkStatus or BulkStatus, we currently do not touch\ntvcp->callback for any of the vcaches before making the call. This can\ncause us to not notice an InitCallBackState issued by the fileserver\nbefore the BulkStatus call returns, since the InitCallBackState\nhandler looks at tvcp->callback to determine what vcaches to clear\ncallbacks for. In turn, this can cause us to think we have a callback\nagreement with the fileserver on one of the BulkStatus'd files, when\nthe fileserver does not actually have such a callback agreement.\n\nSo, set tvcp->callback to the server we are contacting, so if we get\nan InitCallBackState call from that fileserver, the CBulkFetching\nstate will be cleared, and we will correctly discard the callback\ninformation for that vcache.\n\nChange-Id: Ib8790c8f9621d7a9da12588ea6115f9cb3ff9022\nReviewed-on: http://gerrit.openafs.org/2548\nReviewed-by: Derrick Brashear <shadow@dementia.org>\nTested-by: Derrick Brashear <shadow@dementia.org>","Andrew Deason"]],"ref":"refs/heads/master","push_id":21041652,"head":"37817796c4890683a7e41ed0f3a2fa6a53e1edc7","size":1}