From: Viresh Kumar <viresh.kumar-qxv4g6HH51o@public.gmane.org> To: <linus.walleij-QSEj5FYQhm4dnm+yROfE0A@public.gmane.org> Cc: vipin.kumar-qxv4g6HH51o@public.gmane.org, viresh.kumar-qxv4g6HH51o@public.gmane.org, rajeev-dlh.kumar-qxv4g6HH51o@public.gmane.org, bhavna.yadav-qxv4g6HH51o@public.gmane.org, bhupesh.sharma-qxv4g6HH51o@public.gmane.org, pratyush.anand-qxv4g6HH51o@public.gmane.org, armando.visconti-qxv4g6HH51o@public.gmane.org, shiraz.hashim-qxv4g6HH51o@public.gmane.org, amit.virdi-qxv4g6HH51o@public.gmane.org, vipulkumar.samar-qxv4g6HH51o@public.gmane.org, deepak.sikri-qxv4g6HH51o@public.gmane.org, spi-devel-general-5NWGOfrQmneRv+LV9MX5uipxlwaOVQ5f@public.gmane.org, linux-arm-kernel-IAPFreCvJWM7uuMidbF8XUB+6BGkLq7r@public.gmane.org Subject: [PATCH 3/6] spi/spi-pl022: Don't allocate more sg than required. Date: Tue, 9 Aug 2011 16:35:20 +0530 [thread overview] Message-ID: <5796146a77035a0dadefd2fb430e87156c6c2114.1312887860.git.viresh.kumar@st.com> (raw) In-Reply-To: <cover.1312887860.git.viresh.kumar-qxv4g6HH51o@public.gmane.org> In routine configure_dma(), if transfer->len = PAGE_SIZE, then pages is one more than required. While leads to one more sg getting allocated. This is wrong. Correct this to allocate correct number of sg. Signed-off-by: Viresh Kumar <viresh.kumar-qxv4g6HH51o@public.gmane.org> --- drivers/spi/spi-pl022.c | 3 ++- 1 files changed, 2 insertions(+), 1 deletions(-) diff --git a/drivers/spi/spi-pl022.c b/drivers/spi/spi-pl022.c index cbd9afe..452952b 100644 --- a/drivers/spi/spi-pl022.c +++ b/drivers/spi/spi-pl022.c @@ -1016,7 +1016,8 @@ static int configure_dma(struct pl022 *pl022) dmaengine_slave_config(txchan, &tx_conf); /* Create sglists for the transfers */ - pages = (pl022->cur_transfer->len >> PAGE_SHIFT) + 1; + pages = ((pl022->cur_transfer->len + (1 << PAGE_SHIFT) - 1) + >> PAGE_SHIFT); dev_dbg(&pl022->adev->dev, "using %d pages for transfer\n", pages); ret = sg_alloc_table(&pl022->sgt_rx, pages, GFP_NOWAIT); -- 1.7.2.2 ------------------------------------------------------------------------------ uberSVN's rich system and user administration capabilities and model configuration take the hassle out of deploying and managing Subversion and the tools developers use with it. Learn more about uberSVN and get a free download at: http://p.sf.net/sfu/wandisco-dev2dev
WARNING: multiple messages have this Message-ID (diff)
From: viresh.kumar@st.com (Viresh Kumar) To: linux-arm-kernel@lists.infradead.org Subject: [PATCH 3/6] spi/spi-pl022: Don't allocate more sg than required. Date: Tue, 9 Aug 2011 16:35:20 +0530 [thread overview] Message-ID: <5796146a77035a0dadefd2fb430e87156c6c2114.1312887860.git.viresh.kumar@st.com> (raw) In-Reply-To: <cover.1312887860.git.viresh.kumar@st.com> In routine configure_dma(), if transfer->len = PAGE_SIZE, then pages is one more than required. While leads to one more sg getting allocated. This is wrong. Correct this to allocate correct number of sg. Signed-off-by: Viresh Kumar <viresh.kumar@st.com> --- drivers/spi/spi-pl022.c | 3 ++- 1 files changed, 2 insertions(+), 1 deletions(-) diff --git a/drivers/spi/spi-pl022.c b/drivers/spi/spi-pl022.c index cbd9afe..452952b 100644 --- a/drivers/spi/spi-pl022.c +++ b/drivers/spi/spi-pl022.c @@ -1016,7 +1016,8 @@ static int configure_dma(struct pl022 *pl022) dmaengine_slave_config(txchan, &tx_conf); /* Create sglists for the transfers */ - pages = (pl022->cur_transfer->len >> PAGE_SHIFT) + 1; + pages = ((pl022->cur_transfer->len + (1 << PAGE_SHIFT) - 1) + >> PAGE_SHIFT); dev_dbg(&pl022->adev->dev, "using %d pages for transfer\n", pages); ret = sg_alloc_table(&pl022->sgt_rx, pages, GFP_NOWAIT); -- 1.7.2.2
next prev parent reply other threads:[~2011-08-09 11:05 UTC|newest] Thread overview: 28+ messages / expand[flat|nested] mbox.gz Atom feed top 2011-08-09 11:05 [PATCH 0/6] spi/spi-pl022 fixes Viresh Kumar 2011-08-09 11:05 ` Viresh Kumar [not found] ` <cover.1312887860.git.viresh.kumar-qxv4g6HH51o@public.gmane.org> 2011-08-09 11:05 ` [PATCH 1/6] spi/spi-pl022: Resolve formatting issues Viresh Kumar 2011-08-09 11:05 ` Viresh Kumar 2011-08-09 11:05 ` [PATCH 2/6] spi/spi-pl022: Use GFP_NOWAIT for allocation from tasklet Viresh Kumar 2011-08-09 11:05 ` Viresh Kumar 2011-08-09 11:26 ` Jassi Brar 2011-08-09 11:26 ` Jassi Brar [not found] ` <CABb+yY3CuYqNcpvdP8fa6FsaN3EBDAXivKSP56gRh6-oPyp2Mg-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org> 2011-08-10 3:27 ` viresh kumar 2011-08-10 3:27 ` viresh kumar 2011-08-09 11:05 ` Viresh Kumar [this message] 2011-08-09 11:05 ` [PATCH 3/6] spi/spi-pl022: Don't allocate more sg than required Viresh Kumar 2011-08-09 11:05 ` [PATCH 4/6] spi/spi-pl022: calculate_effective_freq() must set rate <= requested rate Viresh Kumar 2011-08-09 11:05 ` Viresh Kumar [not found] ` <CACRpkdYAkPtOkVuF-UhpFHugvZpw_owmgoxP_opF8KE=cYF95w@mail.gmail.com> 2011-08-10 3:36 ` viresh kumar 2011-08-10 3:36 ` viresh kumar 2011-08-09 11:05 ` [PATCH 5/6] spi/spi-pl022: Call pl022_dma_remove(pl022) only if enable_dma is true Viresh Kumar 2011-08-09 11:05 ` Viresh Kumar 2011-08-09 11:05 ` [PATCH 6/6] spi/spi-pl022: Request/free DMA channels as and when required Viresh Kumar 2011-08-09 11:05 ` Viresh Kumar 2011-08-09 20:10 ` [PATCH 0/6] spi/spi-pl022 fixes Linus Walleij 2011-08-09 20:10 ` Linus Walleij 2011-08-10 3:55 ` viresh kumar 2011-08-10 3:55 ` viresh kumar 2011-08-10 7:20 ` Linus Walleij 2011-08-10 7:20 ` Linus Walleij [not found] ` <CAKnu2MoTQTYMa4JvWyr7sPMhPyziTtnLeZLySUYxcuQC2Vu-6Q-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org> 2011-08-10 14:12 ` Arnd Bergmann 2011-08-10 14:12 ` Arnd Bergmann
Reply instructions: You may reply publicly to this message via plain-text email using any one of the following methods: * Save the following mbox file, import it into your mail client, and reply-to-all from there: mbox Avoid top-posting and favor interleaved quoting: https://en.wikipedia.org/wiki/Posting_style#Interleaved_style * Reply using the --to, --cc, and --in-reply-to switches of git-send-email(1): git send-email \ --in-reply-to=5796146a77035a0dadefd2fb430e87156c6c2114.1312887860.git.viresh.kumar@st.com \ --to=viresh.kumar-qxv4g6hh51o@public.gmane.org \ --cc=amit.virdi-qxv4g6HH51o@public.gmane.org \ --cc=armando.visconti-qxv4g6HH51o@public.gmane.org \ --cc=bhavna.yadav-qxv4g6HH51o@public.gmane.org \ --cc=bhupesh.sharma-qxv4g6HH51o@public.gmane.org \ --cc=deepak.sikri-qxv4g6HH51o@public.gmane.org \ --cc=linus.walleij-QSEj5FYQhm4dnm+yROfE0A@public.gmane.org \ --cc=linux-arm-kernel-IAPFreCvJWM7uuMidbF8XUB+6BGkLq7r@public.gmane.org \ --cc=pratyush.anand-qxv4g6HH51o@public.gmane.org \ --cc=rajeev-dlh.kumar-qxv4g6HH51o@public.gmane.org \ --cc=shiraz.hashim-qxv4g6HH51o@public.gmane.org \ --cc=spi-devel-general-5NWGOfrQmneRv+LV9MX5uipxlwaOVQ5f@public.gmane.org \ --cc=vipin.kumar-qxv4g6HH51o@public.gmane.org \ --cc=vipulkumar.samar-qxv4g6HH51o@public.gmane.org \ /path/to/YOUR_REPLY https://kernel.org/pub/software/scm/git/docs/git-send-email.html * If your mail client supports setting the In-Reply-To header via mailto: links, try the mailto: linkBe sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes, see mirroring instructions on how to clone and mirror all data and code used by this external index.