All of lore.kernel.org
 help / color / mirror / Atom feed
From: Lee Ward <lee@sandia.gov>
To: lustre-devel@lists.lustre.org
Subject: [Lustre-devel] Multithreaded liblustre
Date: Mon, 14 Sep 2009 21:22:52 -0600	[thread overview]
Message-ID: <1252984972.3969.30.camel@wheel> (raw)
In-Reply-To: <FD1BE808-A4EE-4567-982F-17DCEF344DDC@swedisk.se>

On Thu, 2009-09-10 at 13:59 -0600, Tuve Nordius wrote:
> I guess  what I am looking for is re-entrant.
> 
> The problem is if I try to do any operation (stat, readdir or  
> whatever) while occupied with a large read or write, liblustre does  
> not respond, causing mac fuse to unmount the filesystem. I can of  
> course make macfuse run in a single thread, but that is not what I want.

The SYSIO IO functions all have asynchronous counterparts, in all releases. If those
work, it sounds like you could deal with your issues, now.

However, SYSIO is dependent on the client driver supporting asynchronous IO and
last time I checked Lustre didn't. Maybe someone here can tell us if that is still true?

If Lustre can do it now, you will need to be careful not to allow more than one
thread into the SYSIO library at a time unless you use the current development head.
Then, look at the IO functions that start with 'i', all returning an ioid_t. You
should also look at iopoll and iowait, they are used to test for completion or wait
for completion and give you the return code. It's almost always a good idea to call
iopoll frequently.

		--Lee

> 
> //Tuve
> 
> 
> 10 sep 2009 kl. 21.06 skrev Oleg Drokin:
> 
> > Hello!
> >
> > On Sep 10, 2009, at 3:03 PM, Lee Ward wrote:
> >>> On Sep 10, 2009, at 8:52 AM, Tuve Nordius wrote:
> >>>> Does anyone know what need to be done/ the main obstacles  in  
> >>>> order to
> >>>> make liblustre multithreaded?
> >>> What sort of multi-threadness are you looking at?
> >>> Currently socklnd has separate threads if I remember right.
> >>> There are no callbacks and other async stuff happening, but that is
> >>> pretty much by design so would be hard to change.
> >> If you are talking about the API, the current head for SYSIO is
> >> thread-safe for all but initialization, mount, unmount, and shutdown.
> >> Don't think it works for liblustre at present, but  
> >> rklundt at sandia.gov is
> >> currently doing a port, maybe done already.
> >
> > Well, there are many sides to "multithreaded", that's why I am asking.
> > Good to know.
> >
> >> But... I thought SUN had dropped support for liblustre entirely?  
> >> Did I
> >> miss something?
> >
> > Liblustre is still a first class citizen, fully supported in HEAD  
> > (2.0)
> > codebase too, tested along with other stuff at scheduled intervals in
> > our testsuite.
> >
> > I don't even remember anybody proposing dropping liblustre support in
> > recent times.
> >
> > Bye,
> >    Oleg
> 
> _______________________________________________
> Lustre-devel mailing list
> Lustre-devel at lists.lustre.org
> http://lists.lustre.org/mailman/listinfo/lustre-devel
> 

  reply	other threads:[~2009-09-15  3:22 UTC|newest]

Thread overview: 7+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2009-09-10 12:52 [Lustre-devel] Multithreaded liblustre Tuve Nordius
2009-09-10 18:39 ` Oleg Drokin
2009-09-10 19:03   ` Lee Ward
2009-09-10 19:06     ` Oleg Drokin
2009-09-10 19:59       ` Tuve Nordius
2009-09-15  3:22         ` Lee Ward [this message]
2009-09-10 20:10       ` Lee Ward

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=1252984972.3969.30.camel@wheel \
    --to=lee@sandia.gov \
    --cc=lustre-devel@lists.lustre.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.