All of lore.kernel.org
 help / color / mirror / Atom feed
From: "Jan Beulich" <jbeulich@novell.com>
To: Keir Fraser <Keir.Fraser@cl.cam.ac.uk>
Cc: xen-devel@lists.xensource.com
Subject: Re: eliminating 166G limit (was Re: Problem with nr_nodes on large memory NUMA machine)
Date: Tue, 27 Nov 2007 09:00:44 +0000	[thread overview]
Message-ID: <474BEACC.76E4.0078.0@novell.com> (raw)
In-Reply-To: <C3718C3B.10C5C%Keir.Fraser@cl.cam.ac.uk>

>>> Keir Fraser <Keir.Fraser@cl.cam.ac.uk> 27.11.07 09:56 >>>
>On 27/11/07 08:43, "Jan Beulich" <jbeulich@novell.com> wrote:
>
>> I think page allocation in this path isn't nice, at least not without success
>> guarantee (not the least because because netback doesn't check return
>> values). I would therefore rather see a solution in placing the burden of
>> ensuring accessibility on the producer (netback) of the page, and fail the
>> transfer if the destination domain can't access the page (whether to be
>> nice and try an allocate-and-copy operation here is a secondary thing).
>> 
>> Netback would then need to determine the address size of netfront's domain
>> (just like blkback and blktap do, except that HVM domains should also be
>> treated as not requiring address restriction), and have two pools of pages
>> for use in transfers - one unrestricted and one limited to 37 address bits
>> (the
>> two could be folded for resource efficiency if the machine has less than
>> 128G). Besides that, netback would also start checking return values of the
>> multicall pieces.
>
>I don't get how your netback approach works. The pages we transfer do not
>originate from netback, so it has little control over them. And, even if it
>did, when we allocate pages for network receive we do not know which
>domain's packet will end up in each buffer.

Oh, right, I mixed up old_mfn and new_mfn in netbk_gop_frag(). Nevertheless
netback could take care of this by doing the copying there, as at that point i
already knows the destination domain.

>Personally I think doing it in Xen is perfectly good enough for supporting
>this very out-of-date network receive mechanism.

I'm not just concerned about netback here. The interface exists, and other
users might show up and/or exist already. Whether it would be acceptable
for them to do allocation and copying is unknown. You'd therefore either
need a way to prevent future users of the transfer mechanism, or set proper
requirements on its use. I think that placing extra requirements on the user
of the interface is better than introducing extra (possibly hard to reproduce/
recognize/debug) possibilities of failure.

Jan

  reply	other threads:[~2007-11-27  9:00 UTC|newest]

Thread overview: 12+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2007-11-27  8:43 eliminating 166G limit (was Re: Problem with nr_nodes on large memory NUMA machine) Jan Beulich
2007-11-27  8:56 ` Keir Fraser
2007-11-27  9:00   ` Jan Beulich [this message]
2007-11-27  9:21     ` Keir Fraser
2007-11-27  9:51       ` Jan Beulich
2007-12-03 19:49         ` beth kon
2007-12-03 19:53           ` Keir Fraser
2007-12-03 19:54           ` eliminating 166G limit (was Re: Problem with nr_nodeson " Subrahmanian, Raj
2007-12-06 13:40           ` eliminating 166G limit (was Re: Problem with nr_nodes on " Keir Fraser
2007-12-07 13:20             ` eliminating 166G limit (was Re: Problem withnr_nodes " Krysan, Susan
2008-05-10 22:38               ` Yinghai Lu
2007-12-07 16:17             ` Subrahmanian, Raj

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=474BEACC.76E4.0078.0@novell.com \
    --to=jbeulich@novell.com \
    --cc=Keir.Fraser@cl.cam.ac.uk \
    --cc=xen-devel@lists.xensource.com \
    /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.