Re: [PATCH 1/2] nvme: Update type from size_t to u16 for opts->queue_size

From: Dan Carpenter
Date: Wed Nov 29 2023 - 07:15:15 EST


On Wed, Nov 29, 2023 at 12:26:24PM +0300, Dan Carpenter wrote:
> The ctrl->ops assignment happens in nvme_init_ctrl() and it should have
> been easy to track. I am not sure what went wrong there. I'll take a
> look at that and fix it.

I suspect on your system you don't have the cross function DB built so
it's not aware what happens in nvme_init_ctrl() or the other function I
mentioned.

On my system there is too much data so it isn't parsed.
1) When there is too much data it should just mark ctrl->ops as unknown
2) I should try to consolidate the data. I should just mark all of
ctrl->ctrl_device as unknown instead of recording any of the struct
members individually. There might also be stuff that isn't used like
ctrl->namespaces_rwsem internals.
3) On my system, I have 2187 bogus entries that say we removed an item
from a list.

Probably any of these fixes would silence the false positive but it
would be better to do all three.

If you don't have the cross function database though, you're probably
out of luck. There are always going to be more false positives if you
don't have the cross function information.

regards,
dan carpenter