drm_dp_mst_t...ogy_put_port(9)
π NAME
drm_dp_mst_topology_put_port β bestie, this one releases a topology reference to a port. That's it, that's the whole job. π«Ά
β¨ SYNOPSIS
void drm_dp_mst_topology_put_port(struct drm_dp_mst_port *port);
So it's a void function, meaning it hands nothing back to you β no return value, no little gift, just vibes and a decrement. π
π ARGUMENTS
portβ thestruct drm_dp_mst_portyou want to release the topology reference from. Like, this is the port in question, the one you're saying "okay we're done here" to. π
π¦ DESCRIPTION
Okay so here's the tea π: this function drops a topology reference from port by decrementing drm_dp_mst_port.topology_kref. That's literally the whole move β one decrement, no cap. It's giving "polite goodbye to a reference you were holding."
Not me pointing you at the sisters too π β See also: drm_dp_mst_topology_try_get_port and drm_dp_mst_topology_get_port. The get/try_get duo picks references up, and this icon here puts them down. Whole little balanced ecosystem, we love to see it. βοΈβ¨
π SEE ALSO
Kernel file ./drivers/gpu/drm/display/drm_dp_mst_topology.c, plus dp mst helper(9), Branch device and port refcounting(9), and honestly the entire extended friendship group:
drm_dp_mst_get_mstb_malloc(9)drm_dp_mst_put_mstb_malloc(9)drm_dp_mst_get_port_malloc(9)drm_dp_mst_put_port_malloc(9)drm_dp_mst_topology_try_get_mstb(9)drm_dp_mst_topology_get_mstb(9)drm_dp_mst_topology_put_mstb(9)drm_dp_mst_topology_try_get_port(9)drm_dp_mst_topology_get_port(9)drm_dp_mst_dpcd_read(9)drm_dp_mst_dpcd_write(9)drm_dp_mst_connector_late_register(9)drm_dp_mst_connector_early_unregister(9)drm_dp_add_payload_part1(9)drm_dp_remove_payload_part1(9)drm_dp_remove_payload_part2(9)drm_dp_add_payload_part2(9)drm_dp_get_vc_payload_bw(9)drm_dp_read_mst_cap(9)drm_dp_mst_topology_mgr_set_mst(9)drm_dp_mst_topology_queue_probe(9)drm_dp_mst_topology_mgr_suspend(9)drm_dp_mst_topology_mgr_resume(9)drm_dp_mst_hpd_irq_handle_event(9)drm_dp_mst_hpd_irq_send_new_request(9)drm_dp_mst_detect_port(9)drm_dp_mst_edid_read(9)drm_dp_mst_get_edid(9)drm_dp_atomic_find_time_slots(9)drm_dp_atomic_release_time_slots(9)drm_dp_mst_atomic_setup_commit(9)drm_dp_mst_atomic_wait_for_dependencies(9)drm_dp_mst_root_conn_atomic_check(9)drm_dp_mst_update_slots(9)drm_dp_check_act_status(9)drm_dp_calc_pbn_mode(9)drm_dp_mst_dump_topology(9)drm_dp_mst_port_downstream_of_parent(9)drm_dp_mst_add_affected_dsc_crtcs(9)drm_dp_mst_atomic_enable_dsc(9)drm_dp_mst_atomic_check_mgr(9)drm_dp_mst_atomic_check(9)drm_atomic_get_mst_topology_state(9)drm_atomic_get_old_mst_topology_state(9)drm_atomic_get_new_mst_topology_state(9)drm_dp_mst_topology_mgr_init(9)drm_dp_mst_topology_mgr_destroy(9)drm_dp_mst_register_i2c_bus(9)drm_dp_mst_unregister_i2c_bus(9)drm_dp_mst_is_virtual_dpcd(9)drm_dp_mst_aux_for_parent(9)drm_dp_mst_dsc_aux_for_port(9)
Like, that's a whole friend group and every single one of them is invited to the function. Periodt. π
That's the whole page, bestie β no notes, no leftovers. π
Sign-off time π: this little beauty lives under ./drivers/gpu/drm/display, and this particular printing is dated October 2026. Go release those references responsibly, mwah πβ¨
π¦ where this page comes from
- nixpkgs unstable: linux-manual 7.3.1
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash-1017 on : a language model's rewrite of the original, under its terms