On Mon, Nov 07, 2005 at 01:54:35PM -0800, Linus Torvalds wrote:
> On Mon, 7 Nov 2005, Greg KH wrote:
> > > enum pci_channel_state {
> > > - pci_channel_io_normal = 0, /* I/O channel is in normal state */
> > > - pci_channel_io_frozen = 1, /* I/O to channel is blocked */
> > > - pci_channel_io_perm_failure, /* PCI card is dead */
> > > + pci_channel_io_normal = (__force pci_channel_state_t) 0, /* I/O channel is in normal state */
> > > + pci_channel_io_frozen = (__force pci_channel_state_t) 1, /* I/O to channel is blocked */
> > > + pci_channel_io_perm_failure = (__force pci_channel_state_t) 2, /* PCI card is dead */
> > > };
> >
> > You don't have to use an enum anymore, just use a #define.
>
> The enum works fine, though, and has less namespace pollution than a
> #define, so sometimes an enum can be preferred.
Good point.
> > Sparse developers, I see code in the kernel that that does both
> > (__force foo_t) and (foo_t __force). Which one is correct?
>
> sparse doesn't care. Whatever scans better for humans. Attributes like
> "force" parse the same way things like "const" and "volatile" parses, and
> while most people _tend_ to write "const int", it's not incorrect to write
> "int const". Same with "__attribute__((force))", aka __force.
Ok, thanks for clearing this up.
greg k-h
-
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]
[Stuff]
[Gimp]
[Yosemite News]
[MIPS Linux]
[ARM Linux]
[Linux Security]
[Linux RAID]
[Video 4 Linux]
[Linux for the blind]
[Linux Resources]