* [PATCH v2 00/12] gpib: Unify *allocate_private
@ 2026-01-15 19:20 Dominik Karol Piątkowski
2026-01-15 19:20 ` [PATCH v2 01/12] gpib: agilent_82350b: " Dominik Karol Piątkowski
` (11 more replies)
0 siblings, 12 replies; 15+ messages in thread
From: Dominik Karol Piątkowski @ 2026-01-15 19:20 UTC (permalink / raw)
To: Dave Penkler, Greg Kroah-Hartman, Michael Rubin, Dan Carpenter
Cc: linux-kernel, Dominik Karol Piątkowski
Recently, gpib driver got out of staging area. There is still a bit of work that
can be done to improve it.
Return values for *allocate_private functions as well as calling code in
gpib driver are all over the place. Unify them by returning -errno if
something fails, zero otherwise. Use the returned value as early return
value in case of error.
Untouched gpib files already use the proposed convention.
v2: Replace kmalloc/memset pairs to kzalloc.
Signed-off-by: Dominik Karol Piątkowski <dominik.karol.piatkowski@protonmail.com>
Dominik Karol Piątkowski (12):
gpib: agilent_82350b: Unify *allocate_private
gpib: cb7210: Unify *allocate_private
gpib: cec: Unify *allocate_private
gpib: eastwood: Unify *allocate_private
gpib: fmh_gpib: Unify *allocate_private
gpib: gpio: Unify *allocate_private
gpib: hp_82335: Unify *allocate_private
gpib: hp_82341: Unify *allocate_private
gpib: ines: Unify *allocate_private
gpib: ni_usb: Unify *allocate_private
gpib: pc2: Unify *allocate_private
gpib: tnt4882: Unify *allocate_private
drivers/gpib/agilent_82350b/agilent_82350b.c | 5 +++--
drivers/gpib/cb7210/cb7210.c | 9 +++++----
drivers/gpib/cec/cec_gpib.c | 11 ++++++-----
drivers/gpib/eastwood/fluke_gpib.c | 3 +--
drivers/gpib/fmh_gpib/fmh_gpib.c | 3 +--
drivers/gpib/gpio/gpib_bitbang.c | 9 +++++----
drivers/gpib/hp_82335/hp82335.c | 7 ++++---
drivers/gpib/hp_82341/hp_82341.c | 5 +++--
drivers/gpib/ines/ines_gpib.c | 11 ++++++-----
drivers/gpib/ni_usb/ni_usb_gpib.c | 3 +--
drivers/gpib/pc2/pc2_gpib.c | 11 ++++++-----
drivers/gpib/tnt4882/tnt4882_gpib.c | 20 +++++++++++---------
12 files changed, 52 insertions(+), 45 deletions(-)
--
2.43.0
^ permalink raw reply [flat|nested] 15+ messages in thread
* [PATCH v2 01/12] gpib: agilent_82350b: Unify *allocate_private
2026-01-15 19:20 [PATCH v2 00/12] gpib: Unify *allocate_private Dominik Karol Piątkowski
@ 2026-01-15 19:20 ` Dominik Karol Piątkowski
2026-01-16 7:34 ` Greg Kroah-Hartman
2026-01-16 7:35 ` Greg Kroah-Hartman
2026-01-15 19:20 ` [PATCH v2 02/12] gpib: cb7210: " Dominik Karol Piątkowski
` (10 subsequent siblings)
11 siblings, 2 replies; 15+ messages in thread
From: Dominik Karol Piątkowski @ 2026-01-15 19:20 UTC (permalink / raw)
To: Dave Penkler, Greg Kroah-Hartman, Michael Rubin, Dan Carpenter
Cc: linux-kernel, Dominik Karol Piątkowski
Return values for *allocate_private functions as well as calling code in
gpib driver are all over the place. Unify them by returning -errno if
something fails, zero otherwise. Use the returned value as early return
value in case of error. Replace kmalloc/memset pairs to kzalloc.
Signed-off-by: Dominik Karol Piątkowski <dominik.karol.piatkowski@protonmail.com>
---
v2: Replace kmalloc/memset pairs to kzalloc.
drivers/gpib/agilent_82350b/agilent_82350b.c | 5 +++--
1 file changed, 3 insertions(+), 2 deletions(-)
diff --git a/drivers/gpib/agilent_82350b/agilent_82350b.c b/drivers/gpib/agilent_82350b/agilent_82350b.c
index 01a5bb43cd2d..f5f102863e47 100644
--- a/drivers/gpib/agilent_82350b/agilent_82350b.c
+++ b/drivers/gpib/agilent_82350b/agilent_82350b.c
@@ -599,8 +599,9 @@ static int agilent_82350b_generic_attach(struct gpib_board *board,
board->status = 0;
- if (agilent_82350b_allocate_private(board))
- return -ENOMEM;
+ retval = agilent_82350b_allocate_private(board);
+ if (retval < 0)
+ return retval;
a_priv = board->private_data;
a_priv->using_fifos = use_fifos;
tms_priv = &a_priv->tms9914_priv;
--
2.43.0
^ permalink raw reply related [flat|nested] 15+ messages in thread
* [PATCH v2 02/12] gpib: cb7210: Unify *allocate_private
2026-01-15 19:20 [PATCH v2 00/12] gpib: Unify *allocate_private Dominik Karol Piątkowski
2026-01-15 19:20 ` [PATCH v2 01/12] gpib: agilent_82350b: " Dominik Karol Piątkowski
@ 2026-01-15 19:20 ` Dominik Karol Piątkowski
2026-01-15 19:20 ` [PATCH v2 03/12] gpib: cec: " Dominik Karol Piątkowski
` (9 subsequent siblings)
11 siblings, 0 replies; 15+ messages in thread
From: Dominik Karol Piątkowski @ 2026-01-15 19:20 UTC (permalink / raw)
To: Dave Penkler, Greg Kroah-Hartman, Michael Rubin, Dan Carpenter
Cc: linux-kernel, Dominik Karol Piątkowski
Return values for *allocate_private functions as well as calling code in
gpib driver are all over the place. Unify them by returning -errno if
something fails, zero otherwise. Use the returned value as early return
value in case of error. Replace kmalloc/memset pairs to kzalloc.
Signed-off-by: Dominik Karol Piątkowski <dominik.karol.piatkowski@protonmail.com>
---
v2: Replace kmalloc/memset pairs to kzalloc.
drivers/gpib/cb7210/cb7210.c | 9 +++++----
1 file changed, 5 insertions(+), 4 deletions(-)
diff --git a/drivers/gpib/cb7210/cb7210.c b/drivers/gpib/cb7210/cb7210.c
index 24c61b151071..6395f89d0f3c 100644
--- a/drivers/gpib/cb7210/cb7210.c
+++ b/drivers/gpib/cb7210/cb7210.c
@@ -856,11 +856,10 @@ static int cb7210_allocate_private(struct gpib_board *board)
{
struct cb7210_priv *priv;
- board->private_data = kmalloc(sizeof(struct cb7210_priv), GFP_KERNEL);
+ board->private_data = kzalloc(sizeof(struct cb7210_priv), GFP_KERNEL);
if (!board->private_data)
return -ENOMEM;
priv = board->private_data;
- memset(priv, 0, sizeof(struct cb7210_priv));
init_nec7210_private(&priv->nec7210_priv);
return 0;
}
@@ -876,11 +875,13 @@ static int cb7210_generic_attach(struct gpib_board *board)
{
struct cb7210_priv *cb_priv;
struct nec7210_priv *nec_priv;
+ int retval;
board->status = 0;
- if (cb7210_allocate_private(board))
- return -ENOMEM;
+ retval = cb7210_allocate_private(board);
+ if (retval < 0)
+ return retval;
cb_priv = board->private_data;
nec_priv = &cb_priv->nec7210_priv;
nec_priv->read_byte = nec7210_locking_ioport_read_byte;
--
2.43.0
^ permalink raw reply related [flat|nested] 15+ messages in thread
* [PATCH v2 03/12] gpib: cec: Unify *allocate_private
2026-01-15 19:20 [PATCH v2 00/12] gpib: Unify *allocate_private Dominik Karol Piątkowski
2026-01-15 19:20 ` [PATCH v2 01/12] gpib: agilent_82350b: " Dominik Karol Piątkowski
2026-01-15 19:20 ` [PATCH v2 02/12] gpib: cb7210: " Dominik Karol Piątkowski
@ 2026-01-15 19:20 ` Dominik Karol Piątkowski
2026-01-15 19:20 ` [PATCH v2 04/12] gpib: eastwood: " Dominik Karol Piątkowski
` (8 subsequent siblings)
11 siblings, 0 replies; 15+ messages in thread
From: Dominik Karol Piątkowski @ 2026-01-15 19:20 UTC (permalink / raw)
To: Dave Penkler, Greg Kroah-Hartman, Michael Rubin, Dan Carpenter
Cc: linux-kernel, Dominik Karol Piątkowski
Return values for *allocate_private functions as well as calling code in
gpib driver are all over the place. Unify them by returning -errno if
something fails, zero otherwise. Use the returned value as early return
value in case of error. Replace kmalloc/memset pairs to kzalloc.
Signed-off-by: Dominik Karol Piątkowski <dominik.karol.piatkowski@protonmail.com>
---
v2: Replace kmalloc/memset pairs to kzalloc.
drivers/gpib/cec/cec_gpib.c | 11 ++++++-----
1 file changed, 6 insertions(+), 5 deletions(-)
diff --git a/drivers/gpib/cec/cec_gpib.c b/drivers/gpib/cec/cec_gpib.c
index dbf9b95baabc..f2bb57352d31 100644
--- a/drivers/gpib/cec/cec_gpib.c
+++ b/drivers/gpib/cec/cec_gpib.c
@@ -220,11 +220,10 @@ static int cec_allocate_private(struct gpib_board *board)
{
struct cec_priv *priv;
- board->private_data = kmalloc(sizeof(struct cec_priv), GFP_KERNEL);
+ board->private_data = kzalloc(sizeof(struct cec_priv), GFP_KERNEL);
if (!board->private_data)
- return -1;
+ return -ENOMEM;
priv = board->private_data;
- memset(priv, 0, sizeof(struct cec_priv));
init_nec7210_private(&priv->nec7210_priv);
return 0;
}
@@ -239,11 +238,13 @@ static int cec_generic_attach(struct gpib_board *board)
{
struct cec_priv *cec_priv;
struct nec7210_priv *nec_priv;
+ int retval;
board->status = 0;
- if (cec_allocate_private(board))
- return -ENOMEM;
+ retval = cec_allocate_private(board);
+ if (retval < 0)
+ return retval;
cec_priv = board->private_data;
nec_priv = &cec_priv->nec7210_priv;
nec_priv->read_byte = nec7210_ioport_read_byte;
--
2.43.0
^ permalink raw reply related [flat|nested] 15+ messages in thread
* [PATCH v2 04/12] gpib: eastwood: Unify *allocate_private
2026-01-15 19:20 [PATCH v2 00/12] gpib: Unify *allocate_private Dominik Karol Piątkowski
` (2 preceding siblings ...)
2026-01-15 19:20 ` [PATCH v2 03/12] gpib: cec: " Dominik Karol Piątkowski
@ 2026-01-15 19:20 ` Dominik Karol Piątkowski
2026-01-15 19:20 ` [PATCH v2 05/12] gpib: fmh_gpib: " Dominik Karol Piątkowski
` (7 subsequent siblings)
11 siblings, 0 replies; 15+ messages in thread
From: Dominik Karol Piątkowski @ 2026-01-15 19:20 UTC (permalink / raw)
To: Dave Penkler, Greg Kroah-Hartman, Michael Rubin, Dan Carpenter
Cc: linux-kernel, Dominik Karol Piątkowski
Return values for *allocate_private functions as well as calling code in
gpib driver are all over the place. Unify them by returning -errno if
something fails, zero otherwise. Use the returned value as early return
value in case of error. Replace kmalloc/memset pairs to kzalloc.
Signed-off-by: Dominik Karol Piątkowski <dominik.karol.piatkowski@protonmail.com>
---
v2: Replace kmalloc/memset pairs to kzalloc.
drivers/gpib/eastwood/fluke_gpib.c | 3 +--
1 file changed, 1 insertion(+), 2 deletions(-)
diff --git a/drivers/gpib/eastwood/fluke_gpib.c b/drivers/gpib/eastwood/fluke_gpib.c
index 3ae848e3f738..8e315b0e35a2 100644
--- a/drivers/gpib/eastwood/fluke_gpib.c
+++ b/drivers/gpib/eastwood/fluke_gpib.c
@@ -853,11 +853,10 @@ static int fluke_allocate_private(struct gpib_board *board)
{
struct fluke_priv *priv;
- board->private_data = kmalloc(sizeof(struct fluke_priv), GFP_KERNEL);
+ board->private_data = kzalloc(sizeof(struct fluke_priv), GFP_KERNEL);
if (!board->private_data)
return -ENOMEM;
priv = board->private_data;
- memset(priv, 0, sizeof(struct fluke_priv));
init_nec7210_private(&priv->nec7210_priv);
priv->dma_buffer_size = 0x7ff;
priv->dma_buffer = kmalloc(priv->dma_buffer_size, GFP_KERNEL);
--
2.43.0
^ permalink raw reply related [flat|nested] 15+ messages in thread
* [PATCH v2 05/12] gpib: fmh_gpib: Unify *allocate_private
2026-01-15 19:20 [PATCH v2 00/12] gpib: Unify *allocate_private Dominik Karol Piątkowski
` (3 preceding siblings ...)
2026-01-15 19:20 ` [PATCH v2 04/12] gpib: eastwood: " Dominik Karol Piątkowski
@ 2026-01-15 19:20 ` Dominik Karol Piątkowski
2026-01-15 19:20 ` [PATCH v2 06/12] gpib: gpio: " Dominik Karol Piątkowski
` (6 subsequent siblings)
11 siblings, 0 replies; 15+ messages in thread
From: Dominik Karol Piątkowski @ 2026-01-15 19:20 UTC (permalink / raw)
To: Dave Penkler, Greg Kroah-Hartman, Michael Rubin, Dan Carpenter
Cc: linux-kernel, Dominik Karol Piątkowski
Return values for *allocate_private functions as well as calling code in
gpib driver are all over the place. Unify them by returning -errno if
something fails, zero otherwise. Use the returned value as early return
value in case of error. Replace kmalloc/memset pairs to kzalloc.
Signed-off-by: Dominik Karol Piątkowski <dominik.karol.piatkowski@protonmail.com>
---
v2: Replace kmalloc/memset pairs to kzalloc.
drivers/gpib/fmh_gpib/fmh_gpib.c | 3 +--
1 file changed, 1 insertion(+), 2 deletions(-)
diff --git a/drivers/gpib/fmh_gpib/fmh_gpib.c b/drivers/gpib/fmh_gpib/fmh_gpib.c
index f7bfb4a8e553..b8d955f124bd 100644
--- a/drivers/gpib/fmh_gpib/fmh_gpib.c
+++ b/drivers/gpib/fmh_gpib/fmh_gpib.c
@@ -1250,11 +1250,10 @@ static int fmh_gpib_allocate_private(struct gpib_board *board)
{
struct fmh_priv *priv;
- board->private_data = kmalloc(sizeof(struct fmh_priv), GFP_KERNEL);
+ board->private_data = kzalloc(sizeof(struct fmh_priv), GFP_KERNEL);
if (!board->private_data)
return -ENOMEM;
priv = board->private_data;
- memset(priv, 0, sizeof(struct fmh_priv));
init_nec7210_private(&priv->nec7210_priv);
priv->dma_buffer_size = 0x800;
priv->dma_buffer = kmalloc(priv->dma_buffer_size, GFP_KERNEL);
--
2.43.0
^ permalink raw reply related [flat|nested] 15+ messages in thread
* [PATCH v2 06/12] gpib: gpio: Unify *allocate_private
2026-01-15 19:20 [PATCH v2 00/12] gpib: Unify *allocate_private Dominik Karol Piątkowski
` (4 preceding siblings ...)
2026-01-15 19:20 ` [PATCH v2 05/12] gpib: fmh_gpib: " Dominik Karol Piątkowski
@ 2026-01-15 19:20 ` Dominik Karol Piątkowski
2026-01-15 19:20 ` [PATCH v2 07/12] gpib: hp_82335: " Dominik Karol Piątkowski
` (5 subsequent siblings)
11 siblings, 0 replies; 15+ messages in thread
From: Dominik Karol Piątkowski @ 2026-01-15 19:20 UTC (permalink / raw)
To: Dave Penkler, Greg Kroah-Hartman, Michael Rubin, Dan Carpenter
Cc: linux-kernel, Dominik Karol Piątkowski
Return values for *allocate_private functions as well as calling code in
gpib driver are all over the place. Unify them by returning -errno if
something fails, zero otherwise. Use the returned value as early return
value in case of error. Replace kmalloc/memset pairs to kzalloc.
Signed-off-by: Dominik Karol Piątkowski <dominik.karol.piatkowski@protonmail.com>
---
v2: Replace kmalloc/memset pairs to kzalloc.
drivers/gpib/gpio/gpib_bitbang.c | 9 +++++----
1 file changed, 5 insertions(+), 4 deletions(-)
diff --git a/drivers/gpib/gpio/gpib_bitbang.c b/drivers/gpib/gpio/gpib_bitbang.c
index 374cd61355e9..3b8bd34f2f3d 100644
--- a/drivers/gpib/gpio/gpib_bitbang.c
+++ b/drivers/gpib/gpio/gpib_bitbang.c
@@ -1068,7 +1068,7 @@ static int allocate_private(struct gpib_board *board)
{
board->private_data = kzalloc(sizeof(struct bb_priv), GFP_KERNEL);
if (!board->private_data)
- return -1;
+ return -ENOMEM;
return 0;
}
@@ -1205,14 +1205,15 @@ static void bb_detach(struct gpib_board *board)
static int bb_attach(struct gpib_board *board, const struct gpib_board_config *config)
{
struct bb_priv *priv;
- int retval = 0;
+ int retval;
dbg_printk(2, "%s\n", "Enter ...");
board->status = 0;
- if (allocate_private(board))
- return -ENOMEM;
+ retval = allocate_private(board);
+ if (retval < 0)
+ return retval;
priv = board->private_data;
priv->direction = -1;
priv->t1_delay = 2000;
--
2.43.0
^ permalink raw reply related [flat|nested] 15+ messages in thread
* [PATCH v2 07/12] gpib: hp_82335: Unify *allocate_private
2026-01-15 19:20 [PATCH v2 00/12] gpib: Unify *allocate_private Dominik Karol Piątkowski
` (5 preceding siblings ...)
2026-01-15 19:20 ` [PATCH v2 06/12] gpib: gpio: " Dominik Karol Piątkowski
@ 2026-01-15 19:20 ` Dominik Karol Piątkowski
2026-01-15 19:20 ` [PATCH v2 08/12] gpib: hp_82341: " Dominik Karol Piątkowski
` (4 subsequent siblings)
11 siblings, 0 replies; 15+ messages in thread
From: Dominik Karol Piątkowski @ 2026-01-15 19:20 UTC (permalink / raw)
To: Dave Penkler, Greg Kroah-Hartman, Michael Rubin, Dan Carpenter
Cc: linux-kernel, Dominik Karol Piątkowski
Return values for *allocate_private functions as well as calling code in
gpib driver are all over the place. Unify them by returning -errno if
something fails, zero otherwise. Use the returned value as early return
value in case of error. Replace kmalloc/memset pairs to kzalloc.
Signed-off-by: Dominik Karol Piątkowski <dominik.karol.piatkowski@protonmail.com>
---
v2: Replace kmalloc/memset pairs to kzalloc.
drivers/gpib/hp_82335/hp82335.c | 7 ++++---
1 file changed, 4 insertions(+), 3 deletions(-)
diff --git a/drivers/gpib/hp_82335/hp82335.c b/drivers/gpib/hp_82335/hp82335.c
index d0e47ef77c87..871079dd1088 100644
--- a/drivers/gpib/hp_82335/hp82335.c
+++ b/drivers/gpib/hp_82335/hp82335.c
@@ -212,7 +212,7 @@ static int hp82335_allocate_private(struct gpib_board *board)
{
board->private_data = kzalloc(sizeof(struct hp82335_priv), GFP_KERNEL);
if (!board->private_data)
- return -1;
+ return -ENOMEM;
return 0;
}
@@ -253,8 +253,9 @@ static int hp82335_attach(struct gpib_board *board, const struct gpib_board_conf
board->status = 0;
- if (hp82335_allocate_private(board))
- return -ENOMEM;
+ retval = hp82335_allocate_private(board);
+ if (retval < 0)
+ return retval;
hp_priv = board->private_data;
tms_priv = &hp_priv->tms9914_priv;
tms_priv->read_byte = hp82335_read_byte;
--
2.43.0
^ permalink raw reply related [flat|nested] 15+ messages in thread
* [PATCH v2 08/12] gpib: hp_82341: Unify *allocate_private
2026-01-15 19:20 [PATCH v2 00/12] gpib: Unify *allocate_private Dominik Karol Piątkowski
` (6 preceding siblings ...)
2026-01-15 19:20 ` [PATCH v2 07/12] gpib: hp_82335: " Dominik Karol Piątkowski
@ 2026-01-15 19:20 ` Dominik Karol Piątkowski
2026-01-15 19:20 ` [PATCH v2 09/12] gpib: ines: " Dominik Karol Piątkowski
` (3 subsequent siblings)
11 siblings, 0 replies; 15+ messages in thread
From: Dominik Karol Piątkowski @ 2026-01-15 19:20 UTC (permalink / raw)
To: Dave Penkler, Greg Kroah-Hartman, Michael Rubin, Dan Carpenter
Cc: linux-kernel, Dominik Karol Piątkowski
Return values for *allocate_private functions as well as calling code in
gpib driver are all over the place. Unify them by returning -errno if
something fails, zero otherwise. Use the returned value as early return
value in case of error. Replace kmalloc/memset pairs to kzalloc.
Signed-off-by: Dominik Karol Piątkowski <dominik.karol.piatkowski@protonmail.com>
---
v2: Replace kmalloc/memset pairs to kzalloc.
drivers/gpib/hp_82341/hp_82341.c | 5 +++--
1 file changed, 3 insertions(+), 2 deletions(-)
diff --git a/drivers/gpib/hp_82341/hp_82341.c b/drivers/gpib/hp_82341/hp_82341.c
index 1a2ad0560e14..4a2440fe160f 100644
--- a/drivers/gpib/hp_82341/hp_82341.c
+++ b/drivers/gpib/hp_82341/hp_82341.c
@@ -693,8 +693,9 @@ static int hp_82341_attach(struct gpib_board *board, const struct gpib_board_con
int retval;
board->status = 0;
- if (hp_82341_allocate_private(board))
- return -ENOMEM;
+ retval = hp_82341_allocate_private(board);
+ if (retval < 0)
+ return retval;
hp_priv = board->private_data;
tms_priv = &hp_priv->tms9914_priv;
tms_priv->read_byte = hp_82341_read_byte;
--
2.43.0
^ permalink raw reply related [flat|nested] 15+ messages in thread
* [PATCH v2 09/12] gpib: ines: Unify *allocate_private
2026-01-15 19:20 [PATCH v2 00/12] gpib: Unify *allocate_private Dominik Karol Piątkowski
` (7 preceding siblings ...)
2026-01-15 19:20 ` [PATCH v2 08/12] gpib: hp_82341: " Dominik Karol Piątkowski
@ 2026-01-15 19:20 ` Dominik Karol Piątkowski
2026-01-15 19:20 ` [PATCH v2 10/12] gpib: ni_usb: " Dominik Karol Piątkowski
` (2 subsequent siblings)
11 siblings, 0 replies; 15+ messages in thread
From: Dominik Karol Piątkowski @ 2026-01-15 19:20 UTC (permalink / raw)
To: Dave Penkler, Greg Kroah-Hartman, Michael Rubin, Dan Carpenter
Cc: linux-kernel, Dominik Karol Piątkowski
Return values for *allocate_private functions as well as calling code in
gpib driver are all over the place. Unify them by returning -errno if
something fails, zero otherwise. Use the returned value as early return
value in case of error. Replace kmalloc/memset pairs to kzalloc.
Signed-off-by: Dominik Karol Piątkowski <dominik.karol.piatkowski@protonmail.com>
---
v2: Replace kmalloc/memset pairs to kzalloc.
drivers/gpib/ines/ines_gpib.c | 11 ++++++-----
1 file changed, 6 insertions(+), 5 deletions(-)
diff --git a/drivers/gpib/ines/ines_gpib.c b/drivers/gpib/ines/ines_gpib.c
index a3cf846fd0f9..4a87c79f218b 100644
--- a/drivers/gpib/ines/ines_gpib.c
+++ b/drivers/gpib/ines/ines_gpib.c
@@ -657,11 +657,10 @@ static int ines_allocate_private(struct gpib_board *board)
{
struct ines_priv *priv;
- board->private_data = kmalloc(sizeof(struct ines_priv), GFP_KERNEL);
+ board->private_data = kzalloc(sizeof(struct ines_priv), GFP_KERNEL);
if (!board->private_data)
- return -1;
+ return -ENOMEM;
priv = board->private_data;
- memset(priv, 0, sizeof(struct ines_priv));
init_nec7210_private(&priv->nec7210_priv);
return 0;
}
@@ -676,11 +675,13 @@ static int ines_generic_attach(struct gpib_board *board)
{
struct ines_priv *ines_priv;
struct nec7210_priv *nec_priv;
+ int retval;
board->status = 0;
- if (ines_allocate_private(board))
- return -ENOMEM;
+ retval = ines_allocate_private(board);
+ if (retval < 0)
+ return retval;
ines_priv = board->private_data;
nec_priv = &ines_priv->nec7210_priv;
nec_priv->read_byte = nec7210_ioport_read_byte;
--
2.43.0
^ permalink raw reply related [flat|nested] 15+ messages in thread
* [PATCH v2 10/12] gpib: ni_usb: Unify *allocate_private
2026-01-15 19:20 [PATCH v2 00/12] gpib: Unify *allocate_private Dominik Karol Piątkowski
` (8 preceding siblings ...)
2026-01-15 19:20 ` [PATCH v2 09/12] gpib: ines: " Dominik Karol Piątkowski
@ 2026-01-15 19:20 ` Dominik Karol Piątkowski
2026-01-15 19:21 ` [PATCH v2 11/12] gpib: pc2: " Dominik Karol Piątkowski
2026-01-15 19:21 ` [PATCH v2 12/12] gpib: tnt4882: " Dominik Karol Piątkowski
11 siblings, 0 replies; 15+ messages in thread
From: Dominik Karol Piątkowski @ 2026-01-15 19:20 UTC (permalink / raw)
To: Dave Penkler, Greg Kroah-Hartman, Michael Rubin, Dan Carpenter
Cc: linux-kernel, Dominik Karol Piątkowski
Return values for *allocate_private functions as well as calling code in
gpib driver are all over the place. Unify them by returning -errno if
something fails, zero otherwise. Use the returned value as early return
value in case of error. Replace kmalloc/memset pairs to kzalloc.
Signed-off-by: Dominik Karol Piątkowski <dominik.karol.piatkowski@protonmail.com>
---
v2: Replace kmalloc/memset pairs to kzalloc.
drivers/gpib/ni_usb/ni_usb_gpib.c | 3 +--
1 file changed, 1 insertion(+), 2 deletions(-)
diff --git a/drivers/gpib/ni_usb/ni_usb_gpib.c b/drivers/gpib/ni_usb/ni_usb_gpib.c
index 1f8412de9fa3..1fc3ccdebff1 100644
--- a/drivers/gpib/ni_usb/ni_usb_gpib.c
+++ b/drivers/gpib/ni_usb/ni_usb_gpib.c
@@ -1659,11 +1659,10 @@ static int ni_usb_allocate_private(struct gpib_board *board)
{
struct ni_usb_priv *ni_priv;
- board->private_data = kmalloc(sizeof(struct ni_usb_priv), GFP_KERNEL);
+ board->private_data = kzalloc(sizeof(struct ni_usb_priv), GFP_KERNEL);
if (!board->private_data)
return -ENOMEM;
ni_priv = board->private_data;
- memset(ni_priv, 0, sizeof(struct ni_usb_priv));
mutex_init(&ni_priv->bulk_transfer_lock);
mutex_init(&ni_priv->control_transfer_lock);
mutex_init(&ni_priv->interrupt_transfer_lock);
--
2.43.0
^ permalink raw reply related [flat|nested] 15+ messages in thread
* [PATCH v2 11/12] gpib: pc2: Unify *allocate_private
2026-01-15 19:20 [PATCH v2 00/12] gpib: Unify *allocate_private Dominik Karol Piątkowski
` (9 preceding siblings ...)
2026-01-15 19:20 ` [PATCH v2 10/12] gpib: ni_usb: " Dominik Karol Piątkowski
@ 2026-01-15 19:21 ` Dominik Karol Piątkowski
2026-01-15 19:21 ` [PATCH v2 12/12] gpib: tnt4882: " Dominik Karol Piątkowski
11 siblings, 0 replies; 15+ messages in thread
From: Dominik Karol Piątkowski @ 2026-01-15 19:21 UTC (permalink / raw)
To: Dave Penkler, Greg Kroah-Hartman, Michael Rubin, Dan Carpenter
Cc: linux-kernel, Dominik Karol Piątkowski
Return values for *allocate_private functions as well as calling code in
gpib driver are all over the place. Unify them by returning -errno if
something fails, zero otherwise. Use the returned value as early return
value in case of error. Replace kmalloc/memset pairs to kzalloc.
Signed-off-by: Dominik Karol Piątkowski <dominik.karol.piatkowski@protonmail.com>
---
v2: Replace kmalloc/memset pairs to kzalloc.
drivers/gpib/pc2/pc2_gpib.c | 11 ++++++-----
1 file changed, 6 insertions(+), 5 deletions(-)
diff --git a/drivers/gpib/pc2/pc2_gpib.c b/drivers/gpib/pc2/pc2_gpib.c
index 9f3943d1df66..11ba9ee1b6f8 100644
--- a/drivers/gpib/pc2/pc2_gpib.c
+++ b/drivers/gpib/pc2/pc2_gpib.c
@@ -237,11 +237,10 @@ static int allocate_private(struct gpib_board *board)
{
struct pc2_priv *priv;
- board->private_data = kmalloc(sizeof(struct pc2_priv), GFP_KERNEL);
+ board->private_data = kzalloc(sizeof(struct pc2_priv), GFP_KERNEL);
if (!board->private_data)
- return -1;
+ return -ENOMEM;
priv = board->private_data;
- memset(priv, 0, sizeof(struct pc2_priv));
init_nec7210_private(&priv->nec7210_priv);
return 0;
}
@@ -257,10 +256,12 @@ static int pc2_generic_attach(struct gpib_board *board, const struct gpib_board_
{
struct pc2_priv *pc2_priv;
struct nec7210_priv *nec_priv;
+ int retval;
board->status = 0;
- if (allocate_private(board))
- return -ENOMEM;
+ retval = allocate_private(board);
+ if (retval < 0)
+ return retval;
pc2_priv = board->private_data;
nec_priv = &pc2_priv->nec7210_priv;
nec_priv->read_byte = nec7210_ioport_read_byte;
--
2.43.0
^ permalink raw reply related [flat|nested] 15+ messages in thread
* [PATCH v2 12/12] gpib: tnt4882: Unify *allocate_private
2026-01-15 19:20 [PATCH v2 00/12] gpib: Unify *allocate_private Dominik Karol Piątkowski
` (10 preceding siblings ...)
2026-01-15 19:21 ` [PATCH v2 11/12] gpib: pc2: " Dominik Karol Piątkowski
@ 2026-01-15 19:21 ` Dominik Karol Piątkowski
11 siblings, 0 replies; 15+ messages in thread
From: Dominik Karol Piątkowski @ 2026-01-15 19:21 UTC (permalink / raw)
To: Dave Penkler, Greg Kroah-Hartman, Michael Rubin, Dan Carpenter
Cc: linux-kernel, Dominik Karol Piątkowski
Return values for *allocate_private functions as well as calling code in
gpib driver are all over the place. Unify them by returning -errno if
something fails, zero otherwise. Use the returned value as early return
value in case of error. Replace kmalloc/memset pairs to kzalloc.
Signed-off-by: Dominik Karol Piątkowski <dominik.karol.piatkowski@protonmail.com>
---
v2: Replace kmalloc/memset pairs to kzalloc.
drivers/gpib/tnt4882/tnt4882_gpib.c | 20 +++++++++++---------
1 file changed, 11 insertions(+), 9 deletions(-)
diff --git a/drivers/gpib/tnt4882/tnt4882_gpib.c b/drivers/gpib/tnt4882/tnt4882_gpib.c
index c03a976b7380..e7e91ba17c2d 100644
--- a/drivers/gpib/tnt4882/tnt4882_gpib.c
+++ b/drivers/gpib/tnt4882/tnt4882_gpib.c
@@ -843,11 +843,10 @@ static int tnt4882_allocate_private(struct gpib_board *board)
{
struct tnt4882_priv *tnt_priv;
- board->private_data = kmalloc(sizeof(struct tnt4882_priv), GFP_KERNEL);
+ board->private_data = kzalloc(sizeof(struct tnt4882_priv), GFP_KERNEL);
if (!board->private_data)
- return -1;
+ return -ENOMEM;
tnt_priv = board->private_data;
- memset(tnt_priv, 0, sizeof(struct tnt4882_priv));
init_nec7210_private(&tnt_priv->nec7210_priv);
return 0;
}
@@ -916,8 +915,9 @@ static int ni_pci_attach(struct gpib_board *board, const struct gpib_board_confi
board->status = 0;
- if (tnt4882_allocate_private(board))
- return -ENOMEM;
+ retval = tnt4882_allocate_private(board);
+ if (retval < 0)
+ return retval;
tnt_priv = board->private_data;
nec_priv = &tnt_priv->nec7210_priv;
nec_priv->type = TNT4882;
@@ -1039,8 +1039,9 @@ static int ni_isa_attach_common(struct gpib_board *board, const struct gpib_boar
board->status = 0;
- if (tnt4882_allocate_private(board))
- return -ENOMEM;
+ retval = tnt4882_allocate_private(board);
+ if (retval < 0)
+ return retval;
tnt_priv = board->private_data;
nec_priv = &tnt_priv->nec7210_priv;
nec_priv->type = chipset;
@@ -1725,8 +1726,9 @@ static int ni_pcmcia_attach(struct gpib_board *board, const struct gpib_board_co
board->status = 0;
- if (tnt4882_allocate_private(board))
- return -ENOMEM;
+ retval = tnt4882_allocate_private(board);
+ if (retval < 0)
+ return retval;
tnt_priv = board->private_data;
nec_priv = &tnt_priv->nec7210_priv;
--
2.43.0
^ permalink raw reply related [flat|nested] 15+ messages in thread
* Re: [PATCH v2 01/12] gpib: agilent_82350b: Unify *allocate_private
2026-01-15 19:20 ` [PATCH v2 01/12] gpib: agilent_82350b: " Dominik Karol Piątkowski
@ 2026-01-16 7:34 ` Greg Kroah-Hartman
2026-01-16 7:35 ` Greg Kroah-Hartman
1 sibling, 0 replies; 15+ messages in thread
From: Greg Kroah-Hartman @ 2026-01-16 7:34 UTC (permalink / raw)
To: Dominik Karol Piątkowski
Cc: Dave Penkler, Michael Rubin, Dan Carpenter, linux-kernel
On Thu, Jan 15, 2026 at 07:20:04PM +0000, Dominik Karol Piątkowski wrote:
> Return values for *allocate_private functions as well as calling code in
> gpib driver are all over the place. Unify them by returning -errno if
> something fails, zero otherwise. Use the returned value as early return
> value in case of error. Replace kmalloc/memset pairs to kzalloc.
This is multiple things in the same patch, which is not a good idea.
Each change should just do one logical thing, this should be broken up
into much smaller pieces.
thanks,
greg k-h
^ permalink raw reply [flat|nested] 15+ messages in thread
* Re: [PATCH v2 01/12] gpib: agilent_82350b: Unify *allocate_private
2026-01-15 19:20 ` [PATCH v2 01/12] gpib: agilent_82350b: " Dominik Karol Piątkowski
2026-01-16 7:34 ` Greg Kroah-Hartman
@ 2026-01-16 7:35 ` Greg Kroah-Hartman
1 sibling, 0 replies; 15+ messages in thread
From: Greg Kroah-Hartman @ 2026-01-16 7:35 UTC (permalink / raw)
To: Dominik Karol Piątkowski
Cc: Dave Penkler, Michael Rubin, Dan Carpenter, linux-kernel
On Thu, Jan 15, 2026 at 07:20:04PM +0000, Dominik Karol Piątkowski wrote:
> Return values for *allocate_private functions as well as calling code in
> gpib driver are all over the place. Unify them by returning -errno if
> something fails, zero otherwise. Use the returned value as early return
> value in case of error. Replace kmalloc/memset pairs to kzalloc.
Wait, there is no kzalloc change here. You used the same changelog for
all of these patches :(
^ permalink raw reply [flat|nested] 15+ messages in thread
end of thread, other threads:[~2026-01-16 7:35 UTC | newest]
Thread overview: 15+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2026-01-15 19:20 [PATCH v2 00/12] gpib: Unify *allocate_private Dominik Karol Piątkowski
2026-01-15 19:20 ` [PATCH v2 01/12] gpib: agilent_82350b: " Dominik Karol Piątkowski
2026-01-16 7:34 ` Greg Kroah-Hartman
2026-01-16 7:35 ` Greg Kroah-Hartman
2026-01-15 19:20 ` [PATCH v2 02/12] gpib: cb7210: " Dominik Karol Piątkowski
2026-01-15 19:20 ` [PATCH v2 03/12] gpib: cec: " Dominik Karol Piątkowski
2026-01-15 19:20 ` [PATCH v2 04/12] gpib: eastwood: " Dominik Karol Piątkowski
2026-01-15 19:20 ` [PATCH v2 05/12] gpib: fmh_gpib: " Dominik Karol Piątkowski
2026-01-15 19:20 ` [PATCH v2 06/12] gpib: gpio: " Dominik Karol Piątkowski
2026-01-15 19:20 ` [PATCH v2 07/12] gpib: hp_82335: " Dominik Karol Piątkowski
2026-01-15 19:20 ` [PATCH v2 08/12] gpib: hp_82341: " Dominik Karol Piątkowski
2026-01-15 19:20 ` [PATCH v2 09/12] gpib: ines: " Dominik Karol Piątkowski
2026-01-15 19:20 ` [PATCH v2 10/12] gpib: ni_usb: " Dominik Karol Piątkowski
2026-01-15 19:21 ` [PATCH v2 11/12] gpib: pc2: " Dominik Karol Piątkowski
2026-01-15 19:21 ` [PATCH v2 12/12] gpib: tnt4882: " Dominik Karol Piątkowski
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox