public inbox for linux-kernel@vger.kernel.org
 help / color / mirror / Atom feed
* [RFC -v9 0/4] Lock-less list
@ 2010-12-23  5:43 Huang Ying
  2010-12-23  5:43 ` [RFC -v9 1/4] Add Kconfig option ARCH_HAVE_NMI_SAFE_CMPXCHG Huang Ying
                   ` (4 more replies)
  0 siblings, 5 replies; 13+ messages in thread
From: Huang Ying @ 2010-12-23  5:43 UTC (permalink / raw)
  To: Andrew Morton
  Cc: linux-kernel, Andi Kleen, ying.huang, Peter Zijlstra,
	Linus Torvalds, Ingo Molnar

Add a lock-less NULL-terminated linked list implementation.  And use
that in irq_work and replace net/rds/xlist.h.

v9:

- Split out lock-less allocator, will repost allocator with its user
  in another patchset.
- Use lock-less list in irq_work and replace net/rds/xlist.h

v8:

- Rebased on mmotm 2010-12-02

v7:

- Revise ARCH_HAVE_NMI_SAFE_CMPXCHG definition for some architectures
  according to architecture maitainers' comments.
- Remove spin_trylock_irqsave based fallback for lockless memory allocator,
  because it does not work for !CONFIG_SMP and is not likely to be used.
- Make lockless memory allocator and list does not depend on
  ARCH_HAVE_NMI_SAFE_CMPXCHG.  Instead, require the user to depend on it
  when needed. And BUG_ON(in_nmi()) is added in necessary place to prevent
  silent race.

v6:

- Revise ARCH_HAVE_NMI_SAFE_CMPXCHG definition for some architectures
  according to architecture maitainers' comments.

v5:

- Add ARCH_HAVE_NMI_SAFE_CMPXCHG
- Add spin_trylock_irqsave based fallback in lockless memory allocator
  if ARCH_HAVE_NMI_SAFE_CMPXCHG=n
- Make lockless list depends on ARCH_HAVE_NMI_SAFE_CMPXCHG

v4:

- Split from APEI patchset
- Update patch description and comments according to ML comments

v3:

- Rework lockless memory allocator and list according to ML comments

[RFC -v9 1/4] Add Kconfig option ARCH_HAVE_NMI_SAFE_CMPXCHG
[RFC -v9 2/4] lib, Add lock-less NULL terminated single list
[RFC -v9 3/4] irq_work, Use llist in irq_work
[RFC -v9 4/4] net, rds, Replace xlist in net/rds/xlist.h with llist

^ permalink raw reply	[flat|nested] 13+ messages in thread

end of thread, other threads:[~2010-12-24  0:56 UTC | newest]

Thread overview: 13+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2010-12-23  5:43 [RFC -v9 0/4] Lock-less list Huang Ying
2010-12-23  5:43 ` [RFC -v9 1/4] Add Kconfig option ARCH_HAVE_NMI_SAFE_CMPXCHG Huang Ying
2010-12-23 17:35   ` David Miller
2010-12-24  0:56     ` Huang Ying
2010-12-23  5:43 ` [RFC -v9 2/4] lib, Add lock-less NULL terminated single list Huang Ying
2010-12-23  5:43 ` [RFC -v9 3/4] irq_work, Use llist in irq_work Huang Ying
2010-12-23  5:43 ` [RFC -v9 4/4] net, rds, Replace xlist in net/rds/xlist.h with llist Huang Ying
2010-12-23  7:05   ` Valdis.Kletnieks
2010-12-23  8:31     ` Huang Ying
2010-12-23 21:51   ` Chris Mason
2010-12-24  0:29     ` Huang Ying
2010-12-23  6:05 ` [RFC -v9 0/4] Lock-less list Valdis.Kletnieks
2010-12-23  8:31   ` Huang Ying

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox