• Linus Torvalds's avatar
    Merge branch 'for-4.1/core' of git://git.kernel.dk/linux-block · d82312c8
    Linus Torvalds authored
    Pull block layer core bits from Jens Axboe:
     "This is the core pull request for 4.1.  Not a lot of stuff in here for
      this round, mostly little fixes or optimizations.  This pull request
      contains:
    
       - An optimization that speeds up queue runs on blk-mq, especially for
         the case where there's a large difference between nr_cpu_ids and
         the actual mapped software queues on a hardware queue.  From Chong
         Yuan.
    
       - Honor node local allocations for requests on legacy devices.  From
         David Rientjes.
    
       - Cleanup of blk_mq_rq_to_pdu() from me.
    
       - exit_aio() fixup from me, greatly speeding up exiting multiple IO
         contexts off exit_group().  For my particular test case, fio exit
         took ~6 seconds.  A typical case of both exposing RCU grace periods
         to user space, and serializing exit of them.
    
       - Make blk_mq_queue_enter() honor the gfp mask passed in, so we only
         wait if __GFP_WAIT is set.  From Keith Busch.
    
       - blk-mq exports and two added helpers from Mike Snitzer, which will
         be used by the dm-mq code.
    
       - Cleanups of blk-mq queue init from Wei Fang and Xiaoguang Wang"
    
    * 'for-4.1/core' of git://git.kernel.dk/linux-block:
      blk-mq: reduce unnecessary software queue looping
      aio: fix serial draining in exit_aio()
      blk-mq: cleanup blk_mq_rq_to_pdu()
      blk-mq: put blk_queue_rq_timeout together in blk_mq_init_queue()
      block: remove redundant check about 'set->nr_hw_queues' in blk_mq_alloc_tag_set()
      block: allocate request memory local to request queue
      blk-mq: don't wait in blk_mq_queue_enter() if __GFP_WAIT isn't set
      blk-mq: export blk_mq_run_hw_queues
      blk-mq: add blk_mq_init_allocated_queue and export blk_mq_register_disk
    d82312c8
blk-mq.c 51.9 KB