On Tue, 2017-04-25 at 21:49 +0200, Johannes Berg wrote:
> >             if (schedule_destroy_work) {
> > -                   struct cfg80211_iface_destroy *destroy;
> > +                   struct cfg80211_nlport_release *destroy;
> >  
> >                     destroy = kzalloc(sizeof(*destroy),
> > GFP_ATOMIC);
> 
> I was never really happy with this allocation and really want to get
> rid of it ...

Done :)

> > +           if (schedule_sched_stop_work) {
> > +                   struct cfg80211_nlport_release *destroy;
> > +
> > +                   destroy = kzalloc(sizeof(*destroy),
> > GFP_ATOMIC);
> > +                   if (destroy) {
> > +                           destroy->nlportid = notify-
> > >portid;
> > +                           spin_lock(&rdev-
> > > sched_stop_list_lock);
> > 
> > +                           list_add(&destroy->list, &rdev-
> > > sched_stop_list);
> > 
> > +                           spin_unlock(&rdev-
> > > sched_stop_list_lock);
> > 
> > +                           schedule_work(&rdev-
> > > sched_scan_stop_wk);
> > 
> > +                   }
> > +           }
> 
> Can't we set some kind of flag in the struct
> cfg80211_sched_scan_request and iterate through them later again,
> checking which need to be destroyed?

Easy enough - I'll also do that.

johannes

Reply via email to