> On 21 Mar 2018, at 20.27, Matias Bjørling <mb@xxxxxxxxxxx> wrote: > >> On 03/21/2018 03:36 PM, Keith Busch wrote: >> On Wed, Mar 21, 2018 at 03:06:05AM -0700, Matias Bjørling wrote: >>>> outside of nvme core so that we can use it form lightnvm. >>>> >>>> Signed-off-by: Javier González <javier@xxxxxxxxxxxx> >>>> --- >>>> drivers/lightnvm/core.c | 11 +++++++ >>>> drivers/nvme/host/core.c | 6 ++-- >>>> drivers/nvme/host/lightnvm.c | 74 ++++++++++++++++++++++++++++++++++++++++++++ >>>> drivers/nvme/host/nvme.h | 3 ++ >>>> include/linux/lightnvm.h | 24 ++++++++++++++ >>>> 5 files changed, 115 insertions(+), 3 deletions(-) >>>> >>>> diff --git a/drivers/nvme/host/core.c b/drivers/nvme/host/core.c >>>> index 2e9e9f973a75..af642ce6ba69 100644 >>>> --- a/drivers/nvme/host/core.c >>>> +++ b/drivers/nvme/host/core.c >>>> @@ -2127,9 +2127,9 @@ static int nvme_init_subsystem(struct nvme_ctrl *ctrl, struct nvme_id_ctrl *id) >>>> return ret; >>>> } >>>> -static int nvme_get_log_ext(struct nvme_ctrl *ctrl, struct nvme_ns *ns, >>>> - u8 log_page, void *log, >>>> - size_t size, size_t offset) >>>> +int nvme_get_log_ext(struct nvme_ctrl *ctrl, struct nvme_ns *ns, >>>> + u8 log_page, void *log, >>>> + size_t size, size_t offset) >>>> { >>>> struct nvme_command c = { }; >>>> unsigned long dwlen = size / 4 - 1; >>>> diff --git a/drivers/nvme/host/lightnvm.c b/drivers/nvme/host/lightnvm.c >>>> index 08f0f6b5bc06..ffd64a83c8c3 100644 >>>> --- a/drivers/nvme/host/lightnvm.c >>>> +++ b/drivers/nvme/host/lightnvm.c >>>> @@ -35,6 +35,10 @@ enum nvme_nvm_admin_opcode { >>>> nvme_nvm_admin_set_bb_tbl = 0xf1, >>>> }; >>>> >>> >>> <snip> >>> >>>> diff --git a/drivers/nvme/host/nvme.h b/drivers/nvme/host/nvme.h >>>> index 1ca08f4993ba..505f797f8c6c 100644 >>>> --- a/drivers/nvme/host/nvme.h >>>> +++ b/drivers/nvme/host/nvme.h >>>> @@ -396,6 +396,9 @@ int nvme_reset_ctrl(struct nvme_ctrl *ctrl); >>>> int nvme_delete_ctrl(struct nvme_ctrl *ctrl); >>>> int nvme_delete_ctrl_sync(struct nvme_ctrl *ctrl); >>>> +int nvme_get_log_ext(struct nvme_ctrl *ctrl, struct nvme_ns *ns, >>>> + u8 log_page, void *log, size_t size, size_t offset); >>>> + >>>> extern const struct attribute_group nvme_ns_id_attr_group; >>>> extern const struct block_device_operations nvme_ns_head_ops; >>>> >>> >>> >>> Keith, Christoph, Sagi, Is it okay that these two changes that exposes >>> the nvme_get_log_ext fn are carried through Jens' tree after the nvme >>> tree for 4.17 has been pulled? >> That's okay with me. Alteratively, if you want to split the generic nvme >> part out, I can apply that immediately and the API will be in the first >> nvme-4.17 pull request. > > Will do. I've sent the patch in another mail. Thanks! :) It’s fine with me. Matias: do you take that part of the patch out directly on our tree? Javier.