Re: [GIT PATCH] More PCI patches for 2.6.13

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 




On Fri, 9 Sep 2005, Linus Torvalds wrote:
> 
> There are functions where it is really _important_ to check the error 
> return, because they return errors often enough - and the error case is 
> something you have to do something about - that it's good to force people 
> to be aware.
> 
> But "pci_set_power_state()"?
> 
> I don't think so.

Btw, a perfect example of this is

	pci_set_power_state(pdev, 0);

which is a very common thing to do in a driver init routine. And it has
absolutely _no_ valid return values: it either succeeds, or it doesn't,
and the only reason it wouldn't succeed is because the device doesn't
support power management in the first place (in which case it already
effectively is in state 0).

In other words, there's nothing you can or should do about it. Testing the 
return value is pointless. And thus adding a "must_check" is really really 
wrong: it might make people do

	if (pci_set_power_state(pdev, 0))
		return -ENODEV

which is actually actively the _wrong_ thing to do, and would just cause 
old revisions of the chip that might not support PM capabilities to no 
longer work.

The problem with warnings is that people may take them too seriously, and 
generate bugs when trying to "fix" them.

		Linus
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [email protected]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

[Index of Archives]     [Kernel Newbies]     [Netfilter]     [Bugtraq]     [Photo]     [Gimp]     [Yosemite News]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Video 4 Linux]     [Linux for the blind]
  Powered by Linux