Skip to content
Permalink

Comparing changes

Choose two branches to see what’s changed or to start a new pull request. If you need to, you can also or learn more about diff comparisons.

Open a pull request

Create a new pull request by comparing changes across two branches. If you need to, you can also . Learn more about diff comparisons here.
base repository: dazjo/android_kernel_huawei_u8815
base: 0060d692ce78
Choose a base ref
...
head repository: dazjo/android_kernel_huawei_u8815
compare: b26960de03af
Choose a head ref
  • 18 commits
  • 62 files changed
  • 4 contributors

Commits on Jul 11, 2013

  1. block: Add support for reinsert a dispatched req

    Add support for reinserting a dispatched request back to the
    scheduler's internal data structures.
    This capability is used by the device driver when it chooses to
    interrupt the current request transmission and execute another (more
    urgent) pending request. For example: interrupting long write in order
    to handle pending read. The device driver re-inserts the
    remaining write request back to the scheduler, to be rescheduled
    for transmission later on.
    
    Add API for verifying whether the current scheduler
    supports reinserting requests mechanism. If reinsert mechanism isn't
    supported by the scheduler, this code path will never be activated.
    
    Change-Id: I5c982a66b651ebf544aae60063ac8a340d79e67f
    Signed-off-by: Tatyana Brokhman <tlinder@codeaurora.org>
    Tatyana Brokhman authored and Daz Jones committed Jul 11, 2013
    Copy the full SHA
    7348a37 View commit details
    Browse the repository at this point in the history
  2. block: Add API for urgent request handling

    This patch add support in block & elevator layers for handling
    urgent requests. The decision if a request is urgent or not is taken
    by the scheduler. Urgent request notification is passed to the underlying
    block device driver (eMMC for example). Block device driver may decide to
    interrupt the currently running low priority request to serve the new
    urgent request. By doing so READ latency is greatly reduced in read&write
    collision scenarios.
    
    Note that if the current scheduler doesn't implement the urgent request
    mechanism, this code path is never activated.
    
    Change-Id: I8aa74b9b45c0d3a2221bd4e82ea76eb4103e7cfa
    Signed-off-by: Tatyana Brokhman <tlinder@codeaurora.org>
    Tatyana Brokhman authored and Daz Jones committed Jul 11, 2013
    Copy the full SHA
    e0bbe22 View commit details
    Browse the repository at this point in the history
  3. block: Adding ROW scheduling algorithm

    This patch adds the implementation of a new scheduling algorithm - ROW.
    The policy of this algorithm is to prioritize READ requests over WRITE
    as much as possible without starving the WRITE requests.
    
    Change-Id: I4ed52ea21d43b0e7c0769b2599779a3d3869c519
    Signed-off-by: Tatyana Brokhman <tlinder@codeaurora.org>
    Tatyana Brokhman authored and Daz Jones committed Jul 11, 2013
    Copy the full SHA
    829704c View commit details
    Browse the repository at this point in the history
  4. block: row: fix build

    KonstaT authored and Daz Jones committed Jul 11, 2013
    Copy the full SHA
    36c16b2 View commit details
    Browse the repository at this point in the history
  5. block: ROW: Correct minimum values of ROW tunable parameters

    The ROW scheduling algorithm exposes several tunable parameters.
    This patch updates the minimum allowed values for those parameters.
    
    Change-Id: I5ec19d54b694e2e83ad5376bd99cc91f084967f5
    Signed-off-by: Tatyana Brokhman <tlinder@codeaurora.org>
    Tatyana Brokhman authored and Daz Jones committed Jul 11, 2013
    Copy the full SHA
    f07142e View commit details
    Browse the repository at this point in the history
  6. block: ROW: Fix forced dispatch

    This patch fixes forced dispatch in the ROW scheduling algorithm.
    When the dispatch function is called with the forced flag on, we
    can't delay the dispatch of the requests that are in scheduler queues.
    Thus, when dispatch is called with forced turned on, we need to cancel
    idling, or not to idle at all.
    
    Change-Id: I3aa0da33ad7b59c0731c696f1392b48525b52ddc
    Signed-off-by: Tatyana Brokhman <tlinder@codeaurora.org>
    Tatyana Brokhman authored and Daz Jones committed Jul 11, 2013
    Copy the full SHA
    454712b View commit details
    Browse the repository at this point in the history
  7. row: Adding support for reinsert already dispatched req

    Add support for reinserting already dispatched request back to the
    schedulers internal data structures.
    The request will be reinserted back to the queue (head) it was
    dispatched from as if it was never dispatched.
    
    Change-Id: I70954df300774409c25b5821465fb3aa33d8feb5
    Signed-off-by: Tatyana Brokhman <tlinder@codeaurora.org>
    Tatyana Brokhman authored and Daz Jones committed Jul 11, 2013
    Copy the full SHA
    a91c218 View commit details
    Browse the repository at this point in the history
  8. block:row: fix idling mechanism in ROW

    This patch addresses the following issues found in the ROW idling
    mechanism:
    1. Fix the delay passed to queue_delayed_work (pass actual delay
       and not the time when to start the work)
    2. Change the idle time and the idling-trigger frequency to be
       HZ dependent (instead of using msec_to_jiffies())
    3. Destroy idle_workqueue() in queue_exit
    
    Change-Id: If86513ad6b4be44fb7a860f29bd2127197d8d5bf
    Signed-off-by: Tatyana Brokhman <tlinder@codeaurora.org>
    Tatyana Brokhman authored and Daz Jones committed Jul 11, 2013
    Copy the full SHA
    15df107 View commit details
    Browse the repository at this point in the history
  9. row: Add support for urgent request handling

    This patch adds support for handling urgent requests.
    ROW queue can be marked as "urgent" so if it was un-served in last
    dispatch cycle and a request was added to it - it will trigger
    issuing an urgent-request-notification to the block device driver.
    The block device driver may choose at stop the transmission of current
    ongoing request to handle the urgent one. Foe example: long WRITE may
    be stopped to handle an urgent READ. This decreases READ latency.
    
    Change-Id: I84954c13f5e3b1b5caeadc9fe1f9aa21208cb35e
    Signed-off-by: Tatyana Brokhman <tlinder@codeaurora.org>
    Tatyana Brokhman authored and Daz Jones committed Jul 11, 2013
    Copy the full SHA
    b2fefc1 View commit details
    Browse the repository at this point in the history
  10. block: row: Add some debug information on ROW queues

    1. Add a counter for number of requests on queue.
    2. Add function to print queues status (number requests
       currently on queue and number of already dispatched requests
       in current dispatch cycle).
    
    Change-Id: I1e98b9ca33853e6e6a8ddc53240f6cd6981e6024
    Signed-off-by: Tatyana Brokhman <tlinder@codeaurora.org>
    Tatyana Brokhman authored and Daz Jones committed Jul 11, 2013
    Copy the full SHA
    0f5708c View commit details
    Browse the repository at this point in the history
  11. block: row: Insert dispatch_quantum into struct row_queue

    There is really no point in keeping the dispatch quantum
    of a queue outside of it. By inserting it to the row_queue
    structure we spare extra level in accessing it.
    
    Change-Id: Ic77571818b643e71f9aafbb2ca93d0a92158b199
    Signed-off-by: Tatyana Brokhman <tlinder@codeaurora.org>
    Tatyana Brokhman authored and Daz Jones committed Jul 11, 2013
    Copy the full SHA
    0574ecd View commit details
    Browse the repository at this point in the history
  12. block: row: fix sysfs functions - idle_time conversion

    idle_time was updated to be stored in msec instead of jiffies.
    So there is no need to convert the value when reading from user or
    displaying the value to him.
    
    Change-Id: I58e074b204e90a90536d32199ac668112966e9cf
    Signed-off-by: Tatyana Brokhman <tlinder@codeaurora.org>
    Tatyana Brokhman authored and Daz Jones committed Jul 11, 2013
    Copy the full SHA
    ae5421f View commit details
    Browse the repository at this point in the history
  13. block: row: Aggregate row_queue parameters to one structure

    Each ROW queues has several parameters which default values are defined
    in separate arrays. This patch aggregates all default values into one
    array.
    The values in question are:
     - is idling enabled for the queue
     - queue quantum
     - can the queue notify on urgent request
    
    Change-Id: I3821b0a042542295069b340406a16b1000873ec6
    Signed-off-by: Tatyana Brokhman <tlinder@codeaurora.org>
    Tatyana Brokhman authored and Daz Jones committed Jul 11, 2013
    Copy the full SHA
    af8f880 View commit details
    Browse the repository at this point in the history
  14. u8815: enable ROW

    Daz Jones committed Jul 11, 2013
    Copy the full SHA
    5350c2c View commit details
    Browse the repository at this point in the history
  15. Revert "Import jb_chocolate genlock"

    This reverts commit 3947fc1.
    Kra1o5 authored and Daz Jones committed Jul 11, 2013
    Copy the full SHA
    1b015c6 View commit details
    Browse the repository at this point in the history
  16. Revert "Fast forward MSM GPU to jb_chocolate"

    This reverts commit 1984acc.
    
    Conflicts:
    	drivers/gpu/msm/adreno_drawctxt.c
    Kra1o5 authored and Daz Jones committed Jul 11, 2013
    Copy the full SHA
    67b8c6b View commit details
    Browse the repository at this point in the history
  17. genlock: update to ics_chocolate

    AU_LINUX_ANDROID_ICS_CHOCOLATE.04.00.04.005.325
    
    Conflicts:
    	drivers/base/genlock.c
    KonstaT authored and Daz Jones committed Jul 11, 2013
    Copy the full SHA
    18e6bdd View commit details
    Browse the repository at this point in the history
  18. gpu/kgsl: update to ics_chocolate

    AU_LINUX_ANDROID_ICS_CHOCOLATE.04.00.04.005.325
    KonstaT authored and Daz Jones committed Jul 11, 2013
    Copy the full SHA
    b26960d View commit details
    Browse the repository at this point in the history