Permalink
Commits on Aug 6, 2013
  1. Make each in-memory cacheblock state packed - 18 bytes each.

    Summary: Make 'struct cacheblock' a packed struct. So it fits in
    18 bytes (down from 24 bytes).
    
    Ported forward from facebook's internal repo.
    
    Test Plan:
    
    Reviewers:
    
    CC:
    
    Task ID: #
    
    Blame Rev:
    Mohan Srinivasan committed Aug 6, 2013
  2. Lots of flashcache IO scaling changes.

    Summary:
    
    This commit has a number of flashcache changes aimed at improving
    IO scaling.
    1) Uniform distribution of blocks onto cache sets (instead of the
    linear mapping before). But pin a consecutive run of disk blocks
    onto a cache set (for clustering when writing). This necessitates
    a flashcache ssd rev bump (2->3). Backwards compatiblity is maintained.
    2) New heuristic algorithm to clean dirty+fallow blocks. When we
    replace a block (read or write cache miss), we opportunistically look
    to see if the least recent block on LRU is dirty and if so we clean it.
    This makes more room in the cache for reads.
    3) New LRU algorithm - a variant of the midpoint algorithm, using
    2 LRU Queues.
    Thanks to Kumar for co-authorship of some of these changes and Domas
    for driving this round of flashcache scaling work.
    
    Ported forward from facebook's internal repo.
    
    Test Plan:
    
    Reviewers:
    
    CC:
    
    Task ID: #
    
    Blame Rev:
    Mohan Srinivasan committed Aug 6, 2013
Commits on Aug 4, 2013
  1. Fix in del_all_pids, to the existence of a pid logic.

    Summary: We had commented out the code in the del_all_pids logic
    where we checked to see if the pid we are deleting is currently
    alive in all releases > 2.6.31. This is because the find_task_pid*
    API wasn't EXPORT_SYMBOL'ed in .33. It is in .38. So resurrecting
    this back for Linux releases >= 2.6.38.
    Fix brought in from facebook internal flashcache repo (kinda
    important for MySQL).
    
    Test Plan:
    
    Reviewers:
    
    CC:
    
    Task ID: #
    
    Blame Rev:
    Mohan Srinivasan committed Aug 4, 2013
  2. Fix flashcache reboot notify hook to drop references on the cachedev …

    …and diskdev after syncing
    
    everything out.
    
    Summary: Fix flashcache reboot notify hook to drop references on the cachedev and diskdev
    after syncing  everything out. Fix ported from facebook internal repo. Fix was originally
    submitted by Kumar Sundararajan.
    
    Test Plan:
    
    Reviewers:
    
    CC:
    
    Task ID: #
    
    Blame Rev:
    Mohan Srinivasan committed Aug 4, 2013
Commits on Jul 18, 2013
  1. Merge pull request #129 from igorabiola/kernelV3.10

    fix compilation on kernel 3.10
    mohans committed Jul 18, 2013
  2. Merge pull request #130 from stnoonan/patch-1

    Fix misspelling of administration
    mohans committed Jul 18, 2013
Commits on Jul 11, 2013
Commits on Jul 6, 2013
  1. fix compilation on kernel 3.10

    Igor committed Jul 6, 2013
Commits on May 13, 2013
  1. Merge pull request #126 from viraptor/trivial-warnings

    Fix trivial warnings in utils
    mohans committed May 13, 2013
  2. Merge pull request #125 from viraptor/post-3.8-warnings

    Cleanup target function signatures
    mohans committed May 13, 2013
Commits on May 12, 2013
  1. Fix trivial warnings in utils

    Removed unused variables and added more explicit returns to make the
    real warnings actually stand out.
    viraptor committed May 12, 2013
  2. Cleanup target function signatures

    Remove compilation warnings by making signatures match new kernel
    headers. The map function lost its last (unused) argument in 7de3ee57da
    The status function was changed to not return int anymore in fd7c092e71
    viraptor committed May 12, 2013
Commits on May 8, 2013
  1. Merge pull request #124 from MaximF/patch-3

    Update flashcache-sa-guide.txt
    mohans committed May 8, 2013
  2. Merge pull request #123 from MaximF/patch-2

    Update flashcache-sa-guide.txt
    mohans committed May 8, 2013
  3. Merge pull request #122 from MaximF/patch-1

    Update flashcache-sa-guide.txt
    mohans committed May 8, 2013
Commits on May 7, 2013
  1. Update flashcache-sa-guide.txt

    typo:
    containly -> containing
    MaximF committed May 7, 2013
  2. Update flashcache-sa-guide.txt

    typo:
    Writethru -> Writethrough
    MaximF committed May 7, 2013
  3. Update flashcache-sa-guide.txt

    There were two mentions of "writebehind" cache type.
    From earlier declaration there are three types available: "Writethrough", "Writearound", "Writeback".
    Probably "writebehind" means "Writearound".
    replace those two mentions.
    MaximF committed May 7, 2013
Commits on Apr 19, 2013
  1. Fix a compilation error caused by a missing '#' in the commit for 3.9…

    ….0 support.
    
    Summary:
    
    Test Plan:
    
    Reviewers:
    
    CC:
    
    Task ID: #
    
    Blame Rev:
    Mohan Srinivasan committed Apr 19, 2013
  2. Merge branch 'master' of github.com:facebook/flashcache

    Mohan Srinivasan committed Apr 19, 2013
  3. Merge pull request #120 from avirus/patch-1

    added 3.9.0 support
    mohans committed Apr 19, 2013
  4. added 3.9.0 support

    avirus committed Apr 19, 2013
Commits on Feb 27, 2013
  1. Merge pull request #104 from roidayan/fix_flashcache_load

    Fix flashcache_load getting cachedev from argv when using flags
    mohans committed Feb 27, 2013
Commits on Feb 23, 2013
  1. Merge pull request #109 from viraptor/master

    Depmod should be run on the right kernel
    mohans committed Feb 23, 2013
  2. Run depmod on the right kernel

    viraptor committed Feb 23, 2013
Commits on Feb 10, 2013
  1. Merge pull request #107 from Zedzap/master

    Fix use-after-free in flashcache_destroy
    mohans committed Feb 10, 2013
  2. Fix use-after-free in flashcache_destroy

    The sb variable points to buf. But buf gets freed and reallocated, so
    the old pointer points to freed memory. The variable is then reused to
    invalidate the cache_sb_state, but the change never gets saved
    because the buf that is written to disk does not point to the same
    memory.
    Zedzap committed Feb 10, 2013
Commits on Jan 22, 2013
  1. Fix flashcache_load getting cachedev from argv when using flags

    The cachedev parameter is in position 3 when no flags specificed.
    When -v is used then cachedev will be in position 4.
    
    Signed-off-by: Roi Dayan <roid@mellanox.com>
    roidayan committed Jan 22, 2013
Commits on Nov 15, 2012
  1. Fix for a flashcache_create bug where associativity is not being pass…

    …ed in correctly.
    
    Summary: Fix for a flashcache_create bug where associativity is not being passed in
    correctly to the flashcache module.
    
    Test Plan:
    
    Reviewers:
    
    CC:
    
    Task ID: #
    
    Blame Rev:
    Mohan Srinivasan committed Nov 15, 2012
Commits on Nov 14, 2012
  1. Merge pull request #93 from leseb/patch-1

    Fixed the /proc path of flashcache_version
    mohans committed Nov 14, 2012
Commits on Nov 13, 2012
  1. Fixed the /proc path of flashcache_version

    It might be due to an upgrade change. The location of flashcache_version changed.
    leseb committed Nov 13, 2012
Commits on Nov 5, 2012
  1. Change to make flashcache compile on 3.6.0.

    Summary: Changes to make flashcache compile on 3.6.0. Thanks to
    Thomas Stein for quickly verifying that the patch works.
    
    Test Plan:
    
    Reviewers:
    
    CC:
    
    Task ID: #
    
    Blame Rev:
    Mohan Srinivasan committed Oct 9, 2012
Commits on Nov 3, 2012
  1. If the SSD is dead, bypass *all* IOs to disk in the writerthrough and…

    … writearound modes.
    
    Patch submitted by Arne Wiebalck.
    
    Summary:
    
    Test Plan:
    
    Reviewers:
    
    CC:
    
    Task ID: #
    
    Blame Rev:
    Mohan Srinivasan committed Nov 3, 2012
  2. Disambiguate ssd errors and disk errors on IO completion. On IO

    completion for the !WRITEBACK case, issue an uncached disk IO in the
    case of a SSD error.
    Patch submitted by Mohit Saxena.
    
    Summary:
    
    Test Plan:
    
    Reviewers:
    
    CC:
    
    Task ID: #
    
    Blame Rev:
    Mohan Srinivasan committed Nov 3, 2012
Commits on Oct 25, 2012
  1. Fix a bug in flashcache_writeback_load(), where a bad argument is bei…

    …ng passed into vmalloc().
    
    Summary: The vmalloc() for the superblock in flashcache_writeback_load() is passed a bad
    size argument. Thanks to Ping Huang for spotting this and reporting it.
    
    Test Plan:
    
    Reviewers:
    
    CC:
    
    Task ID: #
    
    Blame Rev:
    Mohan Srinivasan committed Oct 25, 2012