[OpenIndiana-discuss] gdm problem with sunray on hipster

Alexander Pyhalov alp at rsu.ru
Fri Jan 20 13:12:19 UTC 2017


On 01/20/17 03:40 PM, Carsten Grzemba wrote:
>
>
> On 20.01.17 08:27, Alexander Pyhalov  <alp at rsu.ru> wrote:
>>
>> On 01/19/17 11:19 PM, Carsten Grzemba wrote:
>>>
>>>
>>> On 19.01.17 18:52, Alexander Pyhalov <alp at rsu.ru> wrote:
>>>>
>>>> On 19.01.2017 19:06, Carsten Grzemba wrote:
>>>>> I test sunray on latest hipster and it's works so far, but:
>>>>>
>>>>> on logout the GDM does not preset the login screen again. On console I
>>>>> see the error message:
>>>>>
>>>>> Jan 19 16:50:07 oi-sam gnome-session[10232]: [ID 702911
>>>>> daemon.warning] WARNING: Unable to activate session: Method invoked
>>>>> for CanActivateSessions returned FALSE but did not set error
>>>>> Jan 19 16:50:09 oi-sam gdm-binary[10010]: [ID 702911 daemon.warning]
>>>>> WARNING: Got console request to add display for session that already
>>>>> has a display, and display is already in use
>>>>>
>>>>
>>>>> Has anyone an idea what's gonig wrong here?
>>>>
>>>> Hello.
>>>> No ideas, but you could dig in why CanActivateSessions fails.
>>>> Is svc:/system/vtdaemon:default online?
>>>> Look at what ConsoleKit is trying to do there.
>>>>
>>>> What does gdmdynamic -l shows?
>>>>
>>> shows nothing
>>> # gdmdynamic -l
>>>
>>
>> That's strange. On our server I see
>> # gdmdynamic -l
>> :11,,-1;:12,user79,-1;:13,user58,-1;:14,,-1;:15,monuser,-1;:16,user82,-1;:17,,-1;:18,,-1;:19,user81,-1;:20,user80,-1;:21,user70,-1;:22,user93,-1;:23,user94,-1;:24,user78,-1;:25,user96,-1;:26,user76,-1;:28,user77,-1
>>
>> Is vtdaemon service online? Have you looked why consolekit CanActivateSessions method returns false?
>>
>>
> I guess gdmdynamic is outdated, there is no output on the current SunRay Servers (also on Solaris11). But it is the right direction:
>
> If I run
> # ck-list-sessions
> SessionStaticSeat1Local:
>  unix-user = '50'
>  realname = 'GDM Reserved UID'
>  seat = 'StaticSeat1'
>  session-type = 'LoginWindow'
>  display-type = 'Local'
>  open = 'TRUE'
>  active = 'FALSE'
>  x11-display = ':0'
>  x11-display-device = '/dev/vt/2'
>  display-device = ' ? '
>  remote-host-name = ''
>  is-local = 'TRUE'
>  on-since = '2017-01-18T13:32:15.157658Z'
>  login-session-id = ''
>  idle-since-hint = '2017-01-18T13:38:19.920704Z'
> I get only the console and if I add with:

As I see, ConsoleKit CanActivateSessions should have returned true, as 
seat as marked as static.

The code is the following:

gboolean
ck_seat_can_activate_sessions (CkSeat   *seat,
                                gboolean *can_activate,
                                GError  **error)
{
         g_return_val_if_fail (CK_IS_SEAT (seat), FALSE);

         if (ck_supports_activatable_consoles () == FALSE) {
                 return FALSE;
         }

         if (can_activate != NULL) {
                 *can_activate = (seat->priv->kind == CK_SEAT_KIND_STATIC);
         }

         return TRUE;
}

The possible issue is that ck_supports_activatable_consoles() returns 
FALSE. And it is:

ck_supports_activatable_consoles (void)
{
         char *state = NULL;
         gboolean vt_enabled;

         state = smf_get_state ("svc:/system/vtdaemon:default");
         if (state && g_str_equal (state, SCF_STATE_STRING_ONLINE)) {
                 vt_enabled = TRUE;
         } else {
                 vt_enabled = FALSE;
         }

         g_free (state);
         return vt_enabled;
}

So, once again, is vtdaemon service in online state?


-- 
С уважением,
Александр Пыхалов,
программист отдела телекоммуникационной инфраструктуры
управления информационно-коммуникационной инфраструктуры ЮФУ



More information about the openindiana-discuss mailing list