ofed merge soon

Hans Petter Selasky hselasky at c2i.net
Sun Jan 30 09:16:55 UTC 2011


On Sunday 30 January 2011 08:44:45 Jeff Roberson wrote:
> On Sat, 29 Jan 2011, Hans Petter Selasky wrote:
> > Hi,
> > 
> > Just a comment:
> > 
> > +
> > +#define DEFINE_MUTEX(lock)                                             \
> > +       mutex_t lock;                                                   \
> > +       SX_SYSINIT_FLAGS(lock, &(lock).sx, "lnxmtx", SX_NOWITNESS)
> > +
> > +static inline void
> > +linux_mutex_init(mutex_t *m)
> > +{
> > +
> > +       memset(&m->sx, 0, sizeof(m->sx));
> > +       sx_init_flags(&m->sx, "lnxmtx",  SX_NOWITNESS);
> > +}
> > +
> > +#define        mutex_init      linux_mutex_init
> > 
> > I see you workaround the fact that Linux does not destroy any mutexes by
> > disabling witness. Do you have any plan to upgrade the Linux 3rd party
> > code to destroy mutexes?
> 
> It introduces too many diffs that are difficult to maintain.  I don't
> think it's viable.  One option would be to tag the memory linux uses so
> that when it's freed we reclaim any locks in it.  You could scan the
> witness tables for pointers within the free'd region fairly easily.  It
> wouldn't be pretty though.

How about requiring that Linux code, once imported, must destroy it's mutexes?

--HPS


More information about the freebsd-arch mailing list