Bluetooth: Uses test_and_clear_bit() when possible

Signed-off-by: Gustavo F. Padovan <padovan@profusion.mobi>
This commit is contained in:
Gustavo F. Padovan 2011-10-06 22:05:37 -03:00
Родитель 192893c721
Коммит ab88f7149e
1 изменённых файлов: 3 добавлений и 6 удалений

Просмотреть файл

@ -496,10 +496,9 @@ static void hidp_process_handshake(struct hidp_session *session,
case HIDP_HSHK_ERR_INVALID_REPORT_ID: case HIDP_HSHK_ERR_INVALID_REPORT_ID:
case HIDP_HSHK_ERR_UNSUPPORTED_REQUEST: case HIDP_HSHK_ERR_UNSUPPORTED_REQUEST:
case HIDP_HSHK_ERR_INVALID_PARAMETER: case HIDP_HSHK_ERR_INVALID_PARAMETER:
if (test_bit(HIDP_WAITING_FOR_RETURN, &session->flags)) { if (test_and_clear_bit(HIDP_WAITING_FOR_RETURN, &session->flags))
clear_bit(HIDP_WAITING_FOR_RETURN, &session->flags);
wake_up_interruptible(&session->report_queue); wake_up_interruptible(&session->report_queue);
}
/* FIXME: Call into SET_ GET_ handlers here */ /* FIXME: Call into SET_ GET_ handlers here */
break; break;
@ -520,10 +519,8 @@ static void hidp_process_handshake(struct hidp_session *session,
} }
/* Wake up the waiting thread. */ /* Wake up the waiting thread. */
if (test_bit(HIDP_WAITING_FOR_SEND_ACK, &session->flags)) { if (test_and_clear_bit(HIDP_WAITING_FOR_SEND_ACK, &session->flags))
clear_bit(HIDP_WAITING_FOR_SEND_ACK, &session->flags);
wake_up_interruptible(&session->report_queue); wake_up_interruptible(&session->report_queue);
}
} }
static void hidp_process_hid_control(struct hidp_session *session, static void hidp_process_hid_control(struct hidp_session *session,