Re: [PATCH 2/2] ufs: rpmb: use a fixed-length RPMB dev_id
From: Bean Huo
Date: Wed Aug 05 2026 - 12:56:39 EST
On Wed, 2026-07-15 at 23:39 +0200, Jorge Ramirez-Ortiz wrote:
> @@ -156,6 +158,7 @@ int ufs_rpmb_probe(struct ufs_hba *hba)
> {
> struct ufs_rpmb_dev *ufs_rpmb, *it, *tmp;
> struct rpmb_dev *rdev;
> + char *dev_id = NULL;
> char *cid = NULL;
> int region;
> u32 cap;
> @@ -215,8 +218,17 @@ int ufs_rpmb_probe(struct ufs_hba *hba)
> goto err_out;
> }
>
> - descr.dev_id = cid;
> - descr.dev_id_len = strlen(cid);
> + dev_id = kzalloc(UFS_RPMB_ID_LEN, GFP_KERNEL);
> + if (!dev_id) {
> + device_unregister(&ufs_rpmb->dev);
> + ret = -ENOMEM;
> + goto err_out;
> + }
since rpmb_dev_register() kmemdups dev_id, can we use this:
u8 dev_id[UFS_RPMB_ID_LEN];
blake2b(NULL, 0, cid, strlen(cid), dev_id, UFS_RPMB_ID_LEN);
descr.dev_id = dev_id;
descr.dev_id_len = UFS_RPMB_ID_LEN;
then you could drop allocation and its error branch and both kfree()?
Kind regards,
Bean