diff options
Diffstat (limited to 'net/nfc')
-rw-r--r-- | net/nfc/digital_core.c | 6 |
1 files changed, 4 insertions, 2 deletions
diff --git a/net/nfc/digital_core.c b/net/nfc/digital_core.c index b105cfb00e76..a6ce3c627e4e 100644 --- a/net/nfc/digital_core.c +++ b/net/nfc/digital_core.c | |||
@@ -386,6 +386,8 @@ int digital_target_found(struct nfc_digital_dev *ddev, | |||
386 | 386 | ||
387 | void digital_poll_next_tech(struct nfc_digital_dev *ddev) | 387 | void digital_poll_next_tech(struct nfc_digital_dev *ddev) |
388 | { | 388 | { |
389 | u8 rand_mod; | ||
390 | |||
389 | digital_switch_rf(ddev, 0); | 391 | digital_switch_rf(ddev, 0); |
390 | 392 | ||
391 | mutex_lock(&ddev->poll_lock); | 393 | mutex_lock(&ddev->poll_lock); |
@@ -395,8 +397,8 @@ void digital_poll_next_tech(struct nfc_digital_dev *ddev) | |||
395 | return; | 397 | return; |
396 | } | 398 | } |
397 | 399 | ||
398 | ddev->poll_tech_index = (ddev->poll_tech_index + 1) % | 400 | get_random_bytes(&rand_mod, sizeof(rand_mod)); |
399 | ddev->poll_tech_count; | 401 | ddev->poll_tech_index = rand_mod % ddev->poll_tech_count; |
400 | 402 | ||
401 | mutex_unlock(&ddev->poll_lock); | 403 | mutex_unlock(&ddev->poll_lock); |
402 | 404 | ||