Re: [PATCH 1/4] PCI MSI: Store the number of messages in the msi_desc

From: Matthew Wilcox
Date: Mon Jul 07 2008 - 12:19:38 EST


On Mon, Jul 07, 2008 at 10:02:03AM -0600, Grant Grundler wrote:
> > - if (!entry->dev || entry->msi_attrib.type != PCI_CAP_ID_MSI)
> > + if (!entry->dev || entry->msi_attrib.is_msix)
> > return;
>
> This is why I don't like bit fields.
> "uninitialized" (3rd state) doesn't exist.
> Is there something else in place to catch that state?
>
> (It's clearly a bug if someone did that and maybe I'm
> being too paranoid.)

msi_descs are only allocated in two places, one of which sets is_msix
and the other doesn't. I wouldn't object to passing parameters to
alloc_msi_entry() so there's only one place that fills in is_msix, but
yes, I do think the current code is too paranoid.

--
Intel are signing my paycheques ... these opinions are still mine
"Bill, look, we understand that you're interested in selling us this
operating system, but compare it to ours. We can't possibly take such
a retrograde step."
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/