[PATCH] staging: comedi: Use offset_in_page macro

Ian Abbott abbotti at mev.co.uk
Tue Jul 4 09:36:48 UTC 2017


On 04/07/17 00:13, Amitoj Kaur Chawla wrote:
> Use offset_in_page macro instead of (var & ~PAGE_MASK)
>
> The Coccinelle semantic patch used to make this change is as follows:
> // <smpl>
> @@
> unsigned long p;
> @@
> - p & ~PAGE_MASK
> + offset_in_page(p)
> // </smpl>
>
> Signed-off-by: Amitoj Kaur Chawla <amitoj1606 at gmail.com>
> ---
>  drivers/staging/comedi/comedi_buf.c | 2 +-
>  1 file changed, 1 insertion(+), 1 deletion(-)
>
> diff --git a/drivers/staging/comedi/comedi_buf.c b/drivers/staging/comedi/comedi_buf.c
> index 8e9b30b..b455ff6 100644
> --- a/drivers/staging/comedi/comedi_buf.c
> +++ b/drivers/staging/comedi/comedi_buf.c
> @@ -165,7 +165,7 @@ int comedi_buf_map_put(struct comedi_buf_map *bm)
>  int comedi_buf_map_access(struct comedi_buf_map *bm, unsigned long offset,
>  			  void *buf, int len, int write)
>  {
> -	unsigned int pgoff = offset & ~PAGE_MASK;
> +	unsigned int pgoff = offset_in_page(offset);
>  	unsigned long pg = offset >> PAGE_SHIFT;
>  	int done = 0;
>
>

Seems reasonable, thanks.  Being picky, I'd prefer it if the line 
`#include <linux/mm.h>` was added, since that is where the 
`offset_in_page` macro is defined.  But it doesn't matter that much as 
the "mm.h" header file gets included indirectly, and there are plenty of 
examples where `offset_in_page` is used without including <linux/mm.h> 
directly.

Signed-off-by: Ian Abbott <abbotti at mev.co.uk>

-- 
-=( Ian Abbott @ MEV Ltd.    E-mail: <abbotti at mev.co.uk> )=-
-=(                          Web: http://www.mev.co.uk/  )=-


More information about the devel mailing list