Stop allowing 0x0000 to be used as an operation id. That id will be
reserved for use by operations that will return no response message.
Signed-off-by: Alex Elder <elder@linaro.org>
Signed-off-by: Greg Kroah-Hartman <greg@kroah.com>
/*
* Assign the operation's id and move it into its
- * connection's pending list.
+ * connection's pending list. Zero is a reserved operation
+ * id.
*/
spin_lock_irq(&gb_operations_lock);
- operation->id = ++connection->op_cycle;
+ operation->id = ++connection->op_cycle % U16_MAX + 1;
list_move_tail(&operation->links, &connection->pending);
spin_unlock_irq(&gb_operations_lock);