Skip to content
Snippets Groups Projects
  1. Apr 12, 2018
    • Pekka Paalanen's avatar
      libweston: properly orphan wl_output resources · d9dcc6dc
      Pekka Paalanen authored
      
      Remove the wl_resource in the head's resource list when we are
      removing the wl_output global. We sent global removal events to clients,
      the resources should become dummies until clients reap them. Reset user
      data so that clients triying to use dummy objects don't hit e.g. a freed
      head pointer.
      
      This fixes a theoretical issue: if an enabled output is disabled and
      then gets enabled again, mode changes and wl_surface.enter/leave would
      still attempt to use the dummy objects. If a client destroyed a dummy
      object, we don't have the destructor to remove it from the resource
      list, and libweston would hit freed memory.
      
      Signed-off-by: Pekka Paalanen's avatarPekka Paalanen <pekka.paalanen@collabora.co.uk>
      v5 Reviewed-by: default avatarDerek Foreman <derekf@osg.samsung.com>
      Reviewed-by: default avatarIan Ray <ian.ray@ge.com>
      Reviewed-by: Daniel Stone's avatarDaniel Stone <daniels@collabora.com>
      Acked-by: default avatarDerek Foreman <derekf@osg.samsung.com>
      d9dcc6dc
    • Pekka Paalanen's avatar
      libweston: introduce weston_output::head_list · 7cdbabee
      Pekka Paalanen authored
      
      The intention is that in the future backends will dynamically allocate
      weston_heads based on the resources they have. The lifetime of a
      weston_head will be independent of the lifetime of a weston_output it
      may be attached to. Backends allocate objects derived from weston_head,
      like they currently do for weston_output. Backend will choose when to
      destroy a weston_head.
      
      For clone mode, struct weston_output gains head_list member, which is
      the list of attached heads that will all show the same framebuffer.
      Since heads are growing out of weston_output, management functions are
      added.
      
      Detaching a head from an enabled output is allowed to accommodate
      disappearing heads. Attaching a head to an enabled output is disallowed
      because it may need hardware reconfiguration and testing, and so
      requires a weston_output_enable() call.
      
      As a temporary measure, we have one weston_head embedded in
      weston_output, so that backends can be migrated individually to the new
      allocation scheme.
      
      v8:
      - Do not send wp_presentation_feedback.sync_output events for multiple
        wl_output globals in weston_presentation_feedback_present().
      
      v6:
      - adapt to upstream changes in weston_output_set_transform()
      - use wl_list_for_each_safe in weston_output_release()
      - removed weston_output_get_first_head() as it's not needed yet
      
      Signed-off-by: Pekka Paalanen's avatarPekka Paalanen <pekka.paalanen@collabora.co.uk>
      v5 Reviewed-by: default avatarDerek Foreman <derekf@osg.samsung.com>
      v7 Reviewed-by: default avatarIan Ray <ian.ray@ge.com>
      Reviewed-by: Daniel Stone's avatarDaniel Stone <daniels@collabora.com>
      Acked-by: default avatarDerek Foreman <derekf@osg.samsung.com>
      7cdbabee
  2. Apr 10, 2018
  3. Apr 09, 2018
  4. Apr 05, 2018
  5. Apr 02, 2018
  6. Mar 28, 2018
  7. Mar 27, 2018
  8. Mar 20, 2018
  9. Mar 19, 2018
  10. Mar 16, 2018
  11. Mar 15, 2018
Loading