From: Evgeniy Polyakov <johnpol@2ka.mipt.ru>
To: Libor Vanek <libor.vanek@gmail.com>
Cc: Matt Helsley <matthltc@us.ibm.com>,
"Randy.Dunlap" <rdunlap@xenotime.net>,
LKML <linux-kernel@vger.kernel.org>
Subject: Re: Connector - how to start?
Date: Sun, 16 Apr 2006 11:53:23 +0400 [thread overview]
Message-ID: <20060416075323.GB6101@2ka.mipt.ru> (raw)
In-Reply-To: <369a7ef40604150624n28da8895if158a2c13cac2b9e@mail.gmail.com>
On Sat, Apr 15, 2006 at 03:24:26PM +0200, Libor Vanek (libor.vanek@gmail.com) wrote:
> > > However, with 256 I get "File name too long", as you did.
> >
> > Sure, as pointed in previous e-mail, several concatenated directories can exceed any resonable limit,
> > even PATH_MAX (4k):
> > $ pwd | wc
> > 1 1 4113
> >
> > So it is wrong idea to transfer the whole name in one message, which
> > will not only add huge overhead (for each subdir one must transfer the
> > whole path for the parent dir), but can be impossible to allocate such a
> > buffer in kernelspace to store the whole pathname.
>
> OK, so what would you suggest as the right "tool" to transfer these
> (full path text) information?
>
> I see these options:
> 1, Keep using procfs (I don't like it)
> 2, Use connector and create such "communication protocol" that it'll
> be able to transfer such long messages in more datagrams (even if
> 99.99% of messages will fit 1 datagram)
> 3, Some other API to transfer information to user-space and back?
>
> I'll probably go with 2, but I'd be more then happy to hear any
> comments about this...
In general case using any tool you will be unable to transfer the whole
path in one shot, consider low memory condition and you try to allocate
a page with high order.
So it is required to split your path into multiple blocks, I would
recommend to use messages with names between slashes, i.e.
/home/test/aaa/bbb/ccc will be sent as 5 messages with /home, test, aaa,
bbb and ccc data, this will also reduce overhead when there are several
files or directories in one parent dir. Each message should also include
some reference to which parent dir it belongs. This will also speed
things up noticebly, since you will not rescan the whole path when new
file is created, only parent dir.
I wish you success in this hacking journey.
> Libor Vanek
--
Evgeniy Polyakov
next prev parent reply other threads:[~2006-04-16 7:53 UTC|newest]
Thread overview: 18+ messages / expand[flat|nested] mbox.gz Atom feed top
2006-04-15 1:09 Libor Vanek
2006-04-15 2:26 ` Randy.Dunlap
2006-04-15 3:07 ` Matt Helsley
2006-04-15 9:18 ` Evgeniy Polyakov
[not found] ` <369a7ef40604150350x8e7dea1sbf1f83cb800dd1c3@mail.gmail.com>
2006-04-15 11:14 ` Evgeniy Polyakov
2006-04-15 12:18 ` Paul Collins
2006-04-15 12:38 ` Evgeniy Polyakov
[not found] ` <369a7ef40604150624n28da8895if158a2c13cac2b9e@mail.gmail.com>
2006-04-16 7:53 ` Evgeniy Polyakov [this message]
2006-04-16 17:09 ` Evgeniy Polyakov
[not found] ` <369a7ef40604160426s301dcd52r4c9826698d3d2f79@mail.gmail.com>
2006-04-16 11:40 ` Evgeniy Polyakov
[not found] ` <369a7ef40604160509xcf2caadi782b90da956639d5@mail.gmail.com>
2006-04-16 13:25 ` Evgeniy Polyakov
[not found] ` <369a7ef40604160632t16f6aab9u687a6b359997d7ea@mail.gmail.com>
2006-04-16 14:19 ` Evgeniy Polyakov
2006-04-18 6:07 ` Evgeniy Polyakov
[not found] ` <369a7ef40604190439v6e8f1bf6lf52cfab5af3a93af@mail.gmail.com>
2006-04-19 12:14 ` Evgeniy Polyakov
2006-04-20 15:12 ` Libor Vanek
2006-04-20 15:25 ` Evgeniy Polyakov
2006-04-20 15:32 ` Libor Vanek
2006-04-15 21:48 ` Jon Masters
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=20060416075323.GB6101@2ka.mipt.ru \
--to=johnpol@2ka.mipt.ru \
--cc=libor.vanek@gmail.com \
--cc=linux-kernel@vger.kernel.org \
--cc=matthltc@us.ibm.com \
--cc=rdunlap@xenotime.net \
/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®