1. 23 Nov, 2007 40 commits
    • Linus Torvalds's avatar
      Import 2.3.12pre9 · 86ae3b2a
      Linus Torvalds authored
      86ae3b2a
    • Linus Torvalds's avatar
      Import 2.3.12pre8 · 6ae9dd08
      Linus Torvalds authored
      6ae9dd08
    • Linus Torvalds's avatar
      Import 2.3.12pre7 · 197e67c5
      Linus Torvalds authored
      197e67c5
    • Linus Torvalds's avatar
      Import 2.3.12pre6 · 72be09b0
      Linus Torvalds authored
      72be09b0
    • Linus Torvalds's avatar
      Import 2.3.12pre5 · c59591e1
      Linus Torvalds authored
      c59591e1
    • Linus Torvalds's avatar
      Import 2.3.12pre4 · 7176b206
      Linus Torvalds authored
      7176b206
    • Linus Torvalds's avatar
      Import 2.3.12pre3 · 77725b26
      Linus Torvalds authored
      77725b26
    • Linus Torvalds's avatar
      Import 2.3.12pre2 · d617a16f
      Linus Torvalds authored
      d617a16f
    • Linus Torvalds's avatar
      Import 2.3.12pre1 · 1b8b0760
      Linus Torvalds authored
      1b8b0760
    • Linus Torvalds's avatar
      Import 2.3.11 · e7be5403
      Linus Torvalds authored
      e7be5403
    • Linus Torvalds's avatar
      Import 2.3.11pre8 · 5688f16b
      Linus Torvalds authored
      5688f16b
    • Linus Torvalds's avatar
      Import 2.3.11pre7 · c0967d8d
      Linus Torvalds authored
      c0967d8d
    • Linus Torvalds's avatar
      Import 2.3.11pre6 · 63ee1b27
      Linus Torvalds authored
      63ee1b27
    • Linus Torvalds's avatar
      Import 2.3.11pre5 · bef89866
      Linus Torvalds authored
      bef89866
    • Linus Torvalds's avatar
      Import 2.3.11pre4 · fdf53efc
      Linus Torvalds authored
      fdf53efc
    • Linus Torvalds's avatar
      Import 2.3.11pre3 · 5c2f9737
      Linus Torvalds authored
      5c2f9737
    • Linus Torvalds's avatar
      Import 2.3.11pre1 · 374fa3cf
      Linus Torvalds authored
      374fa3cf
    • Linus Torvalds's avatar
      Import 2.3.10 · 96278de6
      Linus Torvalds authored
      96278de6
    • Linus Torvalds's avatar
      Import 2.3.10pre5 · d7217733
      Linus Torvalds authored
      d7217733
    • Linus Torvalds's avatar
      Import 2.3.10pre4 · 539fdbe4
      Linus Torvalds authored
      539fdbe4
    • Linus Torvalds's avatar
      Import 2.3.10pre3 · a2b06afa
      Linus Torvalds authored
      a2b06afa
    • Linus Torvalds's avatar
      Import 2.3.10pre2 · 51e92edf
      Linus Torvalds authored
      51e92edf
    • Linus Torvalds's avatar
      Import 2.3.10pre1 · ac5579c6
      Linus Torvalds authored
      ac5579c6
    • Linus Torvalds's avatar
      Import 2.3.9 · 1f58336f
      Linus Torvalds authored
      1f58336f
    • Linus Torvalds's avatar
      Import 2.3.9pre8 · 5d1afa8d
      Linus Torvalds authored
      5d1afa8d
    • Linus Torvalds's avatar
      Import 2.3.9pre7 · 3a3c62cd
      Linus Torvalds authored
      3a3c62cd
    • Linus Torvalds's avatar
      Import 2.3.9pre5 · 697b7103
      Linus Torvalds authored
      697b7103
    • Linus Torvalds's avatar
      Import 2.3.9pre4 · e06171a8
      Linus Torvalds authored
      e06171a8
    • Linus Torvalds's avatar
      Import 2.3.9pre3 · 606a2728
      Linus Torvalds authored
      606a2728
    • Linus Torvalds's avatar
      Import 2.3.9pre2 · e61b17ab
      Linus Torvalds authored
      e61b17ab
    • Linus Torvalds's avatar
      Import 2.3.9pre1 · b34c35ce
      Linus Torvalds authored
      b34c35ce
    • Linus Torvalds's avatar
      Import 2.3.8pre3 · afbf60cd
      Linus Torvalds authored
      afbf60cd
    • Linus Torvalds's avatar
      Import 2.3.8pre2 · f1821d88
      Linus Torvalds authored
      f1821d88
    • Linus Torvalds's avatar
      Import 2.3.8pre1 · ef01a983
      Linus Torvalds authored
      ef01a983
    • Linus Torvalds's avatar
      Linux-2.3.7.. Let's be careful out there.. · cbf5d468
      Linus Torvalds authored
      The new and much improved fully page-cache based filesystem code is now
      apparently stable, and works wonderfully well performancewise. We fixed
      all known issues with the IO subsystem: it scales well in SMP, and it
      avoids unnecessary copies and unnecessary temporary buffers for write-out.
      
      The shared mapping code in particular is much cleaner and also a _lot_
      faster.
      
      In short, it's perfect. And we want as many people as possible out there
      testing out the new cool code, and bask in the success stories..
      HOWEVER. _Just_ in case something goes wrong [ extremely unlikely of
      course. Sure. Sue me ], we want to indeminfy ourselves. There just might
      be a bug hiding there somewhere, and it might eat your filesystem while
      laughing in glee over you being naive and testing new code. So you have
      been warned.
      
      In particular, there's some indication that it might have problems on
      sparc still (and/or other architectures), possibly due to the ext2fs byte
      order cleanups that have also been done in order to reach the
      afore-mentioned state of perfection.
      I'd be especially interested in people running databases on top of Linux:
      Solid server in particular is very fsync-happy, and that's one of the
      operations that have been speeded up by orders of magnitude.
      
                              Linus
      cbf5d468
    • Linus Torvalds's avatar
      Import 2.3.7pre9 · ee5028bb
      Linus Torvalds authored
      ee5028bb
    • Linus Torvalds's avatar
      Import 2.3.7pre8 · 44d548e4
      Linus Torvalds authored
      44d548e4
    • Linus Torvalds's avatar
      Import 2.3.7pre7 · ea5faa9a
      Linus Torvalds authored
      ea5faa9a
    • Linus Torvalds's avatar
      Linux 2.3.7pre6 · 353ca85a
      Linus Torvalds authored
      Anybody who is interested in FS performance should take a look at the
      latest pre-patch of 2.3.7 (only pre-6 and possibly later: do NOT get any
      earlier versions. pre-5 still causes file corruption, pre-6 looks good so
      far).
      
      Careful, though: I fixed the problem that caused some corruption less than
      an hour ago, and while my tests indicate it all works fine, this is a very
      fundamental change. The difference to earlier kernels is:
      
       - ext2 (and some other block device filesystems that have been taught
         about it) uses write-through from the page cache instead of having a
         separate buffer cache and the page cache to maintain dirty state. This
         means much less memory pressure in certain situations, and it also
         means that we can avoid unnecessary copies.
       - the page cache has been threaded, so on SMP you can actually get
         noticeable speedups from processes that do concurrent file accesses.
       - lower-latency read paths, especially the cached case.
      
      Both of these are big, and fundamental changes. So don't mistake me when I
      say it is experimental: Ingo, David and I have been spending the last
      weeks (especialy Ingo, who deserves a _lot_ of credit for this all: I
      designed much of it, but Ingo made it a reality. Thanks Ingo) on making it
      do the right thing and be stable, but if you worry about not having
      backups you might not want to play with it even so. It took us this long
      just to make it work reliably enough that we can't find any obvious
      problems..
      
      The interesting areas are things like
       - writes to shared mappings now go blindingly fast. We're talking mondo
         cleanups here. We used to do really badly on this, now we do really
         well.
       - does bdflush still do the right thing? There may be a _lot_ of tweaking
         to do to get everything working at full capacity.
       - can people confirm that it is stable for everybody?
       - if anybody has 8-way machines etc, scalability is interesting. It
         should scale to 8-way no problem. We used to scale to 1-way, barely.
         Numbers?
       - fsync(). It doesn't work right now, but it should be easy to make it
         work well on big files etc - something we've never been able to do
         before (we used to lack the indexing from file to dirty blocks: now we
         have access to that quite automatically thanks to having the
         inode->page index in place, and the dirty blocks are right there)
      
      and I'd really appreciate comments from people, as long as people are
      aware that it _looks_ stable but we don't guarantee anything at this
      point.
      
                      Linus
      353ca85a
    • Linus Torvalds's avatar
      Import 2.3.7pre5 · 2549c237
      Linus Torvalds authored
      2549c237