diff options
author | Harshit Mogalapalli <harshit.m.mogalapalli@oracle.com> | 2023-11-13 23:07:38 +0300 |
---|---|---|
committer | Ilpo Järvinen <ilpo.jarvinen@linux.intel.com> | 2023-11-15 15:32:27 +0300 |
commit | 5736aa9537c9b8927dec32d3d47c8c31fe560f62 (patch) | |
tree | a13cfd797a11bd9c1dc3e8d833a2a9773c4ce525 /drivers/platform/x86/hp | |
parent | c5dbf04160005e07e8ca7232a7faa77ab1547ae0 (diff) | |
download | linux-5736aa9537c9b8927dec32d3d47c8c31fe560f62.tar.xz |
platform/x86: hp-bioscfg: move mutex_lock() down in hp_add_other_attributes()
attr_name_kobj's memory allocation is done with mutex_lock() held, this
is not needed.
Move allocation outside of mutex_lock() so unlock is not needed when
allocation fails.
Suggested-by: Ilpo Järvinen <ilpo.jarvinen@linux.intel.com>
Signed-off-by: Harshit Mogalapalli <harshit.m.mogalapalli@oracle.com>
Reviewed-by: Ilpo Järvinen <ilpo.jarvinen@linux.intel.com>
Link: https://lore.kernel.org/r/20231113200742.3593548-2-harshit.m.mogalapalli@oracle.com
Signed-off-by: Ilpo Järvinen <ilpo.jarvinen@linux.intel.com>
Diffstat (limited to 'drivers/platform/x86/hp')
-rw-r--r-- | drivers/platform/x86/hp/hp-bioscfg/bioscfg.c | 10 |
1 files changed, 4 insertions, 6 deletions
diff --git a/drivers/platform/x86/hp/hp-bioscfg/bioscfg.c b/drivers/platform/x86/hp/hp-bioscfg/bioscfg.c index 10676e1abc28..a3599498c4e8 100644 --- a/drivers/platform/x86/hp/hp-bioscfg/bioscfg.c +++ b/drivers/platform/x86/hp/hp-bioscfg/bioscfg.c @@ -592,13 +592,11 @@ static int hp_add_other_attributes(int attr_type) int ret; char *attr_name; - mutex_lock(&bioscfg_drv.mutex); - attr_name_kobj = kzalloc(sizeof(*attr_name_kobj), GFP_KERNEL); - if (!attr_name_kobj) { - ret = -ENOMEM; - goto err_other_attr_init; - } + if (!attr_name_kobj) + return -ENOMEM; + + mutex_lock(&bioscfg_drv.mutex); /* Check if attribute type is supported */ switch (attr_type) { |