using XFCE4, on Kali-Rolling 2016.1/2016.2 while esthetically pleasing, desktop sessions are unrecoverable if started with startx from terminal-text session.

Unfortunately, if the user's system has only one account (ROOT), the only way to recover the session is by restarting the machine with a hard-reboot or ctrl+alt+del from the unrecoverable state <although this part has not been reproduced>
-----------


1: start a tty session from any state (i.e initial login or after starting desktop session normally via desktop management log-in)

2: start a desktop session with command: 'startx' (no single-quotes)

-at this point you will either (a)drop into a desktop session or(b)be denied a desktop session and prompted with tty session again

3: if in desktop session (standard GUI), (a)allow session to either suspend/lockscreen or (b)suspend/lock the session manually

-at this point the session is unrecoverable requiring (a)hard-reboot or (b)additional log-in with different credentials

4optional) start another terminal-text(tty) session (ctrl+alt+fn) using same credentials as either session

-in my case, while credentials are valid, access is denied and the prompt for credentials is repeated until a different credential is entered (usernameasswd)
----------------------------------
This is extremely troubling if the user only has one account at the time of testing/experience this, as the only way to recover a session is hard-reboot.


>> top showing running pid for unrecoverable session & root session
Code:
------------------------------------------------------------------------
1247 os13115   20   0  382688  26804  21916 S  0.3  1.0   0:05.37 xfwm4
----------------------------------------------------------------------
1255 os13115   20   0  709964  50144  22492 S  0.3  1.8   0:04.83 xfdesktop   
----------------------------------------------------------------------
1251 os13115   20   0  551124  29672  23172 S  0.3  1.1   0:03.28 xfce4-panel 
----------------------------------------------------------------------          
7567 root      20   0  170660  20012  16628 S  0.3  0.7   0:01.62 xfwm4
---------------------------------------------------------------------------
7570 root      20   0  399428  26232  22152 S  0.3  0.9   0:03.36 xfce4-panel
-----------------------------------------------------------------------------
7573 root      20   0  471312  35972  21628 S  0.7  1.3   0:01.69 xfdesktop
------------------------------------------------------------------------------
7477 root      20   0  249804  48544  20084 S  0.7  1.8   1:03.47 Xorg
------------------------------------------------------------------------------
>> show who's logged in at the time
Code:
root@offsec:~# users
os13115 root
>>strace -p1247
Code:
recvmsg(3, 0x7ffdd5fda7d0, 0)           = -1 EAGAIN (Resource temporarily unavailable)
recvmsg(3, 0x7ffdd5fda460, 0)           = -1 EAGAIN (Resource temporarily unavailable)
recvmsg(3, 0x7ffdd5fda470, 0)           = -1 EAGAIN (Resource temporarily unavailable)
clock_gettime(CLOCK_MONOTONIC, {32348, 274251441}) = 0
poll([{fd=3, events=POLLIN|POLLOUT}], 1, -1) = 1 ([{fd=3, revents=POLLOUT}])
writev(3, [{"\212\5\2\0+\246b\0\217\3\4\0\333\23`\0\0\0\0\0+\246b\0\212\21\3\0+\246b\0"..., 68}, {NULL, 0}, {"", 0}], 3) = 68