lkml.org 
[lkml]   [2018]   [May]   [16]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    Patch in this message
    /
    From
    Subject[PATCH 29/42] rtc/proc: switch to proc_create_single_data
    Date
    And stop trying to get a reference on the submodule, procfs code deals
    with release after an unloaded module and thus removed proc entry.

    Signed-off-by: Christoph Hellwig <hch@lst.de>
    Acked-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
    ---
    drivers/rtc/rtc-proc.c | 33 ++-------------------------------
    1 file changed, 2 insertions(+), 31 deletions(-)

    diff --git a/drivers/rtc/rtc-proc.c b/drivers/rtc/rtc-proc.c
    index 31e7e23cc5be..a9dd9218fae2 100644
    --- a/drivers/rtc/rtc-proc.c
    +++ b/drivers/rtc/rtc-proc.c
    @@ -107,40 +107,11 @@ static int rtc_proc_show(struct seq_file *seq, void *offset)
    return 0;
    }

    -static int rtc_proc_open(struct inode *inode, struct file *file)
    -{
    - int ret;
    - struct rtc_device *rtc = PDE_DATA(inode);
    -
    - if (!try_module_get(rtc->owner))
    - return -ENODEV;
    -
    - ret = single_open(file, rtc_proc_show, rtc);
    - if (ret)
    - module_put(rtc->owner);
    - return ret;
    -}
    -
    -static int rtc_proc_release(struct inode *inode, struct file *file)
    -{
    - int res = single_release(inode, file);
    - struct rtc_device *rtc = PDE_DATA(inode);
    -
    - module_put(rtc->owner);
    - return res;
    -}
    -
    -static const struct file_operations rtc_proc_fops = {
    - .open = rtc_proc_open,
    - .read = seq_read,
    - .llseek = seq_lseek,
    - .release = rtc_proc_release,
    -};
    -
    void rtc_proc_add_device(struct rtc_device *rtc)
    {
    if (is_rtc_hctosys(rtc))
    - proc_create_data("driver/rtc", 0, NULL, &rtc_proc_fops, rtc);
    + proc_create_single_data("driver/rtc", 0, NULL, rtc_proc_show,
    + rtc);
    }

    void rtc_proc_del_device(struct rtc_device *rtc)
    --
    2.17.0
    \
     
     \ /
      Last update: 2018-05-16 11:55    [W:4.746 / U:0.876 seconds]
    ©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site