[PATCH 0/3] libxtrans + xserver: Add support for systemd socket activation (v5)

Kristian Høgsberg krh at bitplanet.net
Tue Dec 3 11:20:32 PST 2013


On Tue, Dec 3, 2013 at 1:48 AM, Hans de Goede <hdegoede at redhat.com> wrote:
> Hi,
>
>
> On 12/02/2013 09:54 PM, Kristian Høgsberg wrote:
>>
>> On Mon, Dec 2, 2013 at 11:44 AM, Hans de Goede <hdegoede at redhat.com>
>> wrote:
>>>
>>> Hi All,
>>
>>
>> Hi,
>>
>> I didn't follow all this in detail, but I'm not sure that we need
>> Xtrans patches at all.  The server already has ListenOnOpenFD() in
>> os/connection.c.  It was added for launchd under OSX, but we use it
>> for xwayland socket activation too.
>
>
> Looking at how this is used, it is used for fds which are received through
> messages send over another fd while the Xserver is running.
>
> Where as the systemd sockets are passed in as already open fds on startup
> (just like stdout & friends are already open on startup).

I know, but I'm not sure why that matters?  The server receives an fd
that's one end of a socket, whether it comes from the environment or
through another socket doesn't seem relevant.

> Note that libxtrans has code for OSX for getting sockets passed at startup
> to, see this bit in XTrans.c:

But why? What's the point?  I'm trying to help you by making your
patch set smaller here...

Kristian

> #ifdef XQUARTZ_EXPORTS_LAUNCHD_FD
>     fprintf(stderr, "Launchd socket fd: %d\n", xquartz_launchd_fd);
>     if(xquartz_launchd_fd != -1) {
>         if((ciptr = TRANS(ReopenCOTSServer(TRANS_SOCKET_LOCAL_INDEX,
>                                            xquartz_launchd_fd,
> getenv("DISPLAY"
>             fprintf(stderr,"Got NULL while trying to Reopen launchd
> port\n");
>         else
>             temp_ciptrs[(*count_ret)++] = ciptr;
>     }
> #endif
>
> Regards,
>
> Hans


More information about the xorg-devel mailing list