Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1752048AbbK3A1w (ORCPT ); Sun, 29 Nov 2015 19:27:52 -0500 Received: from mail.linux-iscsi.org ([67.23.28.174]:40814 "EHLO linux-iscsi.org" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1751501AbbK3A1t (ORCPT ); Sun, 29 Nov 2015 19:27:49 -0500 Message-ID: <1448843268.8534.45.camel@haakon3.risingtidesystems.com> Subject: Re: [PATCH] target: use offset_in_page macro From: "Nicholas A. Bellinger" To: Geliang Tang Cc: Dan Carpenter , Bart Van Assche , linux-scsi@vger.kernel.org, target-devel@vger.kernel.org, linux-kernel@vger.kernel.org Date: Sun, 29 Nov 2015 16:27:48 -0800 In-Reply-To: References: Content-Type: text/plain; charset="UTF-8" X-Mailer: Evolution 3.4.4-1 Mime-Version: 1.0 Content-Transfer-Encoding: 7bit Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Content-Length: 2232 Lines: 64 Hi Geliang, On Wed, 2015-11-25 at 21:49 +0800, Geliang Tang wrote: > Use offset_in_page macro instead of (addr & ~PAGE_MASK). > > Signed-off-by: Geliang Tang > --- > drivers/target/target_core_user.c | 2 +- > drivers/target/tcm_fc/tfc_io.c | 8 ++++---- > 2 files changed, 5 insertions(+), 5 deletions(-) > > diff --git a/drivers/target/target_core_user.c b/drivers/target/target_core_user.c > index 937cebf..d5477c0 100644 > --- a/drivers/target/target_core_user.c > +++ b/drivers/target/target_core_user.c > @@ -194,7 +194,7 @@ static struct tcmu_cmd *tcmu_alloc_cmd(struct se_cmd *se_cmd) > > static inline void tcmu_flush_dcache_range(void *vaddr, size_t size) > { > - unsigned long offset = (unsigned long) vaddr & ~PAGE_MASK; > + unsigned long offset = offset_in_page(vaddr); > > size = round_up(size+offset, PAGE_SIZE); > vaddr -= offset; > diff --git a/drivers/target/tcm_fc/tfc_io.c b/drivers/target/tcm_fc/tfc_io.c > index 847c1aa..6f7c65a 100644 > --- a/drivers/target/tcm_fc/tfc_io.c > +++ b/drivers/target/tcm_fc/tfc_io.c > @@ -154,9 +154,9 @@ int ft_queue_data_in(struct se_cmd *se_cmd) > BUG_ON(!page); > from = kmap_atomic(page + (mem_off >> PAGE_SHIFT)); > page_addr = from; > - from += mem_off & ~PAGE_MASK; > + from += offset_in_page(mem_off); > tlen = min(tlen, (size_t)(PAGE_SIZE - > - (mem_off & ~PAGE_MASK))); > + offset_in_page(mem_off))); > memcpy(to, from, tlen); > kunmap_atomic(page_addr); > to += tlen; > @@ -314,9 +314,9 @@ void ft_recv_write_data(struct ft_cmd *cmd, struct fc_frame *fp) > > to = kmap_atomic(page + (mem_off >> PAGE_SHIFT)); > page_addr = to; > - to += mem_off & ~PAGE_MASK; > + to += offset_in_page(mem_off); > tlen = min(tlen, (size_t)(PAGE_SIZE - > - (mem_off & ~PAGE_MASK))); > + offset_in_page(mem_off))); > memcpy(to, from, tlen); > kunmap_atomic(page_addr); > Applied to target-pending/for-next. Thank you, --nab -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/