aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/block/rbd.c
AgeCommit message (Expand)AuthorFilesLines
2024-02-19rbd: pass queue_limits to blk_mq_alloc_diskChristoph Hellwig1-14/+15
2024-02-13block: pass a queue_limits argument to blk_mq_alloc_diskChristoph Hellwig1-1/+1
2024-02-06block: rbd: make rbd_bus_type constRicardo B. Marliere1-1/+1
2024-01-22rbd: don't move requests to the running list on errorsIlya Dryomov1-8/+14
2024-01-22rbd: remove usage of the deprecated ida_simple_*() APIChristophe JAILLET1-5/+5
2023-09-26rbd: take header_rwsem in rbd_dev_refresh() only when updatingIlya Dryomov1-11/+11
2023-09-26rbd: decouple parent info read-in from updating rbd_devIlya Dryomov1-62/+80
2023-09-26rbd: decouple header read-in from updating rbd_dev->headerIlya Dryomov1-92/+114
2023-09-26rbd: move rbd_dev_refresh() definitionIlya Dryomov1-35/+33
2023-08-30rbd: use list_for_each_entry() helperJinjie Ruan1-3/+1
2023-08-02rbd: prevent busy loop when requesting exclusive lockIlya Dryomov1-13/+15
2023-07-26rbd: retrieve and check lock owner twice before blocklistingIlya Dryomov1-2/+23
2023-07-26rbd: harden get_lock_owner_info() a bitIlya Dryomov1-6/+15
2023-07-26rbd: make get_lock_owner_info() return a single locker or NULLIlya Dryomov1-33/+51
2023-06-26Merge tag 'for-6.5/block-2023-06-23' of git://git.kernel.dk/linuxLinus Torvalds1-3/+3
2023-06-12block: replace fmode_t with a block-specific type for block open flagsChristoph Hellwig1-1/+1
2023-06-12block: remove the unused mode argument to ->releaseChristoph Hellwig1-1/+1
2023-06-12block: pass a gendisk to ->openChristoph Hellwig1-2/+2
2023-06-06rbd: get snapshot context after exclusive lock is ensured to be heldIlya Dryomov1-7/+23
2023-06-06rbd: move RBD_OBJ_FLAG_COPYUP_ENABLED flag settingIlya Dryomov1-11/+21
2023-03-23driver core: bus: mark the struct bus_type for sysfs callbacks as constantGreg Kroah-Hartman1-19/+15
2023-03-02Merge tag 'ceph-for-6.3-rc1' of https://github.com/ceph/ceph-clientLinus Torvalds1-11/+9
2023-02-26rbd: avoid use-after-free in do_rbd_add() when rbd_dev_create() failsIlya Dryomov1-11/+9
2023-02-03rbd: use bvec_set_page to initialize the copy up bvecChristoph Hellwig1-4/+3
2022-10-27rbd: fix possible memory leak in rbd_sysfs_init()Yang Yingliang1-1/+3
2022-08-11Merge tag 'ceph-for-5.20-rc1' of https://github.com/ceph/ceph-clientLinus Torvalds1-3/+3
2022-08-03libceph: clean up ceph_osdc_start_request prototypeJeff Layton1-3/+3
2022-06-28block: remove blk_cleanup_diskChristoph Hellwig1-1/+1
2022-06-02Merge tag 'ceph-for-5.19-rc1' of https://github.com/ceph/ceph-clientLinus Torvalds1-7/+6
2022-05-25rbd: replace usage of found with dedicated list iterator variableJakob Koschel1-7/+6
2022-04-17block: remove QUEUE_FLAG_DISCARDChristoph Hellwig1-1/+0
2022-02-17block: fix surprise removal for drivers calling blk_set_queue_dyingChristoph Hellwig1-1/+1
2022-01-20Merge tag 'ceph-for-5.17-rc1' of git://github.com/ceph/ceph-clientLinus Torvalds1-2/+3
2022-01-13rbd: make const pointer spaces a static const arrayColin Ian King1-1/+1
2022-01-13libceph: generalize addr/ip parsing based on delimiterVenky Shankar1-1/+2
2021-11-29block: remove GENHD_FL_EXT_DEVTChristoph Hellwig1-4/+2
2021-10-18rbd: add add_disk() error handlingLuis Chamberlain1-1/+5
2021-10-18block: Rename BLKDEV_MAX_RQ -> BLKDEV_DEFAULT_RQJohn Garry1-1/+1
2021-08-16rbd: use bvec_virtChristoph Hellwig1-2/+1
2021-08-02rbd: use memzero_bvecChristoph Hellwig1-13/+2
2021-07-21rbd: resurrect setting of disk->private_data in rbd_init_disk()Ilya Dryomov1-0/+1
2021-07-20rbd: don't hold lock_rwsem while running_list is being drainedIlya Dryomov1-7/+5
2021-07-20rbd: always kick acquire on "acquired" and "released" notificationsIlya Dryomov1-13/+7
2021-06-11rbd: use blk_mq_alloc_disk and blk_cleanup_diskChristoph Hellwig1-34/+18
2021-01-24rbd: remove the ->set_read_only methodChristoph Hellwig1-19/+0
2020-12-17Merge tag 'ceph-for-5.11-rc1' of git://github.com/ceph/ceph-clientLinus Torvalds1-2/+6
2020-12-14libceph, rbd: ignore addr->type while comparing in some casesIlya Dryomov1-2/+6
2020-11-16rbd: use set_capacity_and_notifyChristoph Hellwig1-2/+1
2020-11-16rbd: implement ->set_read_only to hook into BLKROSET processingChristoph Hellwig1-36/+4
2020-10-21Merge tag 'ceph-for-5.10-rc1' of git://github.com/ceph/ceph-clientLinus Torvalds1-4/+4
2020-10-13Merge tag 'block-5.10-2020-10-12' of git://git.kernel.dk/linux-blockLinus Torvalds1-2/+2
2020-10-12libceph, rbd, ceph: "blacklist" -> "blocklist"Ilya Dryomov1-4/+4
2020-09-24bdi: replace BDI_CAP_STABLE_WRITES with a queue and a sb flagChristoph Hellwig1-1/+1
2020-09-07rbd: require global CAP_SYS_ADMIN for mapping and unmappingIlya Dryomov1-0/+12
2020-09-02block: add a new revalidate_disk_size helperChristoph Hellwig1-1/+1
2020-08-23treewide: Use fallthrough pseudo-keywordGustavo A. R. Silva1-4/+4
2020-07-16treewide: Remove uninitialized_var() usageKees Cook1-1/+1
2020-06-16libceph: move away from global osd_req_flagsIlya Dryomov1-1/+3
2020-06-01rbd: compression_hint optionIlya Dryomov1-1/+42
2020-06-01libceph: support for alloc hint flagsIlya Dryomov1-1/+2
2020-04-13rbd: don't mess with a page vector in rbd_notify_op_lock()Ilya Dryomov1-5/+1
2020-04-13rbd: don't test rbd_dev->opts in rbd_dev_image_release()Ilya Dryomov1-1/+1
2020-04-13rbd: call rbd_dev_unprobe() after unwatching and flushing notifiesIlya Dryomov1-4/+4
2020-04-13rbd: avoid a deadlock on header_rwsem when flushing notifiesIlya Dryomov1-4/+13
2020-03-30rbd: enable multiple blk-mq queuesHannes Reinecke1-1/+1
2020-03-30rbd: embed image request in blk-mq pduIlya Dryomov1-87/+51
2020-03-30rbd: acquire header_rwsem just once in rbd_queue_workfn()Ilya Dryomov1-28/+31
2020-03-30rbd: get rid of img_request_layered_clear()Ilya Dryomov1-8/+1
2020-03-30rbd: kill img_request krefHannes Reinecke1-19/+5
2020-03-30rbd: remove barriers from img_request_layered_{set,clear,test}()Ilya Dryomov1-3/+0
2020-02-08Merge branch 'merge.nfs-fs_parse.1' of git://git.kernel.org/pub/scm/linux/ker...Linus Torvalds1-20/+11
2020-02-07fs_parse: fold fs_parameter_desc/fs_parameter_specAl Viro1-6/+2
2020-02-07fs_parser: remove fs_parameter_description name fieldEric Sandeen1-1/+0
2020-02-07new primitive: __fs_parse()Al Viro1-1/+1
2020-02-07switch rbd and libceph to p_log-based primitivesAl Viro1-8/+6
2020-02-07struct p_log, variants of warnf() et.al. taking that one insteadAl Viro1-0/+1
2020-02-07Pass consistent param->type to fs_parse()Al Viro1-5/+2
2020-01-27rbd: set the 'device' link in sysfsHannes Reinecke1-1/+1
2020-01-27rbd: work around -Wuninitialized warningArnd Bergmann1-1/+1
2019-11-27libceph, rbd, ceph: convert to use the new mount APIDavid Howells1-109/+153
2019-11-25rbd: ask for a weaker incompat mask for read-only mappingsIlya Dryomov1-4/+11
2019-11-25rbd: don't query snapshot featuresIlya Dryomov1-37/+1
2019-11-25rbd: remove snapshot existence validation codeIlya Dryomov1-39/+3
2019-11-25rbd: don't establish watch for read-only mappingsIlya Dryomov1-14/+27
2019-11-25rbd: don't acquire exclusive lock for read-only mappingsIlya Dryomov1-2/+13
2019-11-25rbd: disallow read-write partitions on images mapped read-onlyIlya Dryomov1-3/+10
2019-11-25rbd: treat images mapped read-only seriouslyIlya Dryomov1-5/+8
2019-11-25rbd: introduce RBD_DEV_FLAG_READONLYIlya Dryomov1-5/+14
2019-11-25rbd: introduce rbd_is_snap()Ilya Dryomov1-8/+13
2019-11-25rbd: fix spelling mistake "requeueing" -> "requeuing"Colin Ian King1-1/+1
2019-11-14rbd: silence bogus uninitialized warning in rbd_object_map_update_finish()Ilya Dryomov1-1/+1
2019-10-15rbd: cancel lock_dwork if the wait is interruptedDongsheng Yang1-3/+6
2019-09-16rbd: pull rbd_img_request_create() dout out into the callersIlya Dryomov1-2/+6
2019-09-16rbd: fix response length parameter for encoded stringsDongsheng Yang1-4/+6
2019-08-28rbd: restore zeroing past the overlap when reading from parentIlya Dryomov1-0/+11
2019-07-18Merge tag 'ceph-for-5.3-rc1' of git://github.com/ceph/ceph-clientLinus Torvalds1-588/+1600
2019-07-08rbd: setallochint only if object doesn't existIlya Dryomov1-5/+14
2019-07-08rbd: support for object-map and fast-diffIlya Dryomov1-3/+717
2019-07-08rbd: call rbd_dev_mapping_set() from rbd_dev_image_probe()Ilya Dryomov1-8/+6
2019-07-08libceph: change ceph_osdc_call() to take page vector for responseIlya Dryomov1-4/+4
2019-07-08rbd: new exclusive lock wait/wake codeIlya Dryomov1-143/+186
2019-07-08rbd: quiescing lock should wait for image requestsIlya Dryomov1-14/+90
2019-07-08rbd: lock should be quiesced on reacquireIlya Dryomov1-14/+21
2019-07-08rbd: introduce copyup state machineIlya Dryomov1-64/+123
2019-07-08rbd: rename rbd_obj_setup_*() to rbd_obj_init_*()Ilya Dryomov1-13/+13
2019-07-08rbd: move OSD request allocation into object request state machinesIlya Dryomov1-118/+96
2019-07-08rbd: factor out __rbd_osd_setup_discard_ops()Ilya Dryomov1-16/+27
2019-07-08rbd: factor out rbd_osd_setup_copyup()Ilya Dryomov1-12/+17
2019-07-08rbd: introduce obj_req->osd_reqs listIlya Dryomov1-91/+100
2019-07-08rbd: introduce image request state machineIlya Dryomov1-57/+137
2019-07-08rbd: move OSD request submission into object request state machinesIlya Dryomov1-11/+49
2019-07-08rbd: get rid of RBD_OBJ_WRITE_{FLAT,GUARD}Ilya Dryomov1-52/+60
2019-07-08rbd: replace obj_req->tried_parent with obj_req->read_stateIlya Dryomov1-36/+46
2019-07-08rbd: get rid of obj_req->xferred, obj_req->result and img_req->xferredIlya Dryomov1-91/+58
2019-05-07rbd: don't assert on writes to snapshotsIlya Dryomov1-2/+6
2019-05-07rbd: client_mutex is never nestedIlya Dryomov1-1/+1
2019-05-07rbd: convert all rbd_assert(0) to BUG()Arnd Bergmann1-6/+6
2019-05-07rbd: avoid clang -Wuninitialized warningArnd Bergmann1-1/+1
2019-03-20rbd: drop wait_for_latest_osdmap()Ilya Dryomov1-18/+2
2019-03-18rbd: set io_min, io_opt and discard_granularity to alloc_sizeIlya Dryomov1-4/+4
2019-03-12Merge tag 'ceph-for-5.1-rc1' of git://github.com/ceph/ceph-clientLinus Torvalds1-103/+297
2019-03-08Merge tag 'for-5.1/block-20190302' of git://git.kernel.dk/linux-blockLinus Torvalds1-1/+1
2019-03-05rbd: advertise support for RBD_FEATURE_DEEP_FLATTENIlya Dryomov1-0/+2
2019-03-05rbd: whole-object write and zeroout should copyup when snapshots existIlya Dryomov1-5/+7
2019-03-05rbd: copyup with an empty snapshot context (aka deep-copyup)Ilya Dryomov1-10/+79
2019-03-05rbd: introduce rbd_obj_issue_copyup_ops()Ilya Dryomov1-33/+43
2019-03-05rbd: stop copying num_osd_ops in rbd_obj_issue_copyup()Ilya Dryomov1-31/+59
2019-03-05rbd: factor out __rbd_osd_req_create()Ilya Dryomov1-7/+12
2019-03-05rbd: clear ->xferred on error from rbd_obj_issue_copyup()Ilya Dryomov1-0/+1
2019-03-05rbd: remove experimental designation from kernel layeringIlya Dryomov1-8/+0
2019-03-05rbd: round off and ignore discards that are too smallIlya Dryomov1-6/+55
2019-03-05rbd: handle DISCARD and WRITE_ZEROES separatelyIlya Dryomov1-10/+51
2019-03-05rbd: get rid of obj_req->obj_request_countIlya Dryomov1-5/+0
2019-02-15block: kill BLK_MQ_F_SG_MERGEMing Lei1-1/+1
2019-01-22block: rbd: convert to use BUS_ATTR_WO and ROGreg Kroah-Hartman1-26/+19
2019-01-10rbd: don't return 0 on unmap if RBD_DEV_FLAG_REMOVING is setIlya Dryomov1-5/+4
2018-10-22libceph, rbd, ceph: move ceph_osdc_alloc_messages() callsIlya Dryomov1-7/+12
2018-10-22libceph: osd_req_op_cls_init() doesn't need to take opcodeIlya Dryomov1-2/+1
2018-10-22rbd: add __init/__exit annotationsChengguang Xu1-3/+3
2018-09-06rbd: support cloning across namespacesIlya Dryomov1-14/+97
2018-09-06rbd: factor out get_parent_info()Ilya Dryomov1-48/+86
2018-08-20Merge tag 'ceph-for-4.19-rc1' of git://github.com/ceph/ceph-clientLinus Torvalds1-37/+88
2018-08-02libceph: use timespec64 for r_mtimeArnd Bergmann1-1/+1
2018-08-02rbd: support for images within namespacesIlya Dryomov1-2/+49
2018-08-02rbd: pass rbd_spec into parse_rbd_opts_token()Ilya Dryomov1-33/+37
2018-08-02libceph: amend "bad option arg" error messageIlya Dryomov1-1/+1
2018-06-21atomics/treewide: Rename __atomic_add_unless() => atomic_fetch_add_unless()Mark Rutland1-1/+1
2018-06-15Merge tag 'ceph-for-4.18-rc1' of git://github.com/ceph/ceph-clientLinus Torvalds1-4/+7
2018-06-04rbd: flush rbd_dev->watch_dwork after watch is unregisteredDongsheng Yang1-1/+1
2018-06-04libceph, rbd: add error handling for osd_req_op_cls_init()Chengguang Xu1-3/+6
2018-06-04Merge tag 'for-4.18/block-20180603' of git://git.kernel.dk/linux-blockLinus Torvalds1-22/+22
2018-05-24block drivers/block: Use octal not symbolic permissionsJoe Perches1-22/+22
2018-05-10libceph: add osd_req_op_extent_osd_data_bvecs()Ilya Dryomov1-1/+3
2018-04-16rbd: notrim map optionIlya Dryomov1-5/+14
2018-04-16rbd: adjust queue limits for "fancy" stripingIlya Dryomov1-9/+8
2018-04-16rbd: avoid Wreturn-type warningsArnd Bergmann1-3/+3
2018-04-16rbd: support timeout in rbd_wait_state_locked()Dongsheng Yang1-1/+21
2018-04-16rbd: refactor rbd_wait_state_locked()Ilya Dryomov1-17/+26
2018-04-10Merge tag 'ceph-for-4.17-rc1' of git://github.com/ceph/ceph-clientLinus Torvalds1-1472/+980
2018-04-02rbd: remove VLA usageKyle Spiers1-4/+4
2018-04-02rbd: fix spelling mistake: "reregisteration" -> "reregistration"Colin Ian King1-1/+1
2018-04-02rbd: get the latest osdmap when using an existing clientIlya Dryomov1-36/+33
2018-04-02rbd: move rbd_get_client() below rbd_put_client()Ilya Dryomov1-20/+20
2018-04-02rbd: remove redundant declaration of rbd_spec_put()Ilya Dryomov1-1/+0
2018-04-02rbd: allow "fancy" stripingIlya Dryomov1-27/+2
2018-04-02rbd: introduce OWN_BVECS data typeIlya Dryomov1-7/+149
2018-04-02rbd: remove rbd_parent_request_{create,destroy}()Ilya Dryomov1-68/+6
2018-04-02rbd: get rid of img_req->{offset,length}Ilya Dryomov1-18/+8
2018-04-02rbd: remove rbd_img_request_fill() and helpersIlya Dryomov1-98/+0
2018-04-02rbd: switch to common striping frameworkIlya Dryomov1-23/+168
2018-04-02rbd: create+truncate for whole-object layered discardsIlya Dryomov1-1/+6
2018-04-02rbd: move to obj_req->img_extentsIlya Dryomov1-52/+98
2018-04-02rbd: incorporate ceph_object_extentIlya Dryomov1-37/+34
2018-04-02rbd: store data_type in img_req instead of obj_reqIlya Dryomov1-26/+8
2018-04-02rbd: remove obj_req->flags fieldIlya Dryomov1-35/+0
2018-04-02rbd: remove old request completion codeIlya Dryomov1-172/+3
2018-04-02rbd: new request completion codeIlya Dryomov1-13/+55
2018-04-02rbd: update rbd_img_request_submit() signatureIlya Dryomov1-10/+3
2018-04-02rbd: add img_req->op_type fieldIlya Dryomov1-63/+12
2018-04-02rbd: simplify rbd_osd_req_create()Ilya Dryomov1-45/+14
2018-04-02rbd: remove old request handling codeIlya Dryomov1-730/+4
2018-04-02rbd: new request handling codeIlya Dryomov1-77/+601
2018-04-02rbd: move from raw pages to bvec data descriptorsIlya Dryomov1-78/+77
2018-04-02rbd: get rid of img_req->copyup_pagesIlya Dryomov1-34/+9
2018-04-02rbd: don't (ab)use obj_req->pages for stat requestsIlya Dryomov1-10/+5
2018-04-02rbd: remove bio cloning helpersIlya Dryomov1-141/+0
2018-04-02libceph, rbd: new bio handling code (aka don't clone bios)Ilya Dryomov1-27/+40
2018-04-02rbd: start enums at 1 instead of 0Ilya Dryomov1-2/+4
2018-04-02rbd: set max_segment_size to UINT_MAXIlya Dryomov1-1/+1
2018-03-17block: Move SECTOR_SIZE and SECTOR_SHIFT definitions into <linux/blkdev.h>Bart Van Assche1-9/+0
2018-03-08block: Use blk_queue_flag_*() in drivers instead of queue_flag_*()Bart Van Assche1-2/+2
2018-01-29rbd: whitelist RBD_FEATURE_OPERATIONS feature bitIlya Dryomov1-1/+3
2018-01-29rbd: don't NULL out ->obj_request in rbd_img_obj_parent_read_full()Ilya Dryomov1-2/+0
2018-01-29rbd: use kmem_cache_zalloc() in rbd_img_request_create()Ilya Dryomov1-7/+2
2018-01-29rbd: obj_request->completion is unusedIlya Dryomov1-6/+1
2018-01-09rbd: set max_segments to USHRT_MAXIlya Dryomov1-1/+1
2018-01-09rbd: reacquire lock should update lock owner client idFlorian Margaine1-5/+11
2017-11-13rbd: default to single-major device number schemeIlya Dryomov1-4/+3
2017-11-13rbd: set discard_alignment to zeroDavid Disseldorp1-1/+0
2017-11-13rbd: get rid of rbd_mapping::read_onlyIlya Dryomov1-19/+4