Merge lp://staging/~darkxst/unity-settings-daemon/lp1377847 into lp://staging/unity-settings-daemon

Proposed by Tim Lunn
Status: Rejected
Rejected by: Sebastien Bacher
Proposed branch: lp://staging/~darkxst/unity-settings-daemon/lp1377847
Merge into: lp://staging/unity-settings-daemon
Diff against target: 1734 lines (+931/-494)
9 files modified
debian/libunity-settings-daemon1.symbols (+4/-2)
gnome-settings-daemon/Makefile.am (+19/-2)
gnome-settings-daemon/gsd-idle-monitor-private.h (+29/-0)
gnome-settings-daemon/gsd-idle-monitor.c (+774/-413)
gnome-settings-daemon/gsd-idle-monitor.h (+54/-74)
gnome-settings-daemon/idle-monitor.xml (+35/-0)
gnome-settings-daemon/main.c (+7/-0)
plugins/cursor/gsd-cursor-manager.c (+8/-2)
plugins/power/gsd-power-manager.c (+1/-1)
To merge this branch: bzr merge lp://staging/~darkxst/unity-settings-daemon/lp1377847
Reviewer Review Type Date Requested Status
Sebastien Bacher Needs Fixing
Iain Lane (community) Needs Fixing
Review via email: mp+237507@code.staging.launchpad.net

Commit message

Copy in Idle Monitor from 3.10 and hook up dbus interface

To post a comment you must log in.
Revision history for this message
Iain Lane (laney) wrote :

Thanks, small nitpick in the inline comments.

Are you sure nothing is using the removed symbols? I know they've only been there for a short time.

review: Needs Fixing
Revision history for this message
Iain Lane (laney) wrote :

Also would you please remove the d/changelog editing? We'll upload this through CI train which will do that automatically from the commit message and I'm not sure if it'll add the bug reference with the manually edited version.

4055. By Tim Lunn

drop changelog for CI

Revision history for this message
Tim Lunn (darkxst) wrote :

Laney, existing programs access the idle monitor through gnome-desktop (or gnome-session). gnome-shell does although its been using the new api for ages, and besides that is provided by mutter. which only leaves u-s-d (previously before roberts patches it would have called through via gnome-desktop as well), but there is little point for it to call out over dbus only to get itself.

4056. By Tim Lunn

change acquired/name lost logs to g_debug

Revision history for this message
Sebastien Bacher (seb128) wrote :

Using this version I just had a segfault in gsd_idle_monitor_handle_xevent_all()

since the ppa doesn't have ddebs I can get a debug backtrace, but it segfaults in a call to g_hash_table_contains

what I did
- using unity, lock the screen manually
- walk away from the computer for half an hour
- come back and move the mouse to get the lock screen/unlock

It doesn't seem to happen every time with those steps though (or the time without touching the computer matters, I tried just waiting for the screen to dim/turn off when I did testing)

review: Needs Fixing
Revision history for this message
Iain Lane (laney) wrote :

That was the bug with the previous version, can you try building the package yourself and see if you can reproduce it using this branch? I didn't get a crash all day yesterday. At least if you do your own build you'll get a ddeb for a better backtrace.

Revision history for this message
Sebastien Bacher (seb128) wrote :

The build is the current version from https://launchpad.net/~ci-train-ppa-service/+archive/ubuntu/landing-026

Got the ddeb from http://ddebs.ubuntu.com/queue/utopic/

the bt is

"#0 0x206b6e61 in ?? ()
#1 0xb6d687f8 in g_hash_table_lookup_node (hash_return=<synthetic pointer>,
    key=0xe00015, hash_table=0x94b5b90)
    at /build/buildd/glib2.0-2.42.0/./glib/ghash.c:368
#2 g_hash_table_contains (hash_table=0x94b5b90, key=0xe00015)
    at /build/buildd/glib2.0-2.42.0/./glib/ghash.c:1267
#3 0xb76b01f4 in gsd_idle_monitor_handle_xevent (alarm_event=0xbfcdd9ec,
    alarm_event=0xbfcdd9ec, monitor=0x94a46a0) at gsd-idle-monitor.c:225
#4 gsd_idle_monitor_handle_xevent_all (xevent=0xbfcdd9ec)
    at gsd-idle-monitor.c:248
..."

Revision history for this message
Iain Lane (laney) wrote :

On Thu, Oct 09, 2014 at 09:14:57AM -0000, Sebastien Bacher wrote:
> The build is the current version from https://launchpad.net/~ci-train-ppa-service/+archive/ubuntu/landing-026
>
> Got the ddeb from http://ddebs.ubuntu.com/queue/utopic/
>
> the bt is
>
> "#0 0x206b6e61 in ?? ()
> #1 0xb6d687f8 in g_hash_table_lookup_node (hash_return=<synthetic pointer>,
> key=0xe00015, hash_table=0x94b5b90)
> at /build/buildd/glib2.0-2.42.0/./glib/ghash.c:368
> #2 g_hash_table_contains (hash_table=0x94b5b90, key=0xe00015)
> at /build/buildd/glib2.0-2.42.0/./glib/ghash.c:1267
> #3 0xb76b01f4 in gsd_idle_monitor_handle_xevent (alarm_event=0xbfcdd9ec,
> alarm_event=0xbfcdd9ec, monitor=0x94a46a0) at gsd-idle-monitor.c:225
> #4 gsd_idle_monitor_handle_xevent_all (xevent=0xbfcdd9ec)
> at gsd-idle-monitor.c:248
> ..."

It's the same as what we had before with earlier PPA versions - I think
that somehow the device monitor wasn't being disposed properly so we
were accessing some random bit of memory which was crashing inside glib.

With the current version I can't get this crash any more. Previously if
I used the mouse it was quite likely to crash while fading, but now this
never happens for me.

Have you managed to make it happen again?

--
Iain Lane [ <email address hidden> ]
Debian Developer [ <email address hidden> ]
Ubuntu Developer [ <email address hidden> ]

Revision history for this message
Sebastien Bacher (seb128) wrote :

no, it's a one time thing from this morning, I tried to run under valgrind as well, no error there

Revision history for this message
Iain Lane (laney) wrote :

On Thu, Oct 09, 2014 at 10:29:01AM -0000, Sebastien Bacher wrote:
> no, it's a one time thing from this morning, I tried to run under valgrind as well, no error there

I'll keep trying all day. Not sure what we should do, the bug this is
fixing is important but this crash might happen more often across all
users and will be hard to fix if it's very difficult to reproduce. :(

--
Iain Lane [ <email address hidden> ]
Debian Developer [ <email address hidden> ]
Ubuntu Developer [ <email address hidden> ]

Revision history for this message
Sebastien Bacher (seb128) wrote :

seems to trigger when going to unity-greeter (e.g try selecting another user from the indicator)

Revision history for this message
Iain Lane (laney) wrote :

Different problem, but I think I fixed this in https://code.launchpad.net/~laney/unity-settings-daemon/lp1377847-2/+merge/237846

hopefully... it's hard to gdb these refcounting bugs, I should learn to use refdbg. :)

4057. By Tim Lunn

Move gdk_window_add_filter up a level

This only needs to be called once, not when creating each device

4058. By Tim Lunn

clear device_monitors pointer when disposing monitor

This is not happening when g_object_clear gets called, so we ended up with
a stale pointer here.

4059. By Tim Lunn

Take a ref on the GdkDevice to avoid a double free, to be safe also
take a ref on the gdk device_manager to ensure that doesnt get disposed.

4060. By Tim Lunn

fix build

Revision history for this message
Sebastien Bacher (seb128) wrote :

thanks for the update, triggering a silo rebuild with r4060.

The changes look fine, small nitpick, some g_object_(un)ref calls lack a space before the '('

4061. By Tim Lunn

fix spacing on some ref/unref calls

Revision history for this message
Tim Lunn (darkxst) wrote :

fixed the spaces

Revision history for this message
Sebastien Bacher (seb128) wrote :

not sure why that merge request is still open but the change have been merged previous cycle

Unmerged revisions

4061. By Tim Lunn

fix spacing on some ref/unref calls

Preview Diff

[H/L] Next/Prev Comment, [J/K] Next/Prev File, [N/P] Next/Prev Hunk
The diff is not available at this time. You can reload the page or download it.

Subscribers

People subscribed via source and target branches