Yes, the host guarantees that bandwidth will be available for interrupt transfers, and Linux is no exception. But the host will cease communications if a control transfer fails in an unexpected way.
From USB Complete, 5th Ed:
A USB 2.0 device has these responsibilities for transfers on a control endpoint:
• Send ACK in response to every Setup packet received without error.
• For supported control write requests, send ACK in response to received data in the
Data stage (if present) and return a ZLP in the Status stage.
• For supported control read requests, send data in response to IN token packets in
the Data stage and ACK the received ZLP in the Status stage.
• For unsupported requests, return STALL in the Data or Status stage.
For all but the Setup stage, one or more NAKs preceding ACK, ZLP, data, or STALL are
acceptable up to the timing limit for the stage.