All of lore.kernel.org
 help / color / mirror / Atom feed
From: David Vrabel <david.vrabel@citrix.com>
To: Jan Beulich <JBeulich@suse.com>
Cc: <x86@kernel.org>, Thomas Gleixner <tglx@linutronix.de>,
	Greg Kroah-Hartman <gregkh@linuxfoundation.org>,
	<xen-devel@lists.xenproject.org>,
	Boris Ostrovsky <boris.ostrovsky@oracle.com>,
	Ingo Molnar <mingo@redhat.com>, <linux-kernel@vger.kernel.org>,
	"H. Peter Anvin" <hpa@zytor.com>
Subject: Re: [Xen-devel] [PATCH 3/3] x86/xen: use the maximum MFN to calculate the required DMA mask
Date: Wed, 12 Nov 2014 16:59:10 +0000	[thread overview]
Message-ID: <546391DE.7040508@citrix.com> (raw)
In-Reply-To: <546390FC0200007800046E50@mail.emea.novell.com>

On 12/11/14 15:55, Jan Beulich wrote:
>>>> On 12.11.14 at 16:25, <david.vrabel@citrix.com> wrote:
>> +u64
>> +xen_swiotlb_get_required_mask(struct device *dev)
>> +{
>> +	u64 max_mfn;
>> +
>> +	max_mfn = HYPERVISOR_memory_op(XENMEM_maximum_ram_page, NULL);
>> +
>> +	return DMA_BIT_MASK(fls64(max_mfn << PAGE_SHIFT) + 1);
>> +}
> 
> The value the hypercall returns is exclusive and an unsigned long.

The docs in include/public/memory.h say:

"Returns the maximum machine frame number of mapped RAM in this system."

Which sounds inclusive to me...  Do we need a doc update here?

> Hence I'd suggest
> 
> u64
> xen_swiotlb_get_required_mask(struct device *dev)
> {
> 	unsigned long max_mfn;
> 
> 	max_mfn = HYPERVISOR_memory_op(XENMEM_maximum_ram_page, NULL);
> 
> 	return DMA_BIT_MASK(__fls(max_mfn - 1) + 1 + PAGE_SHIFT);
> }
> 
> Jan
> 


  parent reply	other threads:[~2014-11-12 16:59 UTC|newest]

Thread overview: 31+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2014-11-12 15:25 [PATCHv2 0/3]: dma,x86,xen: reduce SWIOTLB usage in Xen guests David Vrabel
2014-11-12 15:25 ` [PATCH 1/3] dma,ia64: add dma_get_required_mask_from_max_pfn() David Vrabel
2014-11-12 15:25   ` David Vrabel
2014-11-14 15:11   ` [Xen-devel] [PATCH 1/3] dma, ia64: " Stefano Stabellini
2014-11-14 15:11     ` Stefano Stabellini
2014-11-14 15:11   ` Stefano Stabellini
2014-11-12 15:25 ` David Vrabel
2014-11-12 15:25 ` [PATCH 2/3] x86: allow dma_get_required_mask() to be overridden David Vrabel
2014-11-12 15:25 ` David Vrabel
2014-11-13 10:25   ` Jan Beulich
2014-11-13 10:25   ` [Xen-devel] " Jan Beulich
2014-11-13 10:30     ` David Vrabel
2014-11-13 10:30     ` [Xen-devel] " David Vrabel
2014-11-13 10:32     ` Jan Beulich
2014-11-13 10:32     ` [Xen-devel] " Jan Beulich
2014-11-14 15:19   ` Stefano Stabellini
2014-11-14 15:19   ` Stefano Stabellini
2014-11-12 15:25 ` [PATCH 3/3] x86/xen: use the maximum MFN to calculate the required DMA mask David Vrabel
2014-11-12 15:55   ` [Xen-devel] " Jan Beulich
2014-11-12 16:59     ` David Vrabel
2014-11-12 16:59     ` David Vrabel [this message]
2014-11-12 17:18       ` [Xen-devel] " Jan Beulich
2014-11-12 17:18       ` Jan Beulich
2014-11-13  9:57     ` Jan Beulich
2014-11-13  9:57     ` [Xen-devel] " Jan Beulich
2014-11-13 10:38     ` Andrew Cooper
2014-11-13 10:38     ` [Xen-devel] " Andrew Cooper
2014-11-13 10:53       ` Jan Beulich
2014-11-13 10:53       ` [Xen-devel] " Jan Beulich
2014-11-12 15:55   ` Jan Beulich
2014-11-12 15:25 ` David Vrabel

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=546391DE.7040508@citrix.com \
    --to=david.vrabel@citrix.com \
    --cc=JBeulich@suse.com \
    --cc=boris.ostrovsky@oracle.com \
    --cc=gregkh@linuxfoundation.org \
    --cc=hpa@zytor.com \
    --cc=linux-kernel@vger.kernel.org \
    --cc=mingo@redhat.com \
    --cc=tglx@linutronix.de \
    --cc=x86@kernel.org \
    --cc=xen-devel@lists.xenproject.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 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.