> > > > @@ -1301,8 +1346,7 @@ rte_cryptodev_sym_session_free(struct 
> > > > rte_cryptodev_sym_session *sess)
> > > >
> > > >         /* Check that all device private data has been freed */
> > > >         for (i = 0; i < nb_drivers; i++) {
> > > [Fiona] Use the sess.nb_drivers rather than the global.
> >
> > Ok, though doesn't really matter here.
> > get_sym_session_private_data() will return NULL for invalid index anyway.
> [Fiona] Except that you removed the NULL check below and are using that
> invalid index to deref the array.

Ah yes, you right - have to use sess.nb_drivers here.

> 
> > > Actually maybe name slightly differently to reduce the chance of that 
> > > mistake happening, e.g.
> > > rename sess.nb_drivers to sess.num_drivers?
> > >
> > > > -               sess_priv = get_sym_session_private_data(sess, i);
> > > > -               if (sess_priv != NULL)
> > > > +               if (sess->sess_data[i].refcnt != 0)
> > > >                         return -EBUSY;
> > > >         }
> > > >
> > > > @@ -1313,6 +1357,23 @@ rte_cryptodev_sym_session_free(struct 
> > > > rte_cryptodev_sym_session *sess)
> > > >         return 0;
> > > >  }
> > > >
> > > > +unsigned int
> > > > +rte_cryptodev_sym_session_max_data_size(void)
> > > [Fiona] Suggest renaming this
> > > rte_cryptodev_sym_session_max_array_size()
> >
> > I usually don't care much about names, but that seems just confusing:
> > totally unclear which array we are talking about.
> > Any better naming ideas?
> [Fiona] Isn't it returning the size of the array of structs in the session 
> hdr?
> Seems a bit more informative than "data".

Yes, but user doesn't have to know it is an array of pointers or
something different.

> Can't think of anything better, if you find array confusing then I
> don't feel that strongly about it, stick with data.
> Or just get rid of the function altogether and put inside
> rte_cryptodev_sym_session_max_size()
> Unless it's called elsewhere.

Sounds like a good option.
Konstantin

Reply via email to