Subject: Re: [patch] powerpc: sysfs fix compiler warning

From: Sergei Shtylyov <[email-masked]>
Date: Fri, 22 Jun 2007 23:09:12 +0400

Josh Boyer wrote:
> On Fri, 2007-06-22 at 22:57 +0400, Sergei Shtylyov wrote:
> 
>>Hello.
>>
>>Josh Boyer wrote:
>>
>>
>>>>From: Christian Krafft <[email-masked]>
>>
>>>>This patch fixes the following compiler warning:
>>>>arch/powerpc/kernel/sysfs.c:385: warning: ignoring return value of
>>>>`sysfs_create_group',
>>
>>>>Signed-off-by: Christian Krafft <[email-masked]>
>>
>>>>Index: linux-2.6.22-rc5/arch/powerpc/kernel/sysfs.c
>>>>===================================================================
>>>>--- linux-2.6.22-rc5.orig/arch/powerpc/kernel/sysfs.c
>>>>+++ linux-2.6.22-rc5/arch/powerpc/kernel/sysfs.c
>>>>@@ -380,16 +380,23 @@ int cpu_add_sysdev_attr_group(struct att
>>>>{
>>>>	int cpu;
>>>>	struct sys_device *sysdev;
>>>>+	int error;
>>>>
>>>>	mutex_lock(&cpu_mutex);
>>>>
>>>>	for_each_possible_cpu(cpu) {
>>>>		sysdev = get_cpu_sysdev(cpu);
>>>>-		sysfs_create_group(&sysdev->kobj, attrs);
>>>>+		error |= sysfs_create_group(&sysdev->kobj, attrs);

>>>Why are you or'ing the return value with whatever is in the
>>>uninitialized variable?

>>    To make it always fail, no doubt. ;-)
>>    ISO accumulation error, it makes more sense to start cleanup created 
>>groups right after the first creation failure -- although with the callers opf 
>>this function ignoring the result anyway, who cares. :-)

> I care because he does an if (error) below that.  Since error isn't
> initialized, it could be some random value and or'ing a 0 return code
> from sysfs_create_group would still trigger the error path.

> Plus, it's bogus anyway and should be fixed.

    You misunderstood: I didn't at all object to fixing the bogosity you've 
pointed out, just mused about how/if the error cleanup should be done.

> josh

WBR, Sergei