All of lore.kernel.org
 help / color / mirror / Atom feed
From: Ian Campbell <ian.campbell@citrix.com>
To: Martin Lucina <martin@lucina.net>
Cc: xen-devel@lists.xenproject.org, Wei Liu <wei.liu2@citrix.com>,
	Ian Jackson <ian.jackson@eu.citrix.com>,
	Stefano Stabellini <stefano.stabellini@eu.citrix.com>
Subject: Re: [PATCH] xenconsole: Allow non-interactive use
Date: Fri, 24 Jul 2015 12:44:22 +0100	[thread overview]
Message-ID: <1437738262.24746.79.camel@citrix.com> (raw)
In-Reply-To: <20150724113612.GC25338@nodbug.lucina.net>

On Fri, 2015-07-24 at 13:36 +0200, Martin Lucina wrote:
> On Thursday, 23.07.2015 at 16:23, Ian Campbell wrote:
> > On Thu, 2015-07-23 at 17:09 +0200, Martin Lucina wrote:
> > 
> > > > But maybe it would be better to set max_fd = -1 on declaration 
> > > > and 
> > > > do
> > > > the max dance here as with the following cases?
> > > 
> > > Declaring max_fd = -1 is indeed clearer, I can do a v2 with that 
> > > change if you like.
> > 
> > If you are happy to then yes, please.
> > 
> > > One other bug that my change makes potentially easier to trigger 
> > > is that
> > > you can run "xl console DOMID" multiple times with the same DOMID 
> > > and the
> > > result is broken; each instance gets part of the data written to 
> > > the
> > > console.
> > > 
> > > Any ideas on how to address this in a simple fashion?
> > 
> > Perhaps the client should take some exclusive lock (fcntl based?) 
> > on an
> > fd of an open file with domid in the name. Failure to get the lock
> > should result in the client exiting with some message indicating 
> > the
> > console is in use.
> 
> That begs the question of where to put the lock file. eg. NetBSD does 
> not
> seem to have /var/lock.

Configure ends up defining XEN_LOCK_DIR, so it should go in there
alongside the other locks.

> I tried using flock(pty_fd, LOCK_EX | LOCK_NB) locks directly on the pty
> device and contrary to the documentation claiming support for regular files
> only it worked fine. I tested using the xenconsole code on my Debian dom0,
> and flock(1) on NetBSD. Would you consider this approach?

Only if that functionality was required by POSIX IMHO.

Ian.

  reply	other threads:[~2015-07-24 11:44 UTC|newest]

Thread overview: 25+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2015-07-22 17:08 [PATCH] xenconsole: Allow non-interactive use Martin Lucina
2015-07-23  8:48 ` Ian Campbell
2015-07-23 10:53   ` Wei Liu
2015-07-23 15:09   ` Martin Lucina
2015-07-23 15:23     ` Ian Campbell
2015-07-24 11:30       ` [PATCH v2] " Martin Lucina
2015-07-24 13:13         ` Ian Campbell
2015-07-24 11:36       ` [PATCH] " Martin Lucina
2015-07-24 11:44         ` Ian Campbell [this message]
2015-07-24 12:51           ` [PATCH] xenconsole: Ensure exclusive access to console using locks Martin Lucina
2015-07-24 13:11             ` Ian Campbell
2015-07-24 13:35               ` Ian Jackson
2015-07-24 13:40               ` Martin Lucina
2015-07-24 13:54                 ` Ian Campbell
2015-07-24 13:32             ` Ian Jackson
2015-07-24 13:42               ` Martin Lucina
2015-07-24 14:47                 ` [PATCH v2] " Martin Lucina
2015-07-24 15:07                   ` Ian Jackson
2015-07-24 15:29                     ` [PATCH v3] " Martin Lucina
2015-07-24 16:01                       ` Ian Jackson
2015-07-27 12:44                         ` Martin Lucina
2015-07-27 13:29                           ` Wei Liu
2015-07-27 15:14                             ` Ian Campbell
2015-07-24 15:12                   ` [PATCH v2] " Ian Campbell
2015-07-24 13:42               ` [PATCH] " Ian Campbell

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=1437738262.24746.79.camel@citrix.com \
    --to=ian.campbell@citrix.com \
    --cc=ian.jackson@eu.citrix.com \
    --cc=martin@lucina.net \
    --cc=stefano.stabellini@eu.citrix.com \
    --cc=wei.liu2@citrix.com \
    --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.