hw/nvme/ctrl.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-)
From: Klaus Jensen <k.jensen@samsung.com>
Fix potentially overflowing shift operation.
Cc: qemu-stable@nongnu.org
Suggested-by: Peter Maydell <peter.maydell@linaro.org>
Resolves: Coverity CID 1663674
Fixes: ec917cd49918 ("hw/nvme: fix FDP set FDP events")
Signed-off-by: Klaus Jensen <k.jensen@samsung.com>
---
hw/nvme/ctrl.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/hw/nvme/ctrl.c b/hw/nvme/ctrl.c
index a67e1598891c..40f22fdc40bd 100644
--- a/hw/nvme/ctrl.c
+++ b/hw/nvme/ctrl.c
@@ -6622,7 +6622,7 @@ static uint16_t nvme_set_feature_fdp_events(NvmeCtrl *n, NvmeNamespace *ns,
if (!shift && event_type) {
continue;
}
- event_mask |= (1 << nvme_fdp_evf_shifts[events[i]]);
+ event_mask |= (1ULL << nvme_fdp_evf_shifts[events[i]]);
}
if (enable) {
---
base-commit: 299e7557ed15a9a325620698add379a3ce2d1d95
change-id: 20260728-fix-shift-525e53c1df6f
Best regards,
--
Klaus Jensen <k.jensen@samsung.com>
On 28/7/26 11:26, Klaus Jensen wrote:
> From: Klaus Jensen <k.jensen@samsung.com>
>
> Fix potentially overflowing shift operation.
>
> Cc: qemu-stable@nongnu.org
> Suggested-by: Peter Maydell <peter.maydell@linaro.org>
> Resolves: Coverity CID 1663674
> Fixes: ec917cd49918 ("hw/nvme: fix FDP set FDP events")
> Signed-off-by: Klaus Jensen <k.jensen@samsung.com>
> ---
> hw/nvme/ctrl.c | 2 +-
> 1 file changed, 1 insertion(+), 1 deletion(-)
>
> diff --git a/hw/nvme/ctrl.c b/hw/nvme/ctrl.c
> index a67e1598891c..40f22fdc40bd 100644
> --- a/hw/nvme/ctrl.c
> +++ b/hw/nvme/ctrl.c
> @@ -6622,7 +6622,7 @@ static uint16_t nvme_set_feature_fdp_events(NvmeCtrl *n, NvmeNamespace *ns,
> if (!shift && event_type) {
> continue;
> }
> - event_mask |= (1 << nvme_fdp_evf_shifts[events[i]]);
> + event_mask |= (1ULL << nvme_fdp_evf_shifts[events[i]]);
Alternatively:
event_mask = deposit64(event_mask, nvme_fdp_evf_shifts[events[i]], 1);
> }
>
> if (enable) {
>
> ---
> base-commit: 299e7557ed15a9a325620698add379a3ce2d1d95
> change-id: 20260728-fix-shift-525e53c1df6f
>
> Best regards,
On Jul 28 11:34, Philippe Mathieu-Daudé wrote:
> On 28/7/26 11:26, Klaus Jensen wrote:
> > From: Klaus Jensen <k.jensen@samsung.com>
> >
> > Fix potentially overflowing shift operation.
> >
> > Cc: qemu-stable@nongnu.org
> > Suggested-by: Peter Maydell <peter.maydell@linaro.org>
> > Resolves: Coverity CID 1663674
> > Fixes: ec917cd49918 ("hw/nvme: fix FDP set FDP events")
> > Signed-off-by: Klaus Jensen <k.jensen@samsung.com>
> > ---
> > hw/nvme/ctrl.c | 2 +-
> > 1 file changed, 1 insertion(+), 1 deletion(-)
> >
> > diff --git a/hw/nvme/ctrl.c b/hw/nvme/ctrl.c
> > index a67e1598891c..40f22fdc40bd 100644
> > --- a/hw/nvme/ctrl.c
> > +++ b/hw/nvme/ctrl.c
> > @@ -6622,7 +6622,7 @@ static uint16_t nvme_set_feature_fdp_events(NvmeCtrl *n, NvmeNamespace *ns,
> > if (!shift && event_type) {
> > continue;
> > }
> > - event_mask |= (1 << nvme_fdp_evf_shifts[events[i]]);
> > + event_mask |= (1ULL << nvme_fdp_evf_shifts[events[i]]);
>
> Alternatively:
>
> event_mask = deposit64(event_mask, nvme_fdp_evf_shifts[events[i]], 1);
>
Better! Thanks!
> > }
> > if (enable) {
> >
> > ---
> > base-commit: 299e7557ed15a9a325620698add379a3ce2d1d95
> > change-id: 20260728-fix-shift-525e53c1df6f
> >
> > Best regards,
>
>
On 28/7/26 11:42, Klaus Jensen wrote:
> On Jul 28 11:34, Philippe Mathieu-Daudé wrote:
>> On 28/7/26 11:26, Klaus Jensen wrote:
>>> From: Klaus Jensen <k.jensen@samsung.com>
>>>
>>> Fix potentially overflowing shift operation.
>>>
>>> Cc: qemu-stable@nongnu.org
>>> Suggested-by: Peter Maydell <peter.maydell@linaro.org>
>>> Resolves: Coverity CID 1663674
>>> Fixes: ec917cd49918 ("hw/nvme: fix FDP set FDP events")
>>> Signed-off-by: Klaus Jensen <k.jensen@samsung.com>
>>> ---
>>> hw/nvme/ctrl.c | 2 +-
>>> 1 file changed, 1 insertion(+), 1 deletion(-)
>>>
>>> diff --git a/hw/nvme/ctrl.c b/hw/nvme/ctrl.c
>>> index a67e1598891c..40f22fdc40bd 100644
>>> --- a/hw/nvme/ctrl.c
>>> +++ b/hw/nvme/ctrl.c
>>> @@ -6622,7 +6622,7 @@ static uint16_t nvme_set_feature_fdp_events(NvmeCtrl *n, NvmeNamespace *ns,
>>> if (!shift && event_type) {
>>> continue;
>>> }
>>> - event_mask |= (1 << nvme_fdp_evf_shifts[events[i]]);
>>> + event_mask |= (1ULL << nvme_fdp_evf_shifts[events[i]]);
>>
>> Alternatively:
>>
>> event_mask = deposit64(event_mask, nvme_fdp_evf_shifts[events[i]], 1);
>>
>
> Better! Thanks!
Reviewed-by: Philippe Mathieu-Daudé <philmd@oss.qualcomm.com>
>
>>> }
>>> if (enable) {
>>>
>>> ---
>>> base-commit: 299e7557ed15a9a325620698add379a3ce2d1d95
>>> change-id: 20260728-fix-shift-525e53c1df6f
>>>
>>> Best regards,
>>
>>
© 2016 - 2026 Red Hat, Inc.