diff options
author | Tomer Tayar <ttayar@habana.ai> | 2023-04-02 12:42:35 +0200 |
---|---|---|
committer | Oded Gabbay <ogabbay@kernel.org> | 2023-04-08 09:44:23 +0200 |
commit | 56499c461589634f2c89ffbd9cfb78268191d349 (patch) | |
tree | 7b151e0ecba26407cd9d75be5d08cf167d02b32b /drivers/accel | |
parent | accel/habanalabs: speedup h/w queues test in Gaudi2 (diff) | |
download | linux-56499c461589634f2c89ffbd9cfb78268191d349.tar.xz linux-56499c461589634f2c89ffbd9cfb78268191d349.zip |
accel/habanalabs: add missing error flow in hl_sysfs_init()
hl_sysfs_fini() is called only if hl_sysfs_init() completes
successfully. Therefore if hl_sysfs_init() fails, need to remove any
sysfs group that was added until that point.
Signed-off-by: Tomer Tayar <ttayar@habana.ai>
Reviewed-by: Oded Gabbay <ogabbay@kernel.org>
Signed-off-by: Oded Gabbay <ogabbay@kernel.org>
Diffstat (limited to 'drivers/accel')
-rw-r--r-- | drivers/accel/habanalabs/common/sysfs.c | 6 |
1 files changed, 5 insertions, 1 deletions
diff --git a/drivers/accel/habanalabs/common/sysfs.c b/drivers/accel/habanalabs/common/sysfs.c index 735d8bed0066..01f89f029355 100644 --- a/drivers/accel/habanalabs/common/sysfs.c +++ b/drivers/accel/habanalabs/common/sysfs.c @@ -497,10 +497,14 @@ int hl_sysfs_init(struct hl_device *hdev) if (rc) { dev_err(hdev->dev, "Failed to add groups to device, error %d\n", rc); - return rc; + goto remove_groups; } return 0; + +remove_groups: + device_remove_groups(hdev->dev, hl_dev_attr_groups); + return rc; } void hl_sysfs_fini(struct hl_device *hdev) |