[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] Re: [Xen-devel] [PATCHv1 3/4] spinlock: shrink struct lock_debug
On 18/12/15 16:58, Jan Beulich wrote: On 18.12.15 at 15:09, <david.vrabel@xxxxxxxxxx> wrote:--- a/xen/common/spinlock.c +++ b/xen/common/spinlock.c @@ -16,7 +16,7 @@ static atomic_t spin_debug __read_mostly = ATOMIC_INIT(0);static void check_lock(struct lock_debug *debug){ - int irq_safe = !local_irq_is_enabled(); + s16 irq_safe = !local_irq_is_enabled();if ( unlikely(atomic_read(&spin_debug) <= 0) )return;I can't figure out why this odd looking change is needed. Jan This patch shrinks struct lock_debug's irq_safe member. Since you end up with many instances of this embedded in other structures such as struct domain, this become a useful saving in memory. At one point, I had an issue with struct domain exceeding 4k, which caused trouble. Given the change to struct_lock debug, this local variable irq_safe, is compared with it, and used in cmpxchg with it it, and therefore should match type. - Jenny _______________________________________________ Xen-devel mailing list Xen-devel@xxxxxxxxxxxxx http://lists.xen.org/xen-devel
|
Lists.xenproject.org is hosted with RackSpace, monitoring our |