Re: [Outreachy kernel] [PATCH v2 2/7] staging: most: Using macro DIV_ROUND_UP

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 




On Wed, 22 Feb 2017, SIMRAN SINGHAL wrote:

>
>
> On Wednesday, February 22, 2017 at 2:57:17 PM UTC+5:30, Julia Lawall wrote:
>       > @@ -117,7 +118,7 @@ static int alloc_dbr(u16 size)
>       >                  return DBR_SIZE; /* out of memory */
>       >
>       >          for (i = 0; i < DBR_MAP_SIZE; i++) {
>       > -                u32 const blocks = (size + DBR_BLOCK_SIZE -
>       1) / DBR_BLOCK_SIZE;
>       > +                u32 const blocks = DIV_ROUND_UP(size,
>       DBR_BLOCK_SIZE);
>       >                  u32 mask = ~((~(u32)0) << blocks);
>
>       Totally unrelated to DIV_ROUND_UP, would this code be a
>       candidate for
>       GENMASK?
>
>  
>       Not sure, what you are trying to say.

There was a discussion on the list recently about GENMASK, which allows to
create a mask containing a sequence of 1s, like 000011110000.  It looks
like that is what is being done here, because ~0 is 11111111 and then it
ie being shifted left and all the bits inverted.  But Joe had another
suggestion.  One could double check that his suggestion gives the right
result.

julia

>
>  
>
>       julia
>
>       >
>       >                  do {
>       > @@ -137,7 +138,7 @@ static int alloc_dbr(u16 size)
>       >  static void free_dbr(int offs, int size)
>       >  {
>       >          int block_idx = offs / DBR_BLOCK_SIZE;
>       > -        u32 const blocks = (size + DBR_BLOCK_SIZE - 1) /
>       DBR_BLOCK_SIZE;
>       > +        u32 const blocks = DIV_ROUND_UP(size,
>       DBR_BLOCK_SIZE);
>       >          u32 mask = ~((~(u32)0) << blocks);
>       >
>       >          mask <<= block_idx % 32;
>       > --
>       > 2.7.4
>       >
>       > --
>       > You received this message because you are subscribed to the
>       Google Groups "outreachy-kernel" group.
>       > To unsubscribe from this group and stop receiving emails from
>       it, send an email to outreachy-kern...@xxxxxxxxxxxxxxxx.
>       > To post to this group, send email to
>       outreach...@xxxxxxxxxxxxxxxx.
>       > To view this discussion on the web visithttps://groups.google.com/d/msgid/outreachy-kernel/20170222091015.GA11058%4
>       0singhal-Inspiron-5558.
>       > For more options, visit https://groups.google.com/d/optout.
>       >
>
> --
> You received this message because you are subscribed to the Google Groups
> "outreachy-kernel" group.
> To unsubscribe from this group and stop receiving emails from it, send an
> email to outreachy-kernel+unsubscribe@xxxxxxxxxxxxxxxx.
> To post to this group, send email to outreachy-kernel@xxxxxxxxxxxxxxxx.
> To view this discussion on the web visithttps://groups.google.com/d/msgid/outreachy-kernel/d1716b00-a408-4f3c-8c17-
> 04a70acca4dd%40googlegroups.com.
> For more options, visit https://groups.google.com/d/optout.
>
>
_______________________________________________
devel mailing list
devel@xxxxxxxxxxxxxxxxxxxxxx
http://driverdev.linuxdriverproject.org/mailman/listinfo/driverdev-devel

[Index of Archives]     [Linux Driver Backports]     [DMA Engine]     [Linux GPIO]     [Linux SPI]     [Video for Linux]     [Linux USB Devel]     [Linux Coverity]     [Linux Audio Users]     [Linux Kernel]     [Linux SCSI]     [Yosemite Backpacking]
  Powered by Linux