>> Can it be helpful to convert initialisations for these variables >> into later assignments? > > Perhaps. Then it looks like the below. … > +++ b/drivers/vfio/vfio_iommu_type1.c > @@ -2798,9 +2798,12 @@ static int vfio_iommu_type1_dma_rw_chunk … > - bool kthread = current->mm == NULL; > + bool kthread; > + bool use_mm; I would prefer the following variable declarations then. + bool kthread, use_mm; > size_t offset; > > + kthread = current->flags & PF_KTHREAD; > + use_mm = current->mm == NULL; I propose to move such assignments directly before the corresponding check. … > if (!mm) > return -EPERM; + kthread = current->flags & PF_KTHREAD; + use_mm = !current->mm; > - if (kthread) > + if (kthread && use_mm) > kthread_use_mm(mm); … Regards, Markus