drm_propert...blob_from_id(9)
π drm_propert...blob_from_id β a Kernel API Manual moment β¨
okay so bestie, grab your matcha π because we're diving into drm_propert...blob_from_id(9) β yes that name is literally a crime, yes it's truncated, and yes we're still gonna slay it. This is a function from the Kernel API Manual and it's giving "glow-up for your blob properties" energy π
β¨ SYNOPSIS β¨
int drm_property_replace_blob_from_id (struct drm_device *dev , struct
drm_property_blob **blob , uint64_t blob_id , ssize_t max_size , ssize_t
expected_size , ssize_t expected_elem_size , bool *replaced );
like, that's a LOT of arguments, but we're built different π«Ά
π ARGUMENTS π
devβ the DRM device. main character, literally.blobβ a pointer to the member blob to be replaced. it's the one getting swapped out, no hard feelings πblob_idβ the id of the new blob to replace with. the incoming queen πmax_sizeβ the maximum size of the blob property, for variable-size blobs. gotta have boundaries bestie.expected_sizeβ expected size of the blob property. it's giving standards β¨expected_elem_sizeβ expected size of an element in the blob property. the little details matter fr fr.replacedβ if the blob was in fact replaced. receipts, basically π§Ύ
π¦ DESCRIPTION π¦
So here's the vibe check: it looks up the new blob from the id, takes its reference, checks the expected sizes of the blob and its element, and then replaces the old blob with the new one. Then it advertises whether the replacement operation was actually successful, because communication is key in any relationship π
π₯ RETURN π₯
true if the blob was in fact replaced. -EINVAL if the new blob was not found or sizes don't match π
ngl, size mismatch is such a mood killer.
π SEE ALSO π
Bestie, the whole friend group is here, and the overview lives in the kernel file ./drivers/gpu/drm/drm_property.c:
overview(9)drm_property_create(9)drm_property_create_enum(9)drm_property_create_bitmask(9)drm_property_create_range(9)drm_property_create_signed_range(9)drm_property_create_object(9)drm_property_create_bool(9)drm_property_add_enum(9)drm_property_destroy(9)drm_property_create_blob(9)drm_property_blob_put(9)drm_property_blob_get(9)drm_property_lookup_blob(9)drm_property_replace_global_blob(9)drm_property_replace_blob(9)
iykyk π
and that's the whole page, bestie π huge thank you to ./drivers/gpu/drm for shipping this, dated October 2026 β iconic of them, actually. now go replace some blobs responsibly π
β¨
π¦ 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