@@ -458,31 +458,25 @@ unsigned long find_next_bit_le(const void *addr, unsigned
458
458
#endif
459
459
460
460
#define for_each_set_bit (bit , addr , size ) \
461
- for ((bit) = find_next_bit((addr), (size), 0); \
462
- (bit) < (size); \
463
- (bit) = find_next_bit((addr), (size), (bit) + 1))
461
+ for ((bit) = 0; (bit) = find_next_bit((addr), (size), (bit)), (bit) < (size); (bit)++)
464
462
465
463
#define for_each_and_bit (bit , addr1 , addr2 , size ) \
466
- for ((bit) = find_next_and_bit((addr1), (addr2), (size), 0); \
467
- (bit) < (size); \
468
- (bit) = find_next_and_bit((addr1), (addr2), (size), (bit) + 1) )
464
+ for ((bit) = 0; \
465
+ (bit) = find_next_and_bit((addr1), (addr2), (size), (bit)), (bit) < (size);\
466
+ (bit)++ )
469
467
470
468
/* same as for_each_set_bit() but use bit as value to start with */
471
469
#define for_each_set_bit_from (bit , addr , size ) \
472
- for ((bit) = find_next_bit((addr), (size), (bit)); \
473
- (bit) < (size); \
474
- (bit) = find_next_bit((addr), (size), (bit) + 1))
470
+ for (; (bit) = find_next_bit((addr), (size), (bit)), (bit) < (size); (bit)++)
475
471
476
472
#define for_each_clear_bit (bit , addr , size ) \
477
- for ((bit) = find_next_zero_bit((addr), (size), 0); \
478
- (bit) < (size); \
479
- (bit) = find_next_zero_bit((addr), (size), (bit) + 1) )
473
+ for ((bit) = 0; \
474
+ (bit) = find_next_zero_bit((addr), (size), (bit)), (bit) < (size); \
475
+ (bit)++ )
480
476
481
477
/* same as for_each_clear_bit() but use bit as value to start with */
482
478
#define for_each_clear_bit_from (bit , addr , size ) \
483
- for ((bit) = find_next_zero_bit((addr), (size), (bit)); \
484
- (bit) < (size); \
485
- (bit) = find_next_zero_bit((addr), (size), (bit) + 1))
479
+ for (; (bit) = find_next_zero_bit((addr), (size), (bit)), (bit) < (size); (bit)++)
486
480
487
481
/**
488
482
* for_each_set_bitrange - iterate over all set bit ranges [b; e)
@@ -492,11 +486,11 @@ unsigned long find_next_bit_le(const void *addr, unsigned
492
486
* @size: bitmap size in number of bits
493
487
*/
494
488
#define for_each_set_bitrange (b , e , addr , size ) \
495
- for ((b) = find_next_bit((addr), (size), 0), \
496
- (e) = find_next_zero_bit((addr), (size), (b) + 1); \
489
+ for ((b) = 0; \
490
+ (b) = find_next_bit((addr), (size), b), \
491
+ (e) = find_next_zero_bit((addr), (size), (b) + 1), \
497
492
(b) < (size); \
498
- (b) = find_next_bit((addr), (size), (e) + 1), \
499
- (e) = find_next_zero_bit((addr), (size), (b) + 1))
493
+ (b) = (e) + 1)
500
494
501
495
/**
502
496
* for_each_set_bitrange_from - iterate over all set bit ranges [b; e)
@@ -506,11 +500,11 @@ unsigned long find_next_bit_le(const void *addr, unsigned
506
500
* @size: bitmap size in number of bits
507
501
*/
508
502
#define for_each_set_bitrange_from (b , e , addr , size ) \
509
- for ((b) = find_next_bit((addr), (size), (b)), \
510
- (e) = find_next_zero_bit((addr), (size), (b) + 1); \
503
+ for (; \
504
+ (b) = find_next_bit((addr), (size), (b)), \
505
+ (e) = find_next_zero_bit((addr), (size), (b) + 1), \
511
506
(b) < (size); \
512
- (b) = find_next_bit((addr), (size), (e) + 1), \
513
- (e) = find_next_zero_bit((addr), (size), (b) + 1))
507
+ (b) = (e) + 1)
514
508
515
509
/**
516
510
* for_each_clear_bitrange - iterate over all unset bit ranges [b; e)
@@ -520,11 +514,11 @@ unsigned long find_next_bit_le(const void *addr, unsigned
520
514
* @size: bitmap size in number of bits
521
515
*/
522
516
#define for_each_clear_bitrange (b , e , addr , size ) \
523
- for ((b) = find_next_zero_bit((addr), (size), 0), \
524
- (e) = find_next_bit((addr), (size), (b) + 1); \
517
+ for ((b) = 0; \
518
+ (b) = find_next_zero_bit((addr), (size), (b)), \
519
+ (e) = find_next_bit((addr), (size), (b) + 1), \
525
520
(b) < (size); \
526
- (b) = find_next_zero_bit((addr), (size), (e) + 1), \
527
- (e) = find_next_bit((addr), (size), (b) + 1))
521
+ (b) = (e) + 1)
528
522
529
523
/**
530
524
* for_each_clear_bitrange_from - iterate over all unset bit ranges [b; e)
@@ -534,11 +528,11 @@ unsigned long find_next_bit_le(const void *addr, unsigned
534
528
* @size: bitmap size in number of bits
535
529
*/
536
530
#define for_each_clear_bitrange_from (b , e , addr , size ) \
537
- for ((b) = find_next_zero_bit((addr), (size), (b)), \
538
- (e) = find_next_bit((addr), (size), (b) + 1); \
531
+ for (; \
532
+ (b) = find_next_zero_bit((addr), (size), (b)), \
533
+ (e) = find_next_bit((addr), (size), (b) + 1), \
539
534
(b) < (size); \
540
- (b) = find_next_zero_bit((addr), (size), (e) + 1), \
541
- (e) = find_next_bit((addr), (size), (b) + 1))
535
+ (b) = (e) + 1)
542
536
543
537
/**
544
538
* for_each_set_bit_wrap - iterate over all set bits starting from @start, and
0 commit comments