From: Pavel Machek <pavel@ucw.cz>
To: "Ed L. Cashin" <ecashin@coraid.com>
Cc: kernel list <linux-kernel@vger.kernel.org>, ak@suse.de
Subject: Re: ATA over ethernet swapping and obfuscated code
Date: Tue, 31 Jul 2007 17:29:24 +0200 [thread overview]
Message-ID: <20070731152924.GM2087@elf.ucw.cz> (raw)
In-Reply-To: <20070731150324.GE3206@coraid.com>
Hi!
(and thanks for the response).
> > I wanted to know if it is possible/okay to swap over AOE...
> >
> > According to
> > http://www.coraid.com/support/linux/EtherDrive-2.6-HOWTO-5.html#ss5.20
> > .. it runs OOM even during normal use, so I guess swapping over it is
> > no-no?
>
> It can be done (e.g., to create virtual memory for running xfs_check
> on a diskless machine as a temporary measure), but it probably won't
> be a good idea until there is a mechanism that allows write responses
> to be (quickly recognized and then) received without allocating memory
> when there are no free pages.
>
> I think if we could register a very fast function to recognize write
> responses, which would be called only when free memory was very low,
> and then use a pre-allocated receive skb for receiving write
> responses, then we'd be OK, and the common case wouldn't be
> affected.
Is the protocol documented somewhere? aoe.txt only points at
HOWTO... aha, protocol is linked from wikipedia.
http://www.coraid.com/documents/AoEr10.txt ... perhaps that should be
linked from aoe.txt, too?
Hmm, aoe protocol is really trivial. Perhaps netpoll/netconsole
infrastructure could be used to create driver good enough for
swapping? (Ok, it would not neccessarily perform too well, but... we'd
simply wait for the reply synchronously. It should be pretty simple).
> > Can I build both client and server for these using free software?
>
> Yes. A popular free target is the vblade (aoetools.sourceforge.net),
> and there are others. The most popular free software initiator is the
> aoe driver in Linux.
Good, thanks.
> > In the process, I looked at the aoe code, and parts of it look like
> > obfuscated C contest. The use of switch() as an if was particulary
> > creative; I'm not even sure if I translated it properly... can you
> > take a look?
>
> I recently submitted a set of patches, and Andrew Morton asked me to
> avoid the switch statement you are talking about, so thanks for the
> patch, but that code is going to be patched soon anyway.
Sorry for the noise. I was blind, the spin_unlock issue is not there
and I should have looked at -mm.
Pavel
--
(english) http://www.livejournal.com/~pavelmachek
(cesky, pictures) http://atrey.karlin.mff.cuni.cz/~pavel/picture/horses/blog.html
next prev parent reply other threads:[~2007-07-31 15:29 UTC|newest]
Thread overview: 11+ messages / expand[flat|nested] mbox.gz Atom feed top
2007-07-31 13:58 Pavel Machek
2007-07-31 14:46 ` Sébastien Dugué
2007-07-31 15:03 ` Ed L. Cashin
2007-07-31 15:29 ` Pavel Machek [this message]
2007-07-31 16:21 ` Ed L. Cashin
2007-07-31 22:27 ` ATA over ethernet swapping Pavel Machek
2007-08-01 9:18 ` Peter Zijlstra
2007-08-09 10:11 ` Pavel Machek
2007-08-13 7:45 ` Peter Zijlstra
2007-08-21 7:42 ` Pavel Machek
2007-08-03 12:13 ` ATA over ethernet swapping and obfuscated code Torsten Kaiser
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=20070731152924.GM2087@elf.ucw.cz \
--to=pavel@ucw.cz \
--cc=ak@suse.de \
--cc=ecashin@coraid.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
Powered by JetHome