diff mbox series

ceph: uninitialized variable in debug output

Message ID 20220307142121.GB19660@kili (mailing list archive)
State New, archived
Headers show
Series ceph: uninitialized variable in debug output | expand

Commit Message

Dan Carpenter March 7, 2022, 2:21 p.m. UTC
If read_mapping_folio() fails then "inline_version" is printed without
being initialized.

Fixes: 083db6fd3e73 ("ceph: uninline the data on a file opened for writing")
Signed-off-by: Dan Carpenter <dan.carpenter@oracle.com>
---
 fs/ceph/addr.c | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

Comments

Xiubo Li March 8, 2022, 12:11 a.m. UTC | #1
On 3/7/22 10:21 PM, Dan Carpenter wrote:
> If read_mapping_folio() fails then "inline_version" is printed without
> being initialized.
>
> Fixes: 083db6fd3e73 ("ceph: uninline the data on a file opened for writing")
> Signed-off-by: Dan Carpenter <dan.carpenter@oracle.com>
> ---
>   fs/ceph/addr.c | 3 ++-
>   1 file changed, 2 insertions(+), 1 deletion(-)
>
> diff --git a/fs/ceph/addr.c b/fs/ceph/addr.c
> index 3c1257b09775..0d4120297ede 100644
> --- a/fs/ceph/addr.c
> +++ b/fs/ceph/addr.c
> @@ -1632,9 +1632,10 @@ int ceph_uninline_data(struct file *file)
>   	struct ceph_osd_request *req;
>   	struct ceph_cap_flush *prealloc_cf;
>   	struct folio *folio = NULL;
> +	u64 inline_version = -1;
>   	struct page *pages[1];
> -	u64 len, inline_version;
>   	int err = 0;
> +	u64 len;
>   
>   	prealloc_cf = ceph_alloc_cap_flush();
>   	if (!prealloc_cf)

Possibly we'd better format the 'inline_version' in hexadecimal ?

Reviewed-by: Xiubo Li<xiubli@redhat.com>
David Howells March 8, 2022, 9:36 a.m. UTC | #2
Dan Carpenter <dan.carpenter@oracle.com> wrote:

> +	u64 inline_version = -1;

ULLONG_MAX?

David
Jeff Layton March 8, 2022, 1:24 p.m. UTC | #3
On Tue, 2022-03-08 at 09:36 +0000, David Howells wrote:
> Dan Carpenter <dan.carpenter@oracle.com> wrote:
> 
> > +	u64 inline_version = -1;
> 
> ULLONG_MAX?
> 
> David
> 

...or maybe CEPH_INLINE_NONE, which is:

    #define CEPH_INLINE_NONE        ((__u64)-1)
Jeff Layton March 8, 2022, 1:28 p.m. UTC | #4
On Tue, 2022-03-08 at 08:24 -0500, Jeff Layton wrote:
> On Tue, 2022-03-08 at 09:36 +0000, David Howells wrote:
> > Dan Carpenter <dan.carpenter@oracle.com> wrote:
> > 
> > > +	u64 inline_version = -1;
> > 
> > ULLONG_MAX?
> > 
> > David
> > 
> 
> ...or maybe CEPH_INLINE_NONE, which is:
> 
>     #define CEPH_INLINE_NONE        ((__u64)-1)      
>                                                    

I went ahead and merged the patch into our testing branch, with the
change to use CEPH_INLINE_NONE instead.

Thanks!
Dan Carpenter March 8, 2022, 1:30 p.m. UTC | #5
On Tue, Mar 08, 2022 at 08:28:21AM -0500, Jeff Layton wrote:
> On Tue, 2022-03-08 at 08:24 -0500, Jeff Layton wrote:
> > On Tue, 2022-03-08 at 09:36 +0000, David Howells wrote:
> > > Dan Carpenter <dan.carpenter@oracle.com> wrote:
> > > 
> > > > +	u64 inline_version = -1;
> > > 
> > > ULLONG_MAX?
> > > 
> > > David
> > > 
> > 
> > ...or maybe CEPH_INLINE_NONE, which is:
> > 
> >     #define CEPH_INLINE_NONE        ((__u64)-1)      
> >                                                    
> 
> I went ahead and merged the patch into our testing branch, with the
> change to use CEPH_INLINE_NONE instead.

I liked CEPH_INLINE_NONE so I was resending it right now...  But thanks!

regards,
dan carpenter
diff mbox series

Patch

diff --git a/fs/ceph/addr.c b/fs/ceph/addr.c
index 3c1257b09775..0d4120297ede 100644
--- a/fs/ceph/addr.c
+++ b/fs/ceph/addr.c
@@ -1632,9 +1632,10 @@  int ceph_uninline_data(struct file *file)
 	struct ceph_osd_request *req;
 	struct ceph_cap_flush *prealloc_cf;
 	struct folio *folio = NULL;
+	u64 inline_version = -1;
 	struct page *pages[1];
-	u64 len, inline_version;
 	int err = 0;
+	u64 len;
 
 	prealloc_cf = ceph_alloc_cap_flush();
 	if (!prealloc_cf)