From: Catalin Marinas <catalin.marinas@arm.com> To: Benjamin Herrenschmidt <benh@kernel.crashing.org> Cc: Russell King - ARM Linux <linux@arm.linux.org.uk>, Oliver Neukum <oliver@neukum.org>, "Shilimkar, Santosh" <santosh.shilimkar@ti.com>, Matthew Dharm <mdharm-kernel@one-eyed-alien.net>, Ming Lei <tom.leiming@gmail.com>, "Mankad, Maulik Ojas" <x0082077@ti.com>, Sergei Shtylyov <sshtylyov@ru.mvista.com>, Sebastian Siewior <bigeasy@linutronix.de>, linux-usb@vger.kernel.org, linux-kernel <linux-kernel@vger.kernel.org>, Pavel Machek <pavel@ucw.cz>, Greg KH <greg@kroah.com>, linux-arm-kernel <linux-arm-kernel@lists.infradead.org> Subject: Re: USB mass storage and ARM cache coherency Date: Fri, 19 Feb 2010 17:15:55 +0000 [thread overview] Message-ID: <1266599755.32546.38.camel@e102109-lin.cambridge.arm.com> (raw) In-Reply-To: <1266445892.16346.306.camel@pasglop> On Wed, 2010-02-17 at 22:31 +0000, Benjamin Herrenschmidt wrote: > On Wed, 2010-02-17 at 20:44 +0000, Russell King - ARM Linux wrote: > > No, because that'd probably bugger up the Sparc64 method of delaying > > flush_dcache_page. > > > > This method works as follows: > > > > - a page cache page is allocated - this has PG_arch_1 clear. > > > > - IO happens on it and it's placed into the page cache. PG_arch_1 is > > still clear. > > > > - someone calls read()/write() which accesses the page. The generic > > file IO layers call flush_dcache_page() in response to > > read()/write() > > fs calls. flush_dcache_page() spots that the page is not yet mapped > > into userspace, and sets PG_arch_1 to mark the fact that the kernel > > mapping is dirty. > > > > - when someone maps the page, we check PG_arch_1 in update_mmu_cache. > > If PG_arch_1 is set, we flush the kernel mapping. > > > > Clearly, if we go around having drivers clearing PG_arch_1, this is > > going to break horribly. > > Ok, you do things very differently than us on ppc then. We clear > PG_arch_1 in flush_dcache_page(), and we set it when the page has been > cache cleaned for execution. For this perspective it's not that different, just that we use the negated PG_arch_1. > We assume that anybody that dirties a page in the kernel will call > flush_dcache_page() which removes our PG_arch_1 bit thus marking the > page "dirty". This assumption is not valid with some drivers like USB HCD doing PIO. But, yes, that's how it should be done. > Note that from experience, doing the check & flushes in > update_mmu_cache() is racy on SMP. At least for I$/D$, we have the case > where processor one does set_pte followed by update_mmu_cache(). The > later isn't done yet but processor 2 sees the PTE now and starts using > it, cache hasn't been fully flushed yet. You may avoid that race in some > ways, but on ppc, I've stopped using that. I think that's possible on ARM too. Having two threads on different CPUs, one thread triggers a prefetch abort (instruction page fault) on CPU0 but the second thread on CPU1 may branch into this page after set_pte() (hence not fault) but before update_mmu_cache() doing the flush. On ARM11MPCore we flush the caches in flush_dcache_page() because the cache maintenance operations weren't visible to the other CPUs. Cortex-A9 broadcasts the cache operations in hardware so we can use lazy flushing but with the race you pointed out. Using set_pte_at() for delayed flushing may be a better option for ARM as well (and maybe Documentation/cachetlb.txt updated). Thanks. -- Catalin
WARNING: multiple messages have this Message-ID (diff)
From: catalin.marinas@arm.com (Catalin Marinas) To: linux-arm-kernel@lists.infradead.org Subject: USB mass storage and ARM cache coherency Date: Fri, 19 Feb 2010 17:15:55 +0000 [thread overview] Message-ID: <1266599755.32546.38.camel@e102109-lin.cambridge.arm.com> (raw) In-Reply-To: <1266445892.16346.306.camel@pasglop> On Wed, 2010-02-17 at 22:31 +0000, Benjamin Herrenschmidt wrote: > On Wed, 2010-02-17 at 20:44 +0000, Russell King - ARM Linux wrote: > > No, because that'd probably bugger up the Sparc64 method of delaying > > flush_dcache_page. > > > > This method works as follows: > > > > - a page cache page is allocated - this has PG_arch_1 clear. > > > > - IO happens on it and it's placed into the page cache. PG_arch_1 is > > still clear. > > > > - someone calls read()/write() which accesses the page. The generic > > file IO layers call flush_dcache_page() in response to > > read()/write() > > fs calls. flush_dcache_page() spots that the page is not yet mapped > > into userspace, and sets PG_arch_1 to mark the fact that the kernel > > mapping is dirty. > > > > - when someone maps the page, we check PG_arch_1 in update_mmu_cache. > > If PG_arch_1 is set, we flush the kernel mapping. > > > > Clearly, if we go around having drivers clearing PG_arch_1, this is > > going to break horribly. > > Ok, you do things very differently than us on ppc then. We clear > PG_arch_1 in flush_dcache_page(), and we set it when the page has been > cache cleaned for execution. For this perspective it's not that different, just that we use the negated PG_arch_1. > We assume that anybody that dirties a page in the kernel will call > flush_dcache_page() which removes our PG_arch_1 bit thus marking the > page "dirty". This assumption is not valid with some drivers like USB HCD doing PIO. But, yes, that's how it should be done. > Note that from experience, doing the check & flushes in > update_mmu_cache() is racy on SMP. At least for I$/D$, we have the case > where processor one does set_pte followed by update_mmu_cache(). The > later isn't done yet but processor 2 sees the PTE now and starts using > it, cache hasn't been fully flushed yet. You may avoid that race in some > ways, but on ppc, I've stopped using that. I think that's possible on ARM too. Having two threads on different CPUs, one thread triggers a prefetch abort (instruction page fault) on CPU0 but the second thread on CPU1 may branch into this page after set_pte() (hence not fault) but before update_mmu_cache() doing the flush. On ARM11MPCore we flush the caches in flush_dcache_page() because the cache maintenance operations weren't visible to the other CPUs. Cortex-A9 broadcasts the cache operations in hardware so we can use lazy flushing but with the race you pointed out. Using set_pte_at() for delayed flushing may be a better option for ARM as well (and maybe Documentation/cachetlb.txt updated). Thanks. -- Catalin
next prev parent reply other threads:[~2010-02-19 17:16 UTC|newest] Thread overview: 352+ messages / expand[flat|nested] mbox.gz Atom feed top 2010-01-29 14:34 USB mass storage and ARM cache coherency Catalin Marinas 2010-01-29 16:10 ` Oliver Neukum 2010-01-29 16:23 ` Ming Lei 2010-01-29 16:34 ` Catalin Marinas 2010-01-29 16:41 ` Oliver Neukum 2010-01-29 17:14 ` Catalin Marinas 2010-01-29 17:51 ` Sergei Shtylyov 2010-01-29 18:54 ` Matthew Dharm 2010-01-29 19:35 ` Greg KH 2010-02-01 13:49 ` Catalin Marinas 2010-02-01 17:29 ` Catalin Marinas 2010-02-01 20:14 ` Alan Stern 2010-02-02 4:24 ` Paul Mundt 2010-02-02 9:58 ` Catalin Marinas 2010-02-01 22:30 ` Andreas Mohr 2010-02-02 6:58 ` Oliver Neukum 2010-02-02 9:31 ` Florian Fainelli 2010-02-02 6:39 ` Paul Mundt 2010-02-02 11:05 ` Catalin Marinas 2010-02-02 11:15 ` Paul Mundt 2010-02-02 9:11 ` Sebastian Andrzej Siewior 2010-02-02 11:09 ` Catalin Marinas 2010-02-02 11:48 ` Oliver Neukum 2010-02-02 12:01 ` Catalin Marinas 2010-02-02 12:07 ` Oliver Neukum 2010-02-02 12:11 ` Andreas Mohr 2010-02-02 14:42 ` Clemens Ladisch 2010-02-02 14:52 ` Oliver Neukum 2010-02-02 15:10 ` Andreas Mohr 2010-02-02 15:34 ` Catalin Marinas 2010-02-02 20:38 ` Andreas Mohr 2010-02-02 12:39 ` Catalin Marinas 2010-02-02 13:08 ` Oliver Neukum 2010-02-02 14:34 ` Catalin Marinas 2010-02-02 17:11 ` Alan Stern 2010-02-02 17:20 ` Catalin Marinas 2010-02-02 21:52 ` Andreas Mohr 2010-02-03 15:15 ` Alan Stern 2010-02-08 6:55 ` Pavel Machek 2010-02-02 13:36 ` Ming Lei 2010-02-02 14:35 ` Catalin Marinas 2010-02-08 6:55 ` Pavel Machek 2010-02-08 6:55 ` Pavel Machek 2010-02-08 7:33 ` Andreas Mohr 2010-02-08 7:33 ` Andreas Mohr 2010-02-08 10:19 ` Catalin Marinas 2010-02-08 10:19 ` Catalin Marinas 2010-02-08 9:51 ` Catalin Marinas 2010-02-08 9:51 ` Catalin Marinas 2010-02-08 10:03 ` Andy Green 2010-02-08 10:03 ` Andy Green 2010-02-17 9:50 ` Sascha Hauer 2010-02-17 9:50 ` Sascha Hauer 2010-02-17 9:57 ` Andy Green 2010-02-17 9:57 ` Andy Green 2010-02-08 10:52 ` Pavel Machek 2010-02-08 10:52 ` Pavel Machek 2010-02-08 11:28 ` Catalin Marinas 2010-02-08 11:28 ` Catalin Marinas 2010-02-16 7:57 ` Shilimkar, Santosh 2010-02-16 7:57 ` Shilimkar, Santosh 2010-02-16 8:22 ` Oliver Neukum 2010-02-16 8:22 ` Oliver Neukum 2010-02-16 8:55 ` Shilimkar, Santosh 2010-02-16 8:55 ` Shilimkar, Santosh 2010-02-16 9:07 ` Oliver Neukum 2010-02-16 9:07 ` Oliver Neukum 2010-02-16 9:39 ` Russell King - ARM Linux 2010-02-16 9:39 ` Russell King - ARM Linux 2010-02-16 13:32 ` Oliver Neukum 2010-02-16 13:32 ` Oliver Neukum 2010-02-16 13:40 ` Shilimkar, Santosh 2010-02-16 13:40 ` Shilimkar, Santosh 2010-02-16 13:46 ` Oliver Neukum 2010-02-16 13:46 ` Oliver Neukum 2010-02-16 14:12 ` Shilimkar, Santosh 2010-02-16 14:12 ` Shilimkar, Santosh 2010-02-16 14:22 ` Oliver Neukum 2010-02-16 14:22 ` Oliver Neukum 2010-02-16 14:45 ` Shilimkar, Santosh 2010-02-16 14:45 ` Shilimkar, Santosh 2010-02-16 15:44 ` Alan Stern 2010-02-16 15:44 ` Alan Stern 2010-02-17 8:55 ` Shilimkar, Santosh 2010-02-17 8:55 ` Shilimkar, Santosh 2010-02-17 9:10 ` Oliver Neukum 2010-02-17 9:10 ` Oliver Neukum 2010-02-17 9:17 ` Shilimkar, Santosh 2010-02-17 9:17 ` Shilimkar, Santosh 2010-02-17 17:02 ` Alan Stern 2010-02-17 17:02 ` Alan Stern 2010-02-17 20:26 ` Russell King - ARM Linux 2010-02-17 20:26 ` Russell King - ARM Linux 2010-02-17 20:30 ` Gadiyar, Anand 2010-02-17 20:30 ` Gadiyar, Anand 2010-02-18 6:56 ` Oliver Neukum 2010-02-18 6:56 ` Oliver Neukum 2010-02-18 7:14 ` Gadiyar, Anand 2010-02-18 7:14 ` Gadiyar, Anand 2010-02-17 12:29 ` Jamie Lokier 2010-02-17 12:29 ` Jamie Lokier 2010-02-17 3:21 ` Ming Lei 2010-02-17 3:21 ` Ming Lei 2010-02-17 9:05 ` Benjamin Herrenschmidt 2010-02-17 9:05 ` Benjamin Herrenschmidt 2010-02-17 9:15 ` Oliver Neukum 2010-02-17 9:15 ` Oliver Neukum 2010-02-17 9:40 ` Benjamin Herrenschmidt 2010-02-17 9:40 ` Benjamin Herrenschmidt 2010-02-17 10:09 ` Oliver Neukum 2010-02-17 10:09 ` Oliver Neukum 2010-02-17 10:18 ` Benjamin Herrenschmidt 2010-02-17 10:18 ` Benjamin Herrenschmidt 2010-02-17 10:23 ` Oliver Neukum 2010-02-17 10:23 ` Oliver Neukum 2010-02-17 12:15 ` Benjamin Herrenschmidt 2010-02-17 12:15 ` Benjamin Herrenschmidt 2010-02-17 9:55 ` Russell King - ARM Linux 2010-02-17 9:55 ` Russell King - ARM Linux 2010-02-17 10:05 ` Benjamin Herrenschmidt 2010-02-17 10:05 ` Benjamin Herrenschmidt 2010-02-17 15:27 ` Catalin Marinas 2010-02-17 15:27 ` Catalin Marinas 2010-02-17 20:37 ` Benjamin Herrenschmidt 2010-02-17 20:37 ` Benjamin Herrenschmidt 2010-02-17 20:44 ` Russell King - ARM Linux 2010-02-17 20:44 ` Russell King - ARM Linux 2010-02-17 22:31 ` Benjamin Herrenschmidt 2010-02-17 22:31 ` Benjamin Herrenschmidt 2010-02-19 17:15 ` Catalin Marinas [this message] 2010-02-19 17:15 ` Catalin Marinas 2010-02-19 17:36 ` Catalin Marinas 2010-02-19 17:36 ` Catalin Marinas 2010-02-19 20:53 ` Oliver Neukum 2010-02-19 20:53 ` Oliver Neukum 2010-02-24 2:48 ` Benjamin Herrenschmidt 2010-02-24 2:48 ` Benjamin Herrenschmidt 2010-02-24 7:16 ` Oliver Neukum 2010-02-24 7:16 ` Oliver Neukum 2010-02-24 21:12 ` Benjamin Herrenschmidt 2010-02-24 21:12 ` Benjamin Herrenschmidt 2010-02-25 3:48 ` Oliver Neukum 2010-02-25 3:48 ` Oliver Neukum 2010-02-26 0:22 ` Benjamin Herrenschmidt 2010-02-26 0:22 ` Benjamin Herrenschmidt 2010-02-25 12:36 ` James Bottomley 2010-02-25 12:36 ` James Bottomley 2010-02-24 2:47 ` Benjamin Herrenschmidt 2010-02-24 2:47 ` Benjamin Herrenschmidt 2010-02-24 16:19 ` Alan Stern 2010-02-24 16:19 ` Alan Stern 2010-02-24 21:13 ` Benjamin Herrenschmidt 2010-02-24 21:13 ` Benjamin Herrenschmidt 2010-02-24 21:50 ` Alan Stern 2010-02-24 21:50 ` Alan Stern 2010-02-25 20:52 ` Benjamin Herrenschmidt 2010-02-25 20:52 ` Benjamin Herrenschmidt 2010-02-26 16:00 ` Catalin Marinas 2010-02-26 16:00 ` Catalin Marinas 2010-02-26 21:36 ` Benjamin Herrenschmidt 2010-02-26 21:36 ` Benjamin Herrenschmidt 2010-02-26 16:25 ` Catalin Marinas 2010-02-26 16:25 ` Catalin Marinas 2010-02-26 16:52 ` Alan Stern 2010-02-26 16:52 ` Alan Stern 2010-02-26 21:51 ` Benjamin Herrenschmidt 2010-02-26 21:51 ` Benjamin Herrenschmidt 2010-02-26 21:00 ` Russell King - ARM Linux 2010-02-26 21:00 ` Russell King - ARM Linux 2010-02-28 0:14 ` Benjamin Herrenschmidt 2010-02-28 0:14 ` Benjamin Herrenschmidt 2010-02-28 5:01 ` James Bottomley 2010-02-28 5:01 ` James Bottomley 2010-03-01 10:39 ` Catalin Marinas 2010-03-01 10:39 ` Catalin Marinas 2010-03-01 11:06 ` Russell King - ARM Linux 2010-03-01 11:06 ` Russell King - ARM Linux 2010-03-02 12:11 ` FUJITA Tomonori 2010-03-02 12:11 ` FUJITA Tomonori 2010-03-02 17:05 ` Catalin Marinas 2010-03-02 17:05 ` Catalin Marinas 2010-03-02 17:47 ` Catalin Marinas 2010-03-02 17:47 ` Catalin Marinas 2010-03-02 23:33 ` Benjamin Herrenschmidt 2010-03-02 23:33 ` Benjamin Herrenschmidt 2010-03-03 10:21 ` Catalin Marinas 2010-03-03 10:21 ` Catalin Marinas 2010-03-02 23:29 ` Benjamin Herrenschmidt 2010-03-02 23:29 ` Benjamin Herrenschmidt 2010-03-03 3:47 ` FUJITA Tomonori 2010-03-03 3:47 ` FUJITA Tomonori 2010-03-03 5:10 ` Benjamin Herrenschmidt 2010-03-03 5:10 ` Benjamin Herrenschmidt 2010-03-03 5:40 ` James Bottomley 2010-03-03 5:40 ` James Bottomley 2010-03-03 9:36 ` Russell King - ARM Linux 2010-03-03 9:36 ` Russell King - ARM Linux 2010-03-03 10:24 ` James Bottomley 2010-03-03 10:24 ` James Bottomley 2010-03-03 19:41 ` Russell King - ARM Linux 2010-03-03 19:41 ` Russell King - ARM Linux 2010-03-04 2:00 ` Benjamin Herrenschmidt 2010-03-04 2:00 ` Benjamin Herrenschmidt 2010-03-04 8:26 ` James Bottomley 2010-03-04 8:26 ` James Bottomley 2010-03-04 21:25 ` Benjamin Herrenschmidt 2010-03-04 21:25 ` Benjamin Herrenschmidt 2010-03-03 6:35 ` FUJITA Tomonori 2010-03-03 6:35 ` FUJITA Tomonori 2010-03-03 10:43 ` Catalin Marinas 2010-03-03 10:43 ` Catalin Marinas 2010-03-03 10:40 ` Catalin Marinas 2010-03-03 10:40 ` Catalin Marinas 2010-03-03 21:54 ` Pavel Machek 2010-03-03 21:54 ` Pavel Machek 2010-03-04 6:54 ` Wolfgang Mües 2010-03-04 9:31 ` Russell King - ARM Linux 2010-03-06 10:56 ` Wolfgang Mües 2010-03-06 11:05 ` Oliver Neukum 2010-03-06 19:44 ` Russell King - ARM Linux 2010-03-04 13:47 ` Catalin Marinas 2010-03-04 13:35 ` Catalin Marinas 2010-03-04 13:35 ` Catalin Marinas 2010-03-04 13:51 ` Pavel Machek 2010-03-04 13:51 ` Pavel Machek 2010-03-04 14:21 ` James Bottomley 2010-03-04 14:21 ` James Bottomley 2010-03-04 14:27 ` Russell King - ARM Linux 2010-03-04 14:27 ` Russell King - ARM Linux 2010-03-04 15:25 ` Catalin Marinas 2010-03-04 15:25 ` Catalin Marinas 2010-03-04 15:34 ` Russell King - ARM Linux 2010-03-04 15:34 ` Russell King - ARM Linux 2010-03-04 21:31 ` Benjamin Herrenschmidt 2010-03-04 21:31 ` Benjamin Herrenschmidt 2010-03-06 10:47 ` James Bottomley 2010-03-06 10:47 ` James Bottomley 2010-03-06 19:36 ` Russell King - ARM Linux 2010-03-06 19:36 ` Russell King - ARM Linux 2010-03-06 21:07 ` Benjamin Herrenschmidt 2010-03-06 21:07 ` Benjamin Herrenschmidt 2010-03-07 5:54 ` James Bottomley 2010-03-07 5:54 ` James Bottomley 2010-03-08 11:17 ` Catalin Marinas 2010-03-08 11:17 ` Catalin Marinas 2010-03-06 21:03 ` Benjamin Herrenschmidt 2010-03-06 21:03 ` Benjamin Herrenschmidt 2010-03-07 3:37 ` James Bottomley 2010-03-07 3:37 ` James Bottomley 2010-03-08 8:46 ` FUJITA Tomonori 2010-03-08 8:46 ` FUJITA Tomonori 2010-03-09 2:25 ` Benjamin Herrenschmidt 2010-03-09 2:25 ` Benjamin Herrenschmidt 2010-03-04 15:29 ` Catalin Marinas 2010-03-04 15:29 ` Catalin Marinas 2010-03-04 15:41 ` Paul Mundt 2010-03-04 15:41 ` Paul Mundt 2010-03-04 16:30 ` Russell King - ARM Linux 2010-03-04 16:30 ` Russell King - ARM Linux 2010-03-04 17:34 ` Catalin Marinas 2010-03-04 17:34 ` Catalin Marinas 2010-03-04 17:54 ` Russell King - ARM Linux 2010-03-04 17:54 ` Russell King - ARM Linux 2010-03-04 22:27 ` Andreas Mohr 2010-03-04 18:07 ` Catalin Marinas 2010-03-04 18:07 ` Catalin Marinas 2010-03-04 21:37 ` Benjamin Herrenschmidt 2010-03-04 21:37 ` Benjamin Herrenschmidt 2010-03-04 22:11 ` Catalin Marinas 2010-03-04 22:11 ` Catalin Marinas 2010-03-05 4:34 ` Benjamin Herrenschmidt 2010-03-05 4:34 ` Benjamin Herrenschmidt 2010-03-05 9:27 ` Catalin Marinas 2010-03-05 9:27 ` Catalin Marinas 2010-03-05 1:17 ` Paul Mundt 2010-03-05 1:17 ` Paul Mundt 2010-03-05 1:17 ` Paul Mundt 2010-03-05 4:44 ` Benjamin Herrenschmidt 2010-03-05 4:44 ` Benjamin Herrenschmidt 2010-03-05 4:44 ` Benjamin Herrenschmidt 2010-03-10 3:52 ` Paul Mundt 2010-03-10 3:52 ` Paul Mundt 2010-03-10 3:52 ` Paul Mundt 2010-03-11 21:44 ` Benjamin Herrenschmidt 2010-03-11 21:44 ` Benjamin Herrenschmidt 2010-03-11 21:44 ` Benjamin Herrenschmidt 2010-03-04 21:34 ` Benjamin Herrenschmidt 2010-03-04 21:34 ` Benjamin Herrenschmidt 2010-03-04 21:28 ` Benjamin Herrenschmidt 2010-03-04 21:28 ` Benjamin Herrenschmidt 2010-03-04 21:40 ` Russell King - ARM Linux 2010-03-04 21:40 ` Russell King - ARM Linux 2010-03-05 4:31 ` Benjamin Herrenschmidt 2010-03-05 4:31 ` Benjamin Herrenschmidt 2010-03-04 15:35 ` Catalin Marinas 2010-03-04 15:35 ` Catalin Marinas 2010-03-07 8:23 ` Pavel Machek 2010-03-07 8:23 ` Pavel Machek 2010-03-08 10:57 ` Catalin Marinas 2010-03-08 10:57 ` Catalin Marinas 2010-03-02 23:26 ` Benjamin Herrenschmidt 2010-03-02 23:26 ` Benjamin Herrenschmidt 2010-03-01 10:42 ` Catalin Marinas 2010-03-01 10:42 ` Catalin Marinas 2010-03-03 20:24 ` Jamie Lokier 2010-03-03 20:24 ` Jamie Lokier 2010-02-26 21:40 ` Benjamin Herrenschmidt 2010-02-26 21:40 ` Benjamin Herrenschmidt 2010-02-26 21:49 ` Russell King - ARM Linux 2010-02-26 21:49 ` Russell King - ARM Linux 2010-02-28 0:24 ` Benjamin Herrenschmidt 2010-02-28 0:24 ` Benjamin Herrenschmidt 2010-02-28 19:17 ` Pavel Machek 2010-02-28 19:17 ` Pavel Machek 2010-03-01 11:10 ` Catalin Marinas 2010-03-01 11:10 ` Catalin Marinas 2010-03-02 4:11 ` Benjamin Herrenschmidt 2010-03-02 4:11 ` Benjamin Herrenschmidt 2010-02-24 2:39 ` Benjamin Herrenschmidt 2010-02-24 2:39 ` Benjamin Herrenschmidt 2010-02-26 16:44 ` Catalin Marinas 2010-02-26 16:44 ` Catalin Marinas 2010-02-26 21:49 ` Benjamin Herrenschmidt 2010-02-26 21:49 ` Benjamin Herrenschmidt 2010-02-26 22:03 ` Russell King - ARM Linux 2010-02-26 22:03 ` Russell King - ARM Linux 2010-02-28 0:29 ` Benjamin Herrenschmidt 2010-02-28 0:29 ` Benjamin Herrenschmidt 2010-02-28 23:20 ` Catalin Marinas 2010-02-28 23:20 ` Catalin Marinas 2010-02-28 23:17 ` Catalin Marinas 2010-02-28 23:17 ` Catalin Marinas 2010-02-17 15:27 ` Catalin Marinas 2010-02-17 15:27 ` Catalin Marinas 2010-02-17 15:39 ` Catalin Marinas 2010-02-17 15:39 ` Catalin Marinas 2010-02-17 15:40 ` Catalin Marinas 2010-02-17 15:40 ` Catalin Marinas 2010-02-17 15:40 ` Catalin Marinas 2010-02-17 15:40 ` Catalin Marinas 2010-02-17 16:19 ` Catalin Marinas 2010-02-17 16:19 ` Catalin Marinas 2010-02-17 16:19 ` Re: " Catalin Marinas 2010-02-17 16:19 ` Catalin Marinas 2010-02-16 8:44 ` Russell King - ARM Linux 2010-02-16 8:44 ` Russell King - ARM Linux 2010-02-16 8:51 ` Gadiyar, Anand 2010-02-16 8:51 ` Gadiyar, Anand 2010-02-20 7:21 ` Pete Zaitcev 2010-02-20 7:21 ` Pete Zaitcev 2010-02-03 23:56 George Spelvin 2010-02-04 4:39 ` Paul Mundt
Reply instructions: You may reply publicly to this message via plain-text email using any one of the following methods: * Save the following mbox file, import it into your mail client, and reply-to-all from there: mbox Avoid top-posting and favor interleaved quoting: https://en.wikipedia.org/wiki/Posting_style#Interleaved_style * Reply using the --to, --cc, and --in-reply-to switches of git-send-email(1): git send-email \ --in-reply-to=1266599755.32546.38.camel@e102109-lin.cambridge.arm.com \ --to=catalin.marinas@arm.com \ --cc=benh@kernel.crashing.org \ --cc=bigeasy@linutronix.de \ --cc=greg@kroah.com \ --cc=linux-arm-kernel@lists.infradead.org \ --cc=linux-kernel@vger.kernel.org \ --cc=linux-usb@vger.kernel.org \ --cc=linux@arm.linux.org.uk \ --cc=mdharm-kernel@one-eyed-alien.net \ --cc=oliver@neukum.org \ --cc=pavel@ucw.cz \ --cc=santosh.shilimkar@ti.com \ --cc=sshtylyov@ru.mvista.com \ --cc=tom.leiming@gmail.com \ --cc=x0082077@ti.com \ /path/to/YOUR_REPLY https://kernel.org/pub/software/scm/git/docs/git-send-email.html * If your mail client supports setting the In-Reply-To header via mailto: links, try the mailto: linkBe sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes, see mirroring instructions on how to clone and mirror all data and code used by this external index.