diff options
author | Al Viro <viro@zeniv.linux.org.uk> | 2020-06-15 02:04:42 +0300 |
---|---|---|
committer | Al Viro <viro@zeniv.linux.org.uk> | 2020-06-15 02:04:42 +0300 |
commit | 067c054fb9c90811ae38898ce649f8dafa13354c (patch) | |
tree | 43d5ab6f4005b6e53d9a52e4cc7e8a5ffd6329fe /fs/ocfs2/dlmfs/userdlm.c | |
parent | b3a9e3b9622ae10064826dccb4f7a52bd88c7407 (diff) | |
download | linux-067c054fb9c90811ae38898ce649f8dafa13354c.tar.xz |
dlmfs: clean up dlmfs_file_{read,write}() a bit
The damn file is constant-sized - 64 bytes. IOW,
* i_size_read() is pointless
* so's dynamic allocation
* so's the 'size' argument of user_dlm_read_lvb()
* ... and so's open-coding simple_read_from_buffer(), while we are at it.
Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
Diffstat (limited to 'fs/ocfs2/dlmfs/userdlm.c')
-rw-r--r-- | fs/ocfs2/dlmfs/userdlm.c | 12 |
1 files changed, 4 insertions, 8 deletions
diff --git a/fs/ocfs2/dlmfs/userdlm.c b/fs/ocfs2/dlmfs/userdlm.c index 3df5be25bfb1..339f098d9592 100644 --- a/fs/ocfs2/dlmfs/userdlm.c +++ b/fs/ocfs2/dlmfs/userdlm.c @@ -547,24 +547,20 @@ void user_dlm_write_lvb(struct inode *inode, spin_unlock(&lockres->l_lock); } -ssize_t user_dlm_read_lvb(struct inode *inode, - char *val, - unsigned int len) +bool user_dlm_read_lvb(struct inode *inode, char *val) { struct user_lock_res *lockres = &DLMFS_I(inode)->ip_lockres; char *lvb; - ssize_t ret = len; - - BUG_ON(len > DLM_LVB_LEN); + bool ret = true; spin_lock(&lockres->l_lock); BUG_ON(lockres->l_level < DLM_LOCK_PR); if (ocfs2_dlm_lvb_valid(&lockres->l_lksb)) { lvb = ocfs2_dlm_lvb(&lockres->l_lksb); - memcpy(val, lvb, len); + memcpy(val, lvb, DLM_LVB_LEN); } else - ret = 0; + ret = false; spin_unlock(&lockres->l_lock); return ret; |