On Tue, 12 Dec 2017, Dimitri Sivanich wrote: > > --- a/drivers/misc/sgi-gru/grutlbpurge.c > > +++ b/drivers/misc/sgi-gru/grutlbpurge.c > > @@ -298,6 +298,7 @@ struct gru_mm_struct *gru_register_mmu_notifier(void) > > return ERR_PTR(-ENOMEM); > > STAT(gms_alloc); > > spin_lock_init(&gms->ms_asid_lock); > > + gms->ms_notifier.flags = 0; > > gms->ms_notifier.ops = &gru_mmuops; > > atomic_set(&gms->ms_refcnt, 1); > > init_waitqueue_head(&gms->ms_wait_queue); > > diff --git a/drivers/xen/gntdev.c b/drivers/xen/gntdev.c > > There is a kzalloc() just above this: > gms = kzalloc(sizeof(*gms), GFP_KERNEL); > > Is that not sufficient to clear the 'flags' field? >
Absolutely, but whether it is better to explicitly document that the mmu notifier has cleared flags, i.e. there are no blockable callbacks, is another story. I can change it if preferred.