From: Daniel Vetter <daniel-/w4YWyX8dFk@public.gmane.org>
To: Lyude Paul <lyude-H+wXaHxf7aLQT0dZR+AlfA@public.gmane.org>
Cc: nouveau-PD4FTy7X32lNgt0PjOBp9y5qC8QIuHrW@public.gmane.org,
intel-gfx-PD4FTy7X32lNgt0PjOBp9y5qC8QIuHrW@public.gmane.org,
amd-gfx-PD4FTy7X32lNgt0PjOBp9y5qC8QIuHrW@public.gmane.org,
Jerry Zuo <Jerry.Zuo-5C7GfCeVMHo@public.gmane.org>,
dri-devel-PD4FTy7X32lNgt0PjOBp9y5qC8QIuHrW@public.gmane.org,
Daniel Vetter <daniel-/w4YWyX8dFk@public.gmane.org>,
David Airlie <airlied-H+wXaHxf7aLQT0dZR+AlfA@public.gmane.org>,
Harry Wentland <harry.wentland-5C7GfCeVMHo@public.gmane.org>,
Juston Li <juston.li-ral2JQCrhuEAvxtiuMwx3w@public.gmane.org>
Subject: Re: [PATCH v2 01/16] drm/dp_mst: Rename drm_dp_mst_get_validated_(port|mstb)_ref and friends
Date: Thu, 20 Dec 2018 10:09:46 +0100 [thread overview]
Message-ID: <20181220090946.GG21184@phenom.ffwll.local> (raw)
In-Reply-To: <20181220001959.12486-2-lyude-H+wXaHxf7aLQT0dZR+AlfA@public.gmane.org>
On Wed, Dec 19, 2018 at 07:19:45PM -0500, Lyude Paul wrote:
> s/drm_dp_get_validated_port_ref/drm_dp_mst_topology_get_port_validated/
> s/drm_dp_put_port/drm_dp_mst_topology_put_port/
> s/drm_dp_get_validated_mstb_ref/drm_dp_mst_topology_get_mstb_validated/
> s/drm_dp_put_mst_branch_device/drm_dp_mst_topology_put_mstb/
>
> This is a much more consistent naming scheme, and will make even more
> sense once we redesign how the current refcounting scheme here works.
>
> Signed-off-by: Lyude Paul <lyude@redhat.com>
> Cc: Daniel Vetter <daniel@ffwll.ch>
> Cc: David Airlie <airlied@redhat.com>
> Cc: Jerry Zuo <Jerry.Zuo@amd.com>
> Cc: Harry Wentland <harry.wentland@amd.com>
> Cc: Juston Li <juston.li@intel.com>
Reviewed-by: Daniel Vetter <daniel.vetter@ffwll.ch>
> ---
> drivers/gpu/drm/drm_dp_mst_topology.c | 114 ++++++++++++++------------
> 1 file changed, 62 insertions(+), 52 deletions(-)
>
> diff --git a/drivers/gpu/drm/drm_dp_mst_topology.c b/drivers/gpu/drm/drm_dp_mst_topology.c
> index 2ab16c9e6243..6f9b211069a7 100644
> --- a/drivers/gpu/drm/drm_dp_mst_topology.c
> +++ b/drivers/gpu/drm/drm_dp_mst_topology.c
> @@ -46,7 +46,7 @@ static bool dump_dp_payload_table(struct drm_dp_mst_topology_mgr *mgr,
> char *buf);
> static int test_calc_pbn_mode(void);
>
> -static void drm_dp_put_port(struct drm_dp_mst_port *port);
> +static void drm_dp_mst_topology_put_port(struct drm_dp_mst_port *port);
>
> static int drm_dp_dpcd_write_payload(struct drm_dp_mst_topology_mgr *mgr,
> int id,
> @@ -888,7 +888,7 @@ static void drm_dp_destroy_mst_branch_device(struct kref *kref)
> */
> list_for_each_entry_safe(port, tmp, &mstb->ports, next) {
> list_del(&port->next);
> - drm_dp_put_port(port);
> + drm_dp_mst_topology_put_port(port);
> }
>
> /* drop any tx slots msg */
> @@ -911,7 +911,7 @@ static void drm_dp_destroy_mst_branch_device(struct kref *kref)
> kref_put(kref, drm_dp_free_mst_branch_device);
> }
>
> -static void drm_dp_put_mst_branch_device(struct drm_dp_mst_branch *mstb)
> +static void drm_dp_mst_topology_put_mstb(struct drm_dp_mst_branch *mstb)
> {
> kref_put(&mstb->kref, drm_dp_destroy_mst_branch_device);
> }
> @@ -930,7 +930,7 @@ static void drm_dp_port_teardown_pdt(struct drm_dp_mst_port *port, int old_pdt)
> case DP_PEER_DEVICE_MST_BRANCHING:
> mstb = port->mstb;
> port->mstb = NULL;
> - drm_dp_put_mst_branch_device(mstb);
> + drm_dp_mst_topology_put_mstb(mstb);
> break;
> }
> }
> @@ -970,12 +970,14 @@ static void drm_dp_destroy_port(struct kref *kref)
> kfree(port);
> }
>
> -static void drm_dp_put_port(struct drm_dp_mst_port *port)
> +static void drm_dp_mst_topology_put_port(struct drm_dp_mst_port *port)
> {
> kref_put(&port->kref, drm_dp_destroy_port);
> }
>
> -static struct drm_dp_mst_branch *drm_dp_mst_get_validated_mstb_ref_locked(struct drm_dp_mst_branch *mstb, struct drm_dp_mst_branch *to_find)
> +static struct drm_dp_mst_branch *
> +drm_dp_mst_topology_get_mstb_validated_locked(struct drm_dp_mst_branch *mstb,
> + struct drm_dp_mst_branch *to_find)
> {
> struct drm_dp_mst_port *port;
> struct drm_dp_mst_branch *rmstb;
> @@ -985,7 +987,8 @@ static struct drm_dp_mst_branch *drm_dp_mst_get_validated_mstb_ref_locked(struct
> }
> list_for_each_entry(port, &mstb->ports, next) {
> if (port->mstb) {
> - rmstb = drm_dp_mst_get_validated_mstb_ref_locked(port->mstb, to_find);
> + rmstb = drm_dp_mst_topology_get_mstb_validated_locked(
> + port->mstb, to_find);
> if (rmstb)
> return rmstb;
> }
> @@ -993,12 +996,15 @@ static struct drm_dp_mst_branch *drm_dp_mst_get_validated_mstb_ref_locked(struct
> return NULL;
> }
>
> -static struct drm_dp_mst_branch *drm_dp_get_validated_mstb_ref(struct drm_dp_mst_topology_mgr *mgr, struct drm_dp_mst_branch *mstb)
> +static struct drm_dp_mst_branch *
> +drm_dp_mst_topology_get_mstb_validated(struct drm_dp_mst_topology_mgr *mgr,
> + struct drm_dp_mst_branch *mstb)
> {
> struct drm_dp_mst_branch *rmstb = NULL;
> mutex_lock(&mgr->lock);
> if (mgr->mst_primary)
> - rmstb = drm_dp_mst_get_validated_mstb_ref_locked(mgr->mst_primary, mstb);
> + rmstb = drm_dp_mst_topology_get_mstb_validated_locked(
> + mgr->mst_primary, mstb);
> mutex_unlock(&mgr->lock);
> return rmstb;
> }
> @@ -1021,7 +1027,9 @@ static struct drm_dp_mst_port *drm_dp_mst_get_port_ref_locked(struct drm_dp_mst_
> return NULL;
> }
>
> -static struct drm_dp_mst_port *drm_dp_get_validated_port_ref(struct drm_dp_mst_topology_mgr *mgr, struct drm_dp_mst_port *port)
> +static struct drm_dp_mst_port *
> +drm_dp_mst_topology_get_port_validated(struct drm_dp_mst_topology_mgr *mgr,
> + struct drm_dp_mst_port *port)
> {
> struct drm_dp_mst_port *rport = NULL;
> mutex_lock(&mgr->lock);
> @@ -1210,7 +1218,7 @@ static void drm_dp_add_port(struct drm_dp_mst_branch *mstb,
> list_del(&port->next);
> mutex_unlock(&mstb->mgr->lock);
> /* drop port list reference */
> - drm_dp_put_port(port);
> + drm_dp_mst_topology_put_port(port);
> goto out;
> }
> if ((port->pdt == DP_PEER_DEVICE_DP_LEGACY_CONV ||
> @@ -1224,7 +1232,7 @@ static void drm_dp_add_port(struct drm_dp_mst_branch *mstb,
>
> out:
> /* put reference to this port */
> - drm_dp_put_port(port);
> + drm_dp_mst_topology_put_port(port);
> }
>
> static void drm_dp_update_port(struct drm_dp_mst_branch *mstb,
> @@ -1259,7 +1267,7 @@ static void drm_dp_update_port(struct drm_dp_mst_branch *mstb,
> dowork = true;
> }
>
> - drm_dp_put_port(port);
> + drm_dp_mst_topology_put_port(port);
> if (dowork)
> queue_work(system_long_wq, &mstb->mgr->work);
>
> @@ -1362,10 +1370,11 @@ static void drm_dp_check_and_send_link_address(struct drm_dp_mst_topology_mgr *m
> drm_dp_send_enum_path_resources(mgr, mstb, port);
>
> if (port->mstb) {
> - mstb_child = drm_dp_get_validated_mstb_ref(mgr, port->mstb);
> + mstb_child = drm_dp_mst_topology_get_mstb_validated(
> + mgr, port->mstb);
> if (mstb_child) {
> drm_dp_check_and_send_link_address(mgr, mstb_child);
> - drm_dp_put_mst_branch_device(mstb_child);
> + drm_dp_mst_topology_put_mstb(mstb_child);
> }
> }
> }
> @@ -1384,7 +1393,7 @@ static void drm_dp_mst_link_probe_work(struct work_struct *work)
> mutex_unlock(&mgr->lock);
> if (mstb) {
> drm_dp_check_and_send_link_address(mgr, mstb);
> - drm_dp_put_mst_branch_device(mstb);
> + drm_dp_mst_topology_put_mstb(mstb);
> }
> }
>
> @@ -1726,17 +1735,17 @@ static int drm_dp_payload_send_msg(struct drm_dp_mst_topology_mgr *mgr,
> u8 sinks[DRM_DP_MAX_SDP_STREAMS];
> int i;
>
> - port = drm_dp_get_validated_port_ref(mgr, port);
> + port = drm_dp_mst_topology_get_port_validated(mgr, port);
> if (!port)
> return -EINVAL;
>
> port_num = port->port_num;
> - mstb = drm_dp_get_validated_mstb_ref(mgr, port->parent);
> + mstb = drm_dp_mst_topology_get_mstb_validated(mgr, port->parent);
> if (!mstb) {
> mstb = drm_dp_get_last_connected_port_and_mstb(mgr, port->parent, &port_num);
>
> if (!mstb) {
> - drm_dp_put_port(port);
> + drm_dp_mst_topology_put_port(port);
> return -EINVAL;
> }
> }
> @@ -1766,8 +1775,8 @@ static int drm_dp_payload_send_msg(struct drm_dp_mst_topology_mgr *mgr,
> }
> kfree(txmsg);
> fail_put:
> - drm_dp_put_mst_branch_device(mstb);
> - drm_dp_put_port(port);
> + drm_dp_mst_topology_put_mstb(mstb);
> + drm_dp_mst_topology_put_port(port);
> return ret;
> }
>
> @@ -1777,13 +1786,13 @@ int drm_dp_send_power_updown_phy(struct drm_dp_mst_topology_mgr *mgr,
> struct drm_dp_sideband_msg_tx *txmsg;
> int len, ret;
>
> - port = drm_dp_get_validated_port_ref(mgr, port);
> + port = drm_dp_mst_topology_get_port_validated(mgr, port);
> if (!port)
> return -EINVAL;
>
> txmsg = kzalloc(sizeof(*txmsg), GFP_KERNEL);
> if (!txmsg) {
> - drm_dp_put_port(port);
> + drm_dp_mst_topology_put_port(port);
> return -ENOMEM;
> }
>
> @@ -1799,7 +1808,7 @@ int drm_dp_send_power_updown_phy(struct drm_dp_mst_topology_mgr *mgr,
> ret = 0;
> }
> kfree(txmsg);
> - drm_dp_put_port(port);
> + drm_dp_mst_topology_put_port(port);
>
> return ret;
> }
> @@ -1888,7 +1897,8 @@ int drm_dp_update_payload_part1(struct drm_dp_mst_topology_mgr *mgr)
> if (vcpi) {
> port = container_of(vcpi, struct drm_dp_mst_port,
> vcpi);
> - port = drm_dp_get_validated_port_ref(mgr, port);
> + port = drm_dp_mst_topology_get_port_validated(mgr,
> + port);
> if (!port) {
> mutex_unlock(&mgr->payload_lock);
> return -EINVAL;
> @@ -1925,7 +1935,7 @@ int drm_dp_update_payload_part1(struct drm_dp_mst_topology_mgr *mgr)
> cur_slots += req_payload.num_slots;
>
> if (port)
> - drm_dp_put_port(port);
> + drm_dp_mst_topology_put_port(port);
> }
>
> for (i = 0; i < mgr->max_payloads; i++) {
> @@ -2024,7 +2034,7 @@ static int drm_dp_send_dpcd_write(struct drm_dp_mst_topology_mgr *mgr,
> struct drm_dp_sideband_msg_tx *txmsg;
> struct drm_dp_mst_branch *mstb;
>
> - mstb = drm_dp_get_validated_mstb_ref(mgr, port->parent);
> + mstb = drm_dp_mst_topology_get_mstb_validated(mgr, port->parent);
> if (!mstb)
> return -EINVAL;
>
> @@ -2048,7 +2058,7 @@ static int drm_dp_send_dpcd_write(struct drm_dp_mst_topology_mgr *mgr,
> }
> kfree(txmsg);
> fail_put:
> - drm_dp_put_mst_branch_device(mstb);
> + drm_dp_mst_topology_put_mstb(mstb);
> return ret;
> }
>
> @@ -2192,7 +2202,7 @@ int drm_dp_mst_topology_mgr_set_mst(struct drm_dp_mst_topology_mgr *mgr, bool ms
> out_unlock:
> mutex_unlock(&mgr->lock);
> if (mstb)
> - drm_dp_put_mst_branch_device(mstb);
> + drm_dp_mst_topology_put_mstb(mstb);
> return ret;
>
> }
> @@ -2357,7 +2367,7 @@ static int drm_dp_mst_handle_down_rep(struct drm_dp_mst_topology_mgr *mgr)
> mgr->down_rep_recv.initial_hdr.lct,
> mgr->down_rep_recv.initial_hdr.rad[0],
> mgr->down_rep_recv.msg[0]);
> - drm_dp_put_mst_branch_device(mstb);
> + drm_dp_mst_topology_put_mstb(mstb);
> memset(&mgr->down_rep_recv, 0, sizeof(struct drm_dp_sideband_msg_rx));
> return 0;
> }
> @@ -2368,7 +2378,7 @@ static int drm_dp_mst_handle_down_rep(struct drm_dp_mst_topology_mgr *mgr)
> }
>
> memset(&mgr->down_rep_recv, 0, sizeof(struct drm_dp_sideband_msg_rx));
> - drm_dp_put_mst_branch_device(mstb);
> + drm_dp_mst_topology_put_mstb(mstb);
>
> mutex_lock(&mgr->qlock);
> txmsg->state = DRM_DP_SIDEBAND_TX_RX;
> @@ -2441,7 +2451,7 @@ static int drm_dp_mst_handle_up_req(struct drm_dp_mst_topology_mgr *mgr)
> }
>
> if (mstb)
> - drm_dp_put_mst_branch_device(mstb);
> + drm_dp_mst_topology_put_mstb(mstb);
>
> memset(&mgr->up_req_recv, 0, sizeof(struct drm_dp_sideband_msg_rx));
> }
> @@ -2501,7 +2511,7 @@ enum drm_connector_status drm_dp_mst_detect_port(struct drm_connector *connector
> enum drm_connector_status status = connector_status_disconnected;
>
> /* we need to search for the port in the mgr in case its gone */
> - port = drm_dp_get_validated_port_ref(mgr, port);
> + port = drm_dp_mst_topology_get_port_validated(mgr, port);
> if (!port)
> return connector_status_disconnected;
>
> @@ -2526,7 +2536,7 @@ enum drm_connector_status drm_dp_mst_detect_port(struct drm_connector *connector
> break;
> }
> out:
> - drm_dp_put_port(port);
> + drm_dp_mst_topology_put_port(port);
> return status;
> }
> EXPORT_SYMBOL(drm_dp_mst_detect_port);
> @@ -2543,11 +2553,11 @@ bool drm_dp_mst_port_has_audio(struct drm_dp_mst_topology_mgr *mgr,
> {
> bool ret = false;
>
> - port = drm_dp_get_validated_port_ref(mgr, port);
> + port = drm_dp_mst_topology_get_port_validated(mgr, port);
> if (!port)
> return ret;
> ret = port->has_audio;
> - drm_dp_put_port(port);
> + drm_dp_mst_topology_put_port(port);
> return ret;
> }
> EXPORT_SYMBOL(drm_dp_mst_port_has_audio);
> @@ -2567,7 +2577,7 @@ struct edid *drm_dp_mst_get_edid(struct drm_connector *connector, struct drm_dp_
> struct edid *edid = NULL;
>
> /* we need to search for the port in the mgr in case its gone */
> - port = drm_dp_get_validated_port_ref(mgr, port);
> + port = drm_dp_mst_topology_get_port_validated(mgr, port);
> if (!port)
> return NULL;
>
> @@ -2578,7 +2588,7 @@ struct edid *drm_dp_mst_get_edid(struct drm_connector *connector, struct drm_dp_
> drm_connector_set_tile_property(connector);
> }
> port->has_audio = drm_detect_monitor_audio(edid);
> - drm_dp_put_port(port);
> + drm_dp_mst_topology_put_port(port);
> return edid;
> }
> EXPORT_SYMBOL(drm_dp_mst_get_edid);
> @@ -2649,7 +2659,7 @@ int drm_dp_atomic_find_vcpi_slots(struct drm_atomic_state *state,
> if (IS_ERR(topology_state))
> return PTR_ERR(topology_state);
>
> - port = drm_dp_get_validated_port_ref(mgr, port);
> + port = drm_dp_mst_topology_get_port_validated(mgr, port);
> if (port == NULL)
> return -EINVAL;
> req_slots = DIV_ROUND_UP(pbn, mgr->pbn_div);
> @@ -2657,14 +2667,14 @@ int drm_dp_atomic_find_vcpi_slots(struct drm_atomic_state *state,
> req_slots, topology_state->avail_slots);
>
> if (req_slots > topology_state->avail_slots) {
> - drm_dp_put_port(port);
> + drm_dp_mst_topology_put_port(port);
> return -ENOSPC;
> }
>
> topology_state->avail_slots -= req_slots;
> DRM_DEBUG_KMS("vcpi slots avail=%d", topology_state->avail_slots);
>
> - drm_dp_put_port(port);
> + drm_dp_mst_topology_put_port(port);
> return req_slots;
> }
> EXPORT_SYMBOL(drm_dp_atomic_find_vcpi_slots);
> @@ -2715,7 +2725,7 @@ bool drm_dp_mst_allocate_vcpi(struct drm_dp_mst_topology_mgr *mgr,
> {
> int ret;
>
> - port = drm_dp_get_validated_port_ref(mgr, port);
> + port = drm_dp_mst_topology_get_port_validated(mgr, port);
> if (!port)
> return false;
>
> @@ -2725,7 +2735,7 @@ bool drm_dp_mst_allocate_vcpi(struct drm_dp_mst_topology_mgr *mgr,
> if (port->vcpi.vcpi > 0) {
> DRM_DEBUG_KMS("payload: vcpi %d already allocated for pbn %d - requested pbn %d\n", port->vcpi.vcpi, port->vcpi.pbn, pbn);
> if (pbn == port->vcpi.pbn) {
> - drm_dp_put_port(port);
> + drm_dp_mst_topology_put_port(port);
> return true;
> }
> }
> @@ -2739,7 +2749,7 @@ bool drm_dp_mst_allocate_vcpi(struct drm_dp_mst_topology_mgr *mgr,
> DRM_DEBUG_KMS("initing vcpi for pbn=%d slots=%d\n",
> pbn, port->vcpi.num_slots);
>
> - drm_dp_put_port(port);
> + drm_dp_mst_topology_put_port(port);
> return true;
> out:
> return false;
> @@ -2749,12 +2759,12 @@ EXPORT_SYMBOL(drm_dp_mst_allocate_vcpi);
> int drm_dp_mst_get_vcpi_slots(struct drm_dp_mst_topology_mgr *mgr, struct drm_dp_mst_port *port)
> {
> int slots = 0;
> - port = drm_dp_get_validated_port_ref(mgr, port);
> + port = drm_dp_mst_topology_get_port_validated(mgr, port);
> if (!port)
> return slots;
>
> slots = port->vcpi.num_slots;
> - drm_dp_put_port(port);
> + drm_dp_mst_topology_put_port(port);
> return slots;
> }
> EXPORT_SYMBOL(drm_dp_mst_get_vcpi_slots);
> @@ -2768,11 +2778,11 @@ EXPORT_SYMBOL(drm_dp_mst_get_vcpi_slots);
> */
> void drm_dp_mst_reset_vcpi_slots(struct drm_dp_mst_topology_mgr *mgr, struct drm_dp_mst_port *port)
> {
> - port = drm_dp_get_validated_port_ref(mgr, port);
> + port = drm_dp_mst_topology_get_port_validated(mgr, port);
> if (!port)
> return;
> port->vcpi.num_slots = 0;
> - drm_dp_put_port(port);
> + drm_dp_mst_topology_put_port(port);
> }
> EXPORT_SYMBOL(drm_dp_mst_reset_vcpi_slots);
>
> @@ -2783,7 +2793,7 @@ EXPORT_SYMBOL(drm_dp_mst_reset_vcpi_slots);
> */
> void drm_dp_mst_deallocate_vcpi(struct drm_dp_mst_topology_mgr *mgr, struct drm_dp_mst_port *port)
> {
> - port = drm_dp_get_validated_port_ref(mgr, port);
> + port = drm_dp_mst_topology_get_port_validated(mgr, port);
> if (!port)
> return;
>
> @@ -2792,7 +2802,7 @@ void drm_dp_mst_deallocate_vcpi(struct drm_dp_mst_topology_mgr *mgr, struct drm_
> port->vcpi.pbn = 0;
> port->vcpi.aligned_pbn = 0;
> port->vcpi.vcpi = 0;
> - drm_dp_put_port(port);
> + drm_dp_mst_topology_put_port(port);
> }
> EXPORT_SYMBOL(drm_dp_mst_deallocate_vcpi);
>
> @@ -3292,7 +3302,7 @@ static int drm_dp_mst_i2c_xfer(struct i2c_adapter *adapter, struct i2c_msg *msgs
> struct drm_dp_sideband_msg_tx *txmsg = NULL;
> int ret;
>
> - mstb = drm_dp_get_validated_mstb_ref(mgr, port->parent);
> + mstb = drm_dp_mst_topology_get_mstb_validated(mgr, port->parent);
> if (!mstb)
> return -EREMOTEIO;
>
> @@ -3342,7 +3352,7 @@ static int drm_dp_mst_i2c_xfer(struct i2c_adapter *adapter, struct i2c_msg *msgs
> }
> out:
> kfree(txmsg);
> - drm_dp_put_mst_branch_device(mstb);
> + drm_dp_mst_topology_put_mstb(mstb);
> return ret;
> }
>
> --
> 2.19.2
>
--
Daniel Vetter
Software Engineer, Intel Corporation
http://blog.ffwll.ch
_______________________________________________
Nouveau mailing list
Nouveau@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/nouveau
next prev parent reply other threads:[~2018-12-20 9:09 UTC|newest]
Thread overview: 26+ messages / expand[flat|nested] mbox.gz Atom feed top
2018-12-20 0:19 [PATCH v2 00/16] MST refcounting/atomic helpers cleanup Lyude Paul
2018-12-20 0:19 ` [PATCH v2 01/16] drm/dp_mst: Rename drm_dp_mst_get_validated_(port|mstb)_ref and friends Lyude Paul
[not found] ` <20181220001959.12486-2-lyude-H+wXaHxf7aLQT0dZR+AlfA@public.gmane.org>
2018-12-20 9:09 ` Daniel Vetter [this message]
2018-12-20 0:19 ` [PATCH v2 02/16] drm/dp_mst: Introduce new refcounting scheme for mstbs and ports Lyude Paul
2018-12-20 0:19 ` [PATCH v2 06/16] drm/i915: Keep malloc references to MST ports Lyude Paul
[not found] ` <20181220001959.12486-7-lyude-H+wXaHxf7aLQT0dZR+AlfA@public.gmane.org>
2018-12-20 9:10 ` Daniel Vetter
2018-12-20 0:19 ` [PATCH v2 09/16] drm/nouveau: Remove unnecessary VCPI checks in nv50_msto_cleanup() Lyude Paul
[not found] ` <20181220001959.12486-1-lyude-H+wXaHxf7aLQT0dZR+AlfA@public.gmane.org>
2018-12-20 0:19 ` [PATCH v2 03/16] drm/dp_mst: Restart last_connected_port_and_mstb() if topology ref fails Lyude Paul
[not found] ` <20181220001959.12486-4-lyude-H+wXaHxf7aLQT0dZR+AlfA@public.gmane.org>
2019-01-08 19:16 ` Wentland, Harry
2018-12-20 0:19 ` [PATCH v2 04/16] drm/dp_mst: Stop releasing VCPI when removing ports from topology Lyude Paul
2019-01-08 19:27 ` Wentland, Harry
2018-12-20 0:19 ` [PATCH v2 05/16] drm/dp_mst: Fix payload deallocation on hotplugs using malloc refs Lyude Paul
2019-01-08 19:27 ` Wentland, Harry
2018-12-20 0:19 ` [PATCH v2 07/16] drm/amdgpu/display: Keep malloc ref to MST port Lyude Paul
[not found] ` <20181220001959.12486-8-lyude-H+wXaHxf7aLQT0dZR+AlfA@public.gmane.org>
2019-01-08 19:38 ` Wentland, Harry
2018-12-20 0:19 ` [PATCH v2 08/16] drm/nouveau: Remove bogus cleanup in nv50_mstm_add_connector() Lyude Paul
2018-12-20 0:19 ` [PATCH v2 10/16] drm/nouveau: Keep malloc references to MST ports Lyude Paul
2018-12-20 0:19 ` [PATCH v2 11/16] drm/nouveau: Stop unsetting mstc->port, use malloc refs Lyude Paul
2018-12-20 0:19 ` [PATCH v2 14/16] drm/dp_mst: Start tracking per-port VCPI allocations Lyude Paul
2018-12-20 0:19 ` [PATCH v2 15/16] drm/dp_mst: Check payload count in drm_dp_mst_atomic_check() Lyude Paul
2018-12-20 0:19 ` [PATCH v2 12/16] drm/nouveau: Grab payload lock in nv50_msto_payload() Lyude Paul
2018-12-20 0:19 ` [PATCH v2 13/16] drm/dp_mst: Add some atomic state iterator macros Lyude Paul
2018-12-20 0:20 ` [PATCH v2 16/16] drm/nouveau: Use atomic VCPI helpers for MST Lyude Paul
2018-12-20 0:39 ` ✗ Fi.CI.CHECKPATCH: warning for MST refcounting/atomic helpers cleanup (rev2) Patchwork
2018-12-20 0:43 ` ✗ Fi.CI.SPARSE: " Patchwork
2018-12-20 0:57 ` ✗ Fi.CI.BAT: failure " Patchwork
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20181220090946.GG21184@phenom.ffwll.local \
--to=daniel-/w4ywyx8dfk@public.gmane.org \
--cc=Jerry.Zuo-5C7GfCeVMHo@public.gmane.org \
--cc=airlied-H+wXaHxf7aLQT0dZR+AlfA@public.gmane.org \
--cc=amd-gfx-PD4FTy7X32lNgt0PjOBp9y5qC8QIuHrW@public.gmane.org \
--cc=dri-devel-PD4FTy7X32lNgt0PjOBp9y5qC8QIuHrW@public.gmane.org \
--cc=harry.wentland-5C7GfCeVMHo@public.gmane.org \
--cc=intel-gfx-PD4FTy7X32lNgt0PjOBp9y5qC8QIuHrW@public.gmane.org \
--cc=juston.li-ral2JQCrhuEAvxtiuMwx3w@public.gmane.org \
--cc=lyude-H+wXaHxf7aLQT0dZR+AlfA@public.gmane.org \
--cc=nouveau-PD4FTy7X32lNgt0PjOBp9y5qC8QIuHrW@public.gmane.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox