linux-arm-kernel.lists.infradead.org archive mirror
 help / color / mirror / Atom feed
* [PATCH 0/6] ARM-S3C24xx: Adjustments for four function implementations
@ 2017-10-02 17:56 SF Markus Elfring
  2017-10-02 17:58 ` [PATCH 1/6] ARM: s3c24xx: Delete an error message for a failed memory allocation in s3c2410_iotiming_get() SF Markus Elfring
                   ` (5 more replies)
  0 siblings, 6 replies; 14+ messages in thread
From: SF Markus Elfring @ 2017-10-02 17:56 UTC (permalink / raw)
  To: linux-arm-kernel

From: Markus Elfring <elfring@users.sourceforge.net>
Date: Mon, 2 Oct 2017 19:50:05 +0200

A few update suggestions were taken into account
from static source code analysis.

Markus Elfring (6):
  Delete an error message for a failed memory allocation in s3c2410_iotiming_get()
  Improve a size determination in s3c2410_iotiming_get()
  s3c2410: Fix a typo in a comment line
  Delete an error message for a failed memory allocation in s3c2412_iotiming_get()
  Improve a size determination in s3c2412_iotiming_get()
  s3c2412: Fix a typo in a comment line

 arch/arm/mach-s3c24xx/iotiming-s3c2410.c | 8 +++-----
 arch/arm/mach-s3c24xx/iotiming-s3c2412.c | 8 +++-----
 2 files changed, 6 insertions(+), 10 deletions(-)

-- 
2.14.2

^ permalink raw reply	[flat|nested] 14+ messages in thread

* [PATCH 1/6] ARM: s3c24xx: Delete an error message for a failed memory allocation in s3c2410_iotiming_get()
  2017-10-02 17:56 [PATCH 0/6] ARM-S3C24xx: Adjustments for four function implementations SF Markus Elfring
@ 2017-10-02 17:58 ` SF Markus Elfring
  2017-10-04 17:59   ` Krzysztof Kozlowski
  2017-10-02 17:59 ` [PATCH 2/6] ARM: s3c24xx: Improve a size determination " SF Markus Elfring
                   ` (4 subsequent siblings)
  5 siblings, 1 reply; 14+ messages in thread
From: SF Markus Elfring @ 2017-10-02 17:58 UTC (permalink / raw)
  To: linux-arm-kernel

From: Markus Elfring <elfring@users.sourceforge.net>
Date: Mon, 2 Oct 2017 19:14:20 +0200

Omit an extra message for a memory allocation failure in this function.

This issue was detected by using the Coccinelle software.

Signed-off-by: Markus Elfring <elfring@users.sourceforge.net>
---
 arch/arm/mach-s3c24xx/iotiming-s3c2410.c | 4 +---
 1 file changed, 1 insertion(+), 3 deletions(-)

diff --git a/arch/arm/mach-s3c24xx/iotiming-s3c2410.c b/arch/arm/mach-s3c24xx/iotiming-s3c2410.c
index b7970f1fa3d5..f587c78fba33 100644
--- a/arch/arm/mach-s3c24xx/iotiming-s3c2410.c
+++ b/arch/arm/mach-s3c24xx/iotiming-s3c2410.c
@@ -454,10 +454,8 @@ int s3c2410_iotiming_get(struct s3c_cpufreq_config *cfg,
 			       __func__, bank, bankcon);
 
 		bt = kzalloc(sizeof(struct s3c2410_iobank_timing), GFP_KERNEL);
-		if (!bt) {
-			printk(KERN_ERR "%s: no memory for bank\n", __func__);
+		if (!bt)
 			return -ENOMEM;
-		}
 
 		/* find out in nWait is enabled for bank. */
 
-- 
2.14.2

^ permalink raw reply related	[flat|nested] 14+ messages in thread

* [PATCH 2/6] ARM: s3c24xx: Improve a size determination in s3c2410_iotiming_get()
  2017-10-02 17:56 [PATCH 0/6] ARM-S3C24xx: Adjustments for four function implementations SF Markus Elfring
  2017-10-02 17:58 ` [PATCH 1/6] ARM: s3c24xx: Delete an error message for a failed memory allocation in s3c2410_iotiming_get() SF Markus Elfring
@ 2017-10-02 17:59 ` SF Markus Elfring
  2017-10-04 18:12   ` Krzysztof Kozlowski
  2017-10-02 18:00 ` [PATCH 3/6] ARM: s3c2410: Fix a typo in a comment line SF Markus Elfring
                   ` (3 subsequent siblings)
  5 siblings, 1 reply; 14+ messages in thread
From: SF Markus Elfring @ 2017-10-02 17:59 UTC (permalink / raw)
  To: linux-arm-kernel

From: Markus Elfring <elfring@users.sourceforge.net>
Date: Mon, 2 Oct 2017 19:16:58 +0200

Replace the specification of a data structure by a pointer dereference
as the parameter for the operator "sizeof" to make the corresponding size
determination a bit safer according to the Linux coding style convention.

This issue was detected by using the Coccinelle software.

Signed-off-by: Markus Elfring <elfring@users.sourceforge.net>
---
 arch/arm/mach-s3c24xx/iotiming-s3c2410.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/arch/arm/mach-s3c24xx/iotiming-s3c2410.c b/arch/arm/mach-s3c24xx/iotiming-s3c2410.c
index f587c78fba33..c18769b5f15a 100644
--- a/arch/arm/mach-s3c24xx/iotiming-s3c2410.c
+++ b/arch/arm/mach-s3c24xx/iotiming-s3c2410.c
@@ -453,7 +453,7 @@ int s3c2410_iotiming_get(struct s3c_cpufreq_config *cfg,
 		s3c_freq_iodbg("%s: bank %d: con %08lx\n",
 			       __func__, bank, bankcon);
 
-		bt = kzalloc(sizeof(struct s3c2410_iobank_timing), GFP_KERNEL);
+		bt = kzalloc(sizeof(*bt), GFP_KERNEL);
 		if (!bt)
 			return -ENOMEM;
 
-- 
2.14.2

^ permalink raw reply related	[flat|nested] 14+ messages in thread

* [PATCH 3/6] ARM: s3c2410: Fix a typo in a comment line
  2017-10-02 17:56 [PATCH 0/6] ARM-S3C24xx: Adjustments for four function implementations SF Markus Elfring
  2017-10-02 17:58 ` [PATCH 1/6] ARM: s3c24xx: Delete an error message for a failed memory allocation in s3c2410_iotiming_get() SF Markus Elfring
  2017-10-02 17:59 ` [PATCH 2/6] ARM: s3c24xx: Improve a size determination " SF Markus Elfring
@ 2017-10-02 18:00 ` SF Markus Elfring
  2017-10-04 18:14   ` Krzysztof Kozlowski
  2017-10-02 18:01 ` [PATCH 4/6] ARM: s3c24xx: Delete an error message for a failed memory allocation in s3c2412_iotiming_get() SF Markus Elfring
                   ` (2 subsequent siblings)
  5 siblings, 1 reply; 14+ messages in thread
From: SF Markus Elfring @ 2017-10-02 18:00 UTC (permalink / raw)
  To: linux-arm-kernel

From: Markus Elfring <elfring@users.sourceforge.net>
Date: Mon, 2 Oct 2017 19:34:36 +0200

Adjust a word in this function description.

Signed-off-by: Markus Elfring <elfring@users.sourceforge.net>
---
 arch/arm/mach-s3c24xx/iotiming-s3c2410.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/arch/arm/mach-s3c24xx/iotiming-s3c2410.c b/arch/arm/mach-s3c24xx/iotiming-s3c2410.c
index c18769b5f15a..d5f1f06e4811 100644
--- a/arch/arm/mach-s3c24xx/iotiming-s3c2410.c
+++ b/arch/arm/mach-s3c24xx/iotiming-s3c2410.c
@@ -206,7 +206,7 @@ static int calc_tacc(unsigned int cyc, int nwait_en,
 }
 
 /**
- * s3c2410_calc_bank - calculate bank timing infromation
+ * s3c2410_calc_bank - calculate bank timing information
  * @cfg: The configuration we need to calculate for.
  * @bt: The bank timing information.
  *
-- 
2.14.2

^ permalink raw reply related	[flat|nested] 14+ messages in thread

* [PATCH 4/6] ARM: s3c24xx: Delete an error message for a failed memory allocation in s3c2412_iotiming_get()
  2017-10-02 17:56 [PATCH 0/6] ARM-S3C24xx: Adjustments for four function implementations SF Markus Elfring
                   ` (2 preceding siblings ...)
  2017-10-02 18:00 ` [PATCH 3/6] ARM: s3c2410: Fix a typo in a comment line SF Markus Elfring
@ 2017-10-02 18:01 ` SF Markus Elfring
  2017-10-04 18:03   ` Krzysztof Kozlowski
  2017-10-02 18:03 ` [PATCH 5/6] ARM: s3c24xx: Improve a size determination " SF Markus Elfring
  2017-10-02 18:04 ` [PATCH 6/6] ARM: s3c2412: Fix a typo in a comment line SF Markus Elfring
  5 siblings, 1 reply; 14+ messages in thread
From: SF Markus Elfring @ 2017-10-02 18:01 UTC (permalink / raw)
  To: linux-arm-kernel

From: Markus Elfring <elfring@users.sourceforge.net>
Date: Mon, 2 Oct 2017 19:37:07 +0200

Omit an extra message for a memory allocation failure in this function.

This issue was detected by using the Coccinelle software.

Signed-off-by: Markus Elfring <elfring@users.sourceforge.net>
---
 arch/arm/mach-s3c24xx/iotiming-s3c2412.c | 4 +---
 1 file changed, 1 insertion(+), 3 deletions(-)

diff --git a/arch/arm/mach-s3c24xx/iotiming-s3c2412.c b/arch/arm/mach-s3c24xx/iotiming-s3c2412.c
index 28b13951de87..f09d5d5ea7ed 100644
--- a/arch/arm/mach-s3c24xx/iotiming-s3c2412.c
+++ b/arch/arm/mach-s3c24xx/iotiming-s3c2412.c
@@ -243,10 +243,8 @@ int s3c2412_iotiming_get(struct s3c_cpufreq_config *cfg,
 			continue;
 
 		bt = kzalloc(sizeof(struct s3c2412_iobank_timing), GFP_KERNEL);
-		if (!bt) {
-			printk(KERN_ERR "%s: no memory for bank\n", __func__);
+		if (!bt)
 			return -ENOMEM;
-		}
 
 		timings->bank[bank].io_2412 = bt;
 		s3c2412_iotiming_getbank(cfg, bt, bank);
-- 
2.14.2

^ permalink raw reply related	[flat|nested] 14+ messages in thread

* [PATCH 5/6] ARM: s3c24xx: Improve a size determination in s3c2412_iotiming_get()
  2017-10-02 17:56 [PATCH 0/6] ARM-S3C24xx: Adjustments for four function implementations SF Markus Elfring
                   ` (3 preceding siblings ...)
  2017-10-02 18:01 ` [PATCH 4/6] ARM: s3c24xx: Delete an error message for a failed memory allocation in s3c2412_iotiming_get() SF Markus Elfring
@ 2017-10-02 18:03 ` SF Markus Elfring
  2017-10-02 18:04 ` [PATCH 6/6] ARM: s3c2412: Fix a typo in a comment line SF Markus Elfring
  5 siblings, 0 replies; 14+ messages in thread
From: SF Markus Elfring @ 2017-10-02 18:03 UTC (permalink / raw)
  To: linux-arm-kernel

From: Markus Elfring <elfring@users.sourceforge.net>
Date: Mon, 2 Oct 2017 19:38:42 +0200

Replace the specification of a data structure by a pointer dereference
as the parameter for the operator "sizeof" to make the corresponding size
determination a bit safer according to the Linux coding style convention.

This issue was detected by using the Coccinelle software.

Signed-off-by: Markus Elfring <elfring@users.sourceforge.net>
---
 arch/arm/mach-s3c24xx/iotiming-s3c2412.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/arch/arm/mach-s3c24xx/iotiming-s3c2412.c b/arch/arm/mach-s3c24xx/iotiming-s3c2412.c
index f09d5d5ea7ed..01bcd7d5dac7 100644
--- a/arch/arm/mach-s3c24xx/iotiming-s3c2412.c
+++ b/arch/arm/mach-s3c24xx/iotiming-s3c2412.c
@@ -242,7 +242,7 @@ int s3c2412_iotiming_get(struct s3c_cpufreq_config *cfg,
 		if (!bank_is_io(bank, bankcfg))
 			continue;
 
-		bt = kzalloc(sizeof(struct s3c2412_iobank_timing), GFP_KERNEL);
+		bt = kzalloc(sizeof(*bt), GFP_KERNEL);
 		if (!bt)
 			return -ENOMEM;
 
-- 
2.14.2

^ permalink raw reply related	[flat|nested] 14+ messages in thread

* [PATCH 6/6] ARM: s3c2412: Fix a typo in a comment line
  2017-10-02 17:56 [PATCH 0/6] ARM-S3C24xx: Adjustments for four function implementations SF Markus Elfring
                   ` (4 preceding siblings ...)
  2017-10-02 18:03 ` [PATCH 5/6] ARM: s3c24xx: Improve a size determination " SF Markus Elfring
@ 2017-10-02 18:04 ` SF Markus Elfring
  5 siblings, 0 replies; 14+ messages in thread
From: SF Markus Elfring @ 2017-10-02 18:04 UTC (permalink / raw)
  To: linux-arm-kernel

From: Markus Elfring <elfring@users.sourceforge.net>
Date: Mon, 2 Oct 2017 19:41:10 +0200

Adjust a word in this function description.

Signed-off-by: Markus Elfring <elfring@users.sourceforge.net>
---
 arch/arm/mach-s3c24xx/iotiming-s3c2412.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/arch/arm/mach-s3c24xx/iotiming-s3c2412.c b/arch/arm/mach-s3c24xx/iotiming-s3c2412.c
index 01bcd7d5dac7..c5b12f6b02b5 100644
--- a/arch/arm/mach-s3c24xx/iotiming-s3c2412.c
+++ b/arch/arm/mach-s3c24xx/iotiming-s3c2412.c
@@ -35,7 +35,7 @@
 #define print_ns(x) ((x) / 10), ((x) % 10)
 
 /**
- * s3c2412_print_timing - print timing infromation via printk.
+ * s3c2412_print_timing - print timing information via printk.
  * @pfx: The prefix to print each line with.
  * @iot: The IO timing information
  */
-- 
2.14.2

^ permalink raw reply related	[flat|nested] 14+ messages in thread

* [PATCH 1/6] ARM: s3c24xx: Delete an error message for a failed memory allocation in s3c2410_iotiming_get()
  2017-10-02 17:58 ` [PATCH 1/6] ARM: s3c24xx: Delete an error message for a failed memory allocation in s3c2410_iotiming_get() SF Markus Elfring
@ 2017-10-04 17:59   ` Krzysztof Kozlowski
  0 siblings, 0 replies; 14+ messages in thread
From: Krzysztof Kozlowski @ 2017-10-04 17:59 UTC (permalink / raw)
  To: linux-arm-kernel

On Mon, Oct 02, 2017 at 07:58:02PM +0200, SF Markus Elfring wrote:
> From: Markus Elfring <elfring@users.sourceforge.net>
> Date: Mon, 2 Oct 2017 19:14:20 +0200
> 
> Omit an extra message for a memory allocation failure in this function.
> 
> This issue was detected by using the Coccinelle software.
> 
> Signed-off-by: Markus Elfring <elfring@users.sourceforge.net>
> ---
>  arch/arm/mach-s3c24xx/iotiming-s3c2410.c | 4 +---
>  1 file changed, 1 insertion(+), 3 deletions(-)
> 

Thanks, applied.

Best regards,
Krzysztof

^ permalink raw reply	[flat|nested] 14+ messages in thread

* [PATCH 4/6] ARM: s3c24xx: Delete an error message for a failed memory allocation in s3c2412_iotiming_get()
  2017-10-02 18:01 ` [PATCH 4/6] ARM: s3c24xx: Delete an error message for a failed memory allocation in s3c2412_iotiming_get() SF Markus Elfring
@ 2017-10-04 18:03   ` Krzysztof Kozlowski
  0 siblings, 0 replies; 14+ messages in thread
From: Krzysztof Kozlowski @ 2017-10-04 18:03 UTC (permalink / raw)
  To: linux-arm-kernel

On Mon, Oct 02, 2017 at 08:01:28PM +0200, SF Markus Elfring wrote:
> From: Markus Elfring <elfring@users.sourceforge.net>
> Date: Mon, 2 Oct 2017 19:37:07 +0200
> 
> Omit an extra message for a memory allocation failure in this function.
> 
> This issue was detected by using the Coccinelle software.
> 
> Signed-off-by: Markus Elfring <elfring@users.sourceforge.net>
> ---
>  arch/arm/mach-s3c24xx/iotiming-s3c2412.c | 4 +---
>  1 file changed, 1 insertion(+), 3 deletions(-)
> 

Thanks, applied, squashed with 1/6.

Best regards,
Krzysztof

^ permalink raw reply	[flat|nested] 14+ messages in thread

* [PATCH 2/6] ARM: s3c24xx: Improve a size determination in s3c2410_iotiming_get()
  2017-10-02 17:59 ` [PATCH 2/6] ARM: s3c24xx: Improve a size determination " SF Markus Elfring
@ 2017-10-04 18:12   ` Krzysztof Kozlowski
  0 siblings, 0 replies; 14+ messages in thread
From: Krzysztof Kozlowski @ 2017-10-04 18:12 UTC (permalink / raw)
  To: linux-arm-kernel

On Mon, Oct 02, 2017 at 07:59:19PM +0200, SF Markus Elfring wrote:
> From: Markus Elfring <elfring@users.sourceforge.net>
> Date: Mon, 2 Oct 2017 19:16:58 +0200
> 
> Replace the specification of a data structure by a pointer dereference
> as the parameter for the operator "sizeof" to make the corresponding size
> determination a bit safer according to the Linux coding style convention.
> 
> This issue was detected by using the Coccinelle software.
> 
> Signed-off-by: Markus Elfring <elfring@users.sourceforge.net>
> ---
>  arch/arm/mach-s3c24xx/iotiming-s3c2410.c | 2 +-
>  1 file changed, 1 insertion(+), 1 deletion(-)
> 

Thanks, applied, squashed with 5/6 and changed commit message as I had
troubles with understanding this one. Try to use simple sentences...

Best regards,
Krzysztof

^ permalink raw reply	[flat|nested] 14+ messages in thread

* [PATCH 3/6] ARM: s3c2410: Fix a typo in a comment line
  2017-10-02 18:00 ` [PATCH 3/6] ARM: s3c2410: Fix a typo in a comment line SF Markus Elfring
@ 2017-10-04 18:14   ` Krzysztof Kozlowski
  2017-10-10  8:29     ` SF Markus Elfring
  0 siblings, 1 reply; 14+ messages in thread
From: Krzysztof Kozlowski @ 2017-10-04 18:14 UTC (permalink / raw)
  To: linux-arm-kernel

On Mon, Oct 02, 2017 at 08:00:27PM +0200, SF Markus Elfring wrote:
> From: Markus Elfring <elfring@users.sourceforge.net>
> Date: Mon, 2 Oct 2017 19:34:36 +0200
> 
> Adjust a word in this function description.
> 
> Signed-off-by: Markus Elfring <elfring@users.sourceforge.net>
> ---
>  arch/arm/mach-s3c24xx/iotiming-s3c2410.c | 2 +-
>  1 file changed, 1 insertion(+), 1 deletion(-)
> 

Thanks, applied, squashed and changed commit msg.

Best regards,
Krzysztof

^ permalink raw reply	[flat|nested] 14+ messages in thread

* ARM: s3c2410: Fix a typo in a comment line
  2017-10-04 18:14   ` Krzysztof Kozlowski
@ 2017-10-10  8:29     ` SF Markus Elfring
  2017-10-10  8:35       ` Krzysztof Kozlowski
  0 siblings, 1 reply; 14+ messages in thread
From: SF Markus Elfring @ 2017-10-10  8:29 UTC (permalink / raw)
  To: linux-arm-kernel

> Thanks, applied, squashed and changed commit msg.

Would it be more appropriate to use a commit subject like
?ARM: s3c241x: Fix typos in two comments? (instead of
?ARM: s3c2410: Fix typos in a comments?)?
https://git.kernel.org/pub/scm/linux/kernel/git/next/linux-next.git/commit/?id=6c7a7db2e4c25acf8bd8086797d39a51728139e0

Regards,
Markus

^ permalink raw reply	[flat|nested] 14+ messages in thread

* ARM: s3c2410: Fix a typo in a comment line
  2017-10-10  8:29     ` SF Markus Elfring
@ 2017-10-10  8:35       ` Krzysztof Kozlowski
  2017-10-10  8:48         ` SF Markus Elfring
  0 siblings, 1 reply; 14+ messages in thread
From: Krzysztof Kozlowski @ 2017-10-10  8:35 UTC (permalink / raw)
  To: linux-arm-kernel

On Tue, Oct 10, 2017 at 10:29 AM, SF Markus Elfring
<elfring@users.sourceforge.net> wrote:
>> Thanks, applied, squashed and changed commit msg.
>
> Would it be more appropriate to use a commit subject like
> ?ARM: s3c241x: Fix typos in two comments? (instead of
> ?ARM: s3c2410: Fix typos in a comments?)?
> https://git.kernel.org/pub/scm/linux/kernel/git/next/linux-next.git/commit/?id=6c7a7db2e4c25acf8bd8086797d39a51728139e0

Yes, it would but patch is already applied and I prefer to avoid
rebasing unless really necessary.

Best regards,
Krzysztof

^ permalink raw reply	[flat|nested] 14+ messages in thread

* ARM: s3c2410: Fix a typo in a comment line
  2017-10-10  8:35       ` Krzysztof Kozlowski
@ 2017-10-10  8:48         ` SF Markus Elfring
  0 siblings, 0 replies; 14+ messages in thread
From: SF Markus Elfring @ 2017-10-10  8:48 UTC (permalink / raw)
  To: linux-arm-kernel

>>> Thanks, applied, squashed and changed commit msg.
>>
>> Would it be more appropriate to use a commit subject like
>> ?ARM: s3c241x: Fix typos in two comments? (instead of
>> ?ARM: s3c2410: Fix typos in a comments?)?
>> https://git.kernel.org/pub/scm/linux/kernel/git/next/linux-next.git/commit/?id=6c7a7db2e4c25acf8bd8086797d39a51728139e0
> 
> Yes, it would but patch is already applied and I prefer to avoid
> rebasing unless really necessary.

I would appreciate also a corresponding correct commit message.
Is it interesting that this change attempt seems to have caused another unwanted typo?

Regards,
Markus

^ permalink raw reply	[flat|nested] 14+ messages in thread

end of thread, other threads:[~2017-10-10  8:48 UTC | newest]

Thread overview: 14+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2017-10-02 17:56 [PATCH 0/6] ARM-S3C24xx: Adjustments for four function implementations SF Markus Elfring
2017-10-02 17:58 ` [PATCH 1/6] ARM: s3c24xx: Delete an error message for a failed memory allocation in s3c2410_iotiming_get() SF Markus Elfring
2017-10-04 17:59   ` Krzysztof Kozlowski
2017-10-02 17:59 ` [PATCH 2/6] ARM: s3c24xx: Improve a size determination " SF Markus Elfring
2017-10-04 18:12   ` Krzysztof Kozlowski
2017-10-02 18:00 ` [PATCH 3/6] ARM: s3c2410: Fix a typo in a comment line SF Markus Elfring
2017-10-04 18:14   ` Krzysztof Kozlowski
2017-10-10  8:29     ` SF Markus Elfring
2017-10-10  8:35       ` Krzysztof Kozlowski
2017-10-10  8:48         ` SF Markus Elfring
2017-10-02 18:01 ` [PATCH 4/6] ARM: s3c24xx: Delete an error message for a failed memory allocation in s3c2412_iotiming_get() SF Markus Elfring
2017-10-04 18:03   ` Krzysztof Kozlowski
2017-10-02 18:03 ` [PATCH 5/6] ARM: s3c24xx: Improve a size determination " SF Markus Elfring
2017-10-02 18:04 ` [PATCH 6/6] ARM: s3c2412: Fix a typo in a comment line SF Markus Elfring

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).