On Thu, May 29, 2008 at 12:35:15PM -0400, Brian J. Murrell wrote: > > when trying to build the lustre client kernel modules configure aborts with > > the message "configure: error: Lustre does not support kernels with preempt > > enabled." > > > > I'm using kernel 2.6.22.19-0.12-rt with CONFIG_PREEMPT_RT as provided by > > SLERT > > 10. > > > > Is there a quick solution to this issue ? > > Not really. Maybe somebody with more knowledge about why we don't like > CONFIG_PREEMPT_RT on the client can explain, but as far as addressing
With CONFIG_PREEMPT_RT enabled, critical sections protected by standard spinlocks (i.e. spinlock_t/rwlock_t) become preemptible. This has several drawbacks and is not at all a harmless change for us. For instance, since you can now block while acquiring a spinlock, we are no longer allowed to acquire a spinlock with interrupts disabled. It is still possible to define non-preemptible sections by using raw_spinlock_t instead of spinlock_t, but Lustre doesn't support this currently and just replacing spinlock_t by raw_spinlock_t everywhere in the code would probably defeat the purpose of CONFIG_PREEMPT_RT (i.e. hard realtime). Johann _______________________________________________ Lustre-discuss mailing list [email protected] http://lists.lustre.org/mailman/listinfo/lustre-discuss
