Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux

libceph, rbd, ceph: WRITE | ONDISK -> WRITE

CEPH_OSD_FLAG_ONDISK is set in account_request().

Signed-off-by: Ilya Dryomov <idryomov@gmail.com>
Reviewed-by: Jeff Layton <jlayton@redhat.com>
Reviewed-by: Sage Weil <sage@redhat.com>

+21 -35
+2 -4
drivers/block/rbd.c
··· 1981 1981 1982 1982 return __rbd_osd_req_create(rbd_dev, snapc, num_ops, 1983 1983 (op_type == OBJ_OP_WRITE || op_type == OBJ_OP_DISCARD) ? 1984 - CEPH_OSD_FLAG_WRITE | CEPH_OSD_FLAG_ONDISK : CEPH_OSD_FLAG_READ, 1985 - obj_request); 1984 + CEPH_OSD_FLAG_WRITE : CEPH_OSD_FLAG_READ, obj_request); 1986 1985 } 1987 1986 1988 1987 /* ··· 2007 2008 2008 2009 return __rbd_osd_req_create(img_request->rbd_dev, 2009 2010 img_request->snapc, num_osd_ops, 2010 - CEPH_OSD_FLAG_WRITE | CEPH_OSD_FLAG_ONDISK, 2011 - obj_request); 2011 + CEPH_OSD_FLAG_WRITE, obj_request); 2012 2012 } 2013 2013 2014 2014 static void rbd_osd_req_destroy(struct ceph_osd_request *osd_req)
+5 -9
fs/ceph/addr.c
··· 1018 1018 &ci->i_layout, vino, 1019 1019 offset, &len, 0, num_ops, 1020 1020 CEPH_OSD_OP_WRITE, 1021 - CEPH_OSD_FLAG_WRITE | 1022 - CEPH_OSD_FLAG_ONDISK, 1021 + CEPH_OSD_FLAG_WRITE, 1023 1022 snapc, truncate_seq, 1024 1023 truncate_size, false); 1025 1024 if (IS_ERR(req)) { ··· 1028 1029 min(num_ops, 1029 1030 CEPH_OSD_SLAB_OPS), 1030 1031 CEPH_OSD_OP_WRITE, 1031 - CEPH_OSD_FLAG_WRITE | 1032 - CEPH_OSD_FLAG_ONDISK, 1032 + CEPH_OSD_FLAG_WRITE, 1033 1033 snapc, truncate_seq, 1034 1034 truncate_size, true); 1035 1035 BUG_ON(IS_ERR(req)); ··· 1678 1680 1679 1681 req = ceph_osdc_new_request(&fsc->client->osdc, &ci->i_layout, 1680 1682 ceph_vino(inode), 0, &len, 0, 1, 1681 - CEPH_OSD_OP_CREATE, 1682 - CEPH_OSD_FLAG_ONDISK | CEPH_OSD_FLAG_WRITE, 1683 + CEPH_OSD_OP_CREATE, CEPH_OSD_FLAG_WRITE, 1683 1684 NULL, 0, 0, false); 1684 1685 if (IS_ERR(req)) { 1685 1686 err = PTR_ERR(req); ··· 1695 1698 1696 1699 req = ceph_osdc_new_request(&fsc->client->osdc, &ci->i_layout, 1697 1700 ceph_vino(inode), 0, &len, 1, 3, 1698 - CEPH_OSD_OP_WRITE, 1699 - CEPH_OSD_FLAG_ONDISK | CEPH_OSD_FLAG_WRITE, 1701 + CEPH_OSD_OP_WRITE, CEPH_OSD_FLAG_WRITE, 1700 1702 NULL, ci->i_truncate_seq, 1701 1703 ci->i_truncate_size, false); 1702 1704 if (IS_ERR(req)) { ··· 1868 1872 goto out_unlock; 1869 1873 } 1870 1874 1871 - wr_req->r_flags = CEPH_OSD_FLAG_WRITE | CEPH_OSD_FLAG_ONDISK; 1875 + wr_req->r_flags = CEPH_OSD_FLAG_WRITE; 1872 1876 osd_req_op_init(wr_req, 0, CEPH_OSD_OP_CREATE, CEPH_OSD_OP_FLAG_EXCL); 1873 1877 ceph_oloc_copy(&wr_req->r_base_oloc, &rd_req->r_base_oloc); 1874 1878 ceph_oid_copy(&wr_req->r_base_oid, &rd_req->r_base_oid);
+4 -11
fs/ceph/file.c
··· 759 759 goto out; 760 760 } 761 761 762 - req->r_flags = CEPH_OSD_FLAG_ORDERSNAP | 763 - CEPH_OSD_FLAG_ONDISK | 764 - CEPH_OSD_FLAG_WRITE; 762 + req->r_flags = CEPH_OSD_FLAG_ORDERSNAP | CEPH_OSD_FLAG_WRITE; 765 763 ceph_oloc_copy(&req->r_base_oloc, &orig_req->r_base_oloc); 766 764 ceph_oid_copy(&req->r_base_oid, &orig_req->r_base_oid); 767 765 ··· 831 833 if (ret2 < 0) 832 834 dout("invalidate_inode_pages2_range returned %d\n", ret2); 833 835 834 - flags = CEPH_OSD_FLAG_ORDERSNAP | 835 - CEPH_OSD_FLAG_ONDISK | 836 - CEPH_OSD_FLAG_WRITE; 836 + flags = CEPH_OSD_FLAG_ORDERSNAP | CEPH_OSD_FLAG_WRITE; 837 837 } else { 838 838 flags = CEPH_OSD_FLAG_READ; 839 839 } ··· 1030 1034 if (ret < 0) 1031 1035 dout("invalidate_inode_pages2_range returned %d\n", ret); 1032 1036 1033 - flags = CEPH_OSD_FLAG_ORDERSNAP | 1034 - CEPH_OSD_FLAG_ONDISK | 1035 - CEPH_OSD_FLAG_WRITE; 1037 + flags = CEPH_OSD_FLAG_ORDERSNAP | CEPH_OSD_FLAG_WRITE; 1036 1038 1037 1039 while ((len = iov_iter_count(from)) > 0) { 1038 1040 size_t left; ··· 1525 1531 ceph_vino(inode), 1526 1532 offset, length, 1527 1533 0, 1, op, 1528 - CEPH_OSD_FLAG_WRITE | 1529 - CEPH_OSD_FLAG_ONDISK, 1534 + CEPH_OSD_FLAG_WRITE, 1530 1535 NULL, 0, 0, false); 1531 1536 if (IS_ERR(req)) { 1532 1537 ret = PTR_ERR(req);
+6 -6
net/ceph/cls_lock_client.c
··· 69 69 dout("%s lock_name %s type %d cookie %s tag %s desc %s flags 0x%x\n", 70 70 __func__, lock_name, type, cookie, tag, desc, flags); 71 71 ret = ceph_osdc_call(osdc, oid, oloc, "lock", "lock", 72 - CEPH_OSD_FLAG_WRITE | CEPH_OSD_FLAG_ONDISK, 73 - lock_op_page, lock_op_buf_size, NULL, NULL); 72 + CEPH_OSD_FLAG_WRITE, lock_op_page, 73 + lock_op_buf_size, NULL, NULL); 74 74 75 75 dout("%s: status %d\n", __func__, ret); 76 76 __free_page(lock_op_page); ··· 117 117 118 118 dout("%s lock_name %s cookie %s\n", __func__, lock_name, cookie); 119 119 ret = ceph_osdc_call(osdc, oid, oloc, "lock", "unlock", 120 - CEPH_OSD_FLAG_WRITE | CEPH_OSD_FLAG_ONDISK, 121 - unlock_op_page, unlock_op_buf_size, NULL, NULL); 120 + CEPH_OSD_FLAG_WRITE, unlock_op_page, 121 + unlock_op_buf_size, NULL, NULL); 122 122 123 123 dout("%s: status %d\n", __func__, ret); 124 124 __free_page(unlock_op_page); ··· 170 170 dout("%s lock_name %s cookie %s locker %s%llu\n", __func__, lock_name, 171 171 cookie, ENTITY_NAME(*locker)); 172 172 ret = ceph_osdc_call(osdc, oid, oloc, "lock", "break_lock", 173 - CEPH_OSD_FLAG_WRITE | CEPH_OSD_FLAG_ONDISK, 174 - break_op_page, break_op_buf_size, NULL, NULL); 173 + CEPH_OSD_FLAG_WRITE, break_op_page, 174 + break_op_buf_size, NULL, NULL); 175 175 176 176 dout("%s: status %d\n", __func__, ret); 177 177 __free_page(break_op_page);
+4 -5
net/ceph/osd_client.c
··· 1704 1704 1705 1705 static void account_request(struct ceph_osd_request *req) 1706 1706 { 1707 - WARN_ON(req->r_flags & CEPH_OSD_FLAG_ACK); 1707 + WARN_ON(req->r_flags & (CEPH_OSD_FLAG_ACK | CEPH_OSD_FLAG_ONDISK)); 1708 1708 WARN_ON(!(req->r_flags & (CEPH_OSD_FLAG_READ | CEPH_OSD_FLAG_WRITE))); 1709 1709 1710 1710 req->r_flags |= CEPH_OSD_FLAG_ONDISK; ··· 3539 3539 3540 3540 ceph_oid_copy(&lreq->t.base_oid, oid); 3541 3541 ceph_oloc_copy(&lreq->t.base_oloc, oloc); 3542 - lreq->t.flags = CEPH_OSD_FLAG_WRITE | CEPH_OSD_FLAG_ONDISK; 3542 + lreq->t.flags = CEPH_OSD_FLAG_WRITE; 3543 3543 lreq->mtime = CURRENT_TIME; 3544 3544 3545 3545 lreq->reg_req = alloc_linger_request(lreq); ··· 3597 3597 3598 3598 ceph_oid_copy(&req->r_base_oid, &lreq->t.base_oid); 3599 3599 ceph_oloc_copy(&req->r_base_oloc, &lreq->t.base_oloc); 3600 - req->r_flags = CEPH_OSD_FLAG_WRITE | CEPH_OSD_FLAG_ONDISK; 3600 + req->r_flags = CEPH_OSD_FLAG_WRITE; 3601 3601 req->r_mtime = CURRENT_TIME; 3602 3602 osd_req_op_watch_init(req, 0, lreq->linger_id, 3603 3603 CEPH_OSD_WATCH_OP_UNWATCH); ··· 4163 4163 int page_align = off & ~PAGE_MASK; 4164 4164 4165 4165 req = ceph_osdc_new_request(osdc, layout, vino, off, &len, 0, 1, 4166 - CEPH_OSD_OP_WRITE, 4167 - CEPH_OSD_FLAG_ONDISK | CEPH_OSD_FLAG_WRITE, 4166 + CEPH_OSD_OP_WRITE, CEPH_OSD_FLAG_WRITE, 4168 4167 snapc, truncate_seq, truncate_size, 4169 4168 true); 4170 4169 if (IS_ERR(req))