From: Christoph Hellwig <hch@infradead.org>
To: "Christian König" <ckoenig.leichtzumerken@gmail.com>
Cc: konrad.wilk@oracle.com, linux-kernel@vger.kernel.org
Subject: Re: [PATCH] swiotlb: suppress warning when __GFP_NOWARN is set v4
Date: Thu, 4 Jan 2018 01:53:25 -0800 [thread overview]
Message-ID: <20180104095325.GB13091@infradead.org> (raw)
In-Reply-To: <20180104093233.16311-1-christian.koenig@amd.com>
This seems to collide with my dma direct/swiotlb series posted recently.
> +++ b/lib/swiotlb.c
> @@ -490,11 +490,11 @@ static void swiotlb_bounce(phys_addr_t orig_addr, phys_addr_t tlb_addr,
> }
> }
>
> -phys_addr_t swiotlb_tbl_map_single(struct device *hwdev,
> - dma_addr_t tbl_dma_addr,
> - phys_addr_t orig_addr, size_t size,
> - enum dma_data_direction dir,
> - unsigned long attrs)
> +static phys_addr_t tbl_map_single(struct device *hwdev,
> + dma_addr_t tbl_dma_addr,
> + phys_addr_t orig_addr, size_t size,
> + enum dma_data_direction dir,
> + unsigned long attrs, bool warn)
We already have DMA_ATTR_NO_WARN which can be passed in attrs. Please
use it instead of reinventing it.
> swiotlb_alloc_coherent(struct device *hwdev, size_t size,
> dma_addr_t *dma_handle, gfp_t flags)
> {
> + bool warn = !(flags & __GFP_NOWARN);
> dma_addr_t dev_addr;
> void *ret;
> int order = get_order(size);
> @@ -739,7 +750,7 @@ swiotlb_alloc_coherent(struct device *hwdev, size_t size,
> * will grab memory from the lowest available address range.
> */
> phys_addr_t paddr = map_single(hwdev, 0, size,
> - DMA_FROM_DEVICE, 0);
> + DMA_FROM_DEVICE, 0, warn);
Note: in my above series swiotlb_alloc_coherent is going away, and
replaced with a swiotlb_alloc that takes a dma_attrs argument.
Using that for passing the nowarn flag is the right way to go instead
of using __GFP_NOWARN.
next prev parent reply other threads:[~2018-01-04 9:53 UTC|newest]
Thread overview: 3+ messages / expand[flat|nested] mbox.gz Atom feed top
2018-01-04 9:32 Christian König
2018-01-04 9:53 ` Christoph Hellwig [this message]
2018-01-04 10:16 ` Christian König
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=20180104095325.GB13091@infradead.org \
--to=hch@infradead.org \
--cc=ckoenig.leichtzumerken@gmail.com \
--cc=konrad.wilk@oracle.com \
--cc=linux-kernel@vger.kernel.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: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox
all inboxes | Powered by JetHome®