]> git.proxmox.com Git - mirror_ubuntu-artful-kernel.git/blobdiff - drivers/block/rbd.c
Merge tag 'ceph-for-4.12-rc1' of git://github.com/ceph/ceph-client
[mirror_ubuntu-artful-kernel.git] / drivers / block / rbd.c
index 3402ff7414c559b27817ae1f50fac0081192b991..454bf9c34882f33d673ccbaf0c8afa4f3ee18ad4 100644 (file)
@@ -1923,7 +1923,7 @@ static void rbd_osd_req_format_write(struct rbd_obj_request *obj_request)
 {
        struct ceph_osd_request *osd_req = obj_request->osd_req;
 
-       osd_req->r_mtime = CURRENT_TIME;
+       ktime_get_real_ts(&osd_req->r_mtime);
        osd_req->r_data_offset = obj_request->offset;
 }
 
@@ -4348,9 +4348,8 @@ out:
        return ret;
 }
 
-static int rbd_init_request(void *data, struct request *rq,
-               unsigned int hctx_idx, unsigned int request_idx,
-               unsigned int numa_node)
+static int rbd_init_request(struct blk_mq_tag_set *set, struct request *rq,
+               unsigned int hctx_idx, unsigned int numa_node)
 {
        struct work_struct *work = blk_mq_rq_to_pdu(rq);
 
@@ -4358,7 +4357,7 @@ static int rbd_init_request(void *data, struct request *rq,
        return 0;
 }
 
-static struct blk_mq_ops rbd_mq_ops = {
+static const struct blk_mq_ops rbd_mq_ops = {
        .queue_rq       = rbd_queue_rq,
        .init_request   = rbd_init_request,
 };
@@ -4421,7 +4420,6 @@ static int rbd_init_disk(struct rbd_device *rbd_dev)
        q->limits.discard_granularity = segment_size;
        q->limits.discard_alignment = segment_size;
        blk_queue_max_discard_sectors(q, segment_size / SECTOR_SIZE);
-       q->limits.discard_zeroes_data = 1;
 
        if (!ceph_test_opt(rbd_dev->rbd_client->client, NOCRC))
                q->backing_dev_info->capabilities |= BDI_CAP_STABLE_WRITES;