On Thu, 5 Jun 2008 22:35:12 +0530 "Aneesh Kumar K.V" <aneesh.kumar@linux.vnet.ibm.com> wrote:Whoa. You didn't copy anything like enough mailing lists for a change of this magnitude. I added some. This is a large change in behaviour! a) applications will now get a synchronous SIGBUS when modifying a page over an ENOSPC filesystem. Whereas previously they could have proceeded to completion and then detected the error via an fsync(). It's going to take more than one skimpy little paragraph to justify this, and to demonstrate that it is preferable, and to convince us that nothing will break from this user-visible behaviour change. b) we're now doing fs operations (and some I/O) in the pagefault code. This has several implications: - performance changes - potential for deadlocks when a process takes the fault from within a copy_to_user() in, say, mm/filemap.c - performing additional memory allocations within that copy_to_user(). Possibility that these will reenter the filesystem. And that's just ext2. For ext3 things are even more complex, because we have the journal_start/journal_end pair which is effectively another "lock" for ranking/deadlock purposes. And now we're taking i_alloc_sem and lock_page and we're doing ->writepage() and its potential journal_start(), all potentially within the context of a copy_to_user(). Now, things become easier because copy_to_user() only happens on the read() side of things, where we don't hold lock_page() and things are generally simpler. But still, this is a high-risk change. I think we should require a lot of convincing that issues such as the above have been suitably considered and addressed, and that the change has had *intense* testing. this copied-and-pasted test can now be removed. --
| Andrew Morton | -mm merge plans for 2.6.23 |
| Benjamin Herrenschmidt | Re: [PATCH] Remove process freezer from suspend to RAM pathway |
| Greg KH | [GIT PATCH] driver core patches against 2.6.24 |
| Mel Gorman | [PATCH 6/8] x86_64 - Specify amount of kernel memory at boot time |
git: | |
| Jarek Poplawski | [PATCH] pkt_sched: Destroy gen estimators under rtnl_lock(). |
| David Miller | [GIT]: Networking |
| Gerrit Renker | [PATCH 15/37] dccp: Set per-connection CCIDs via socket options |
| Jarek Poplawski | Re: Soft-Lockup/Race in networking in 2.6.31-rc1+195 ( possibly?caused by netem) |
