Commit 30fa0d0f authored by Anton Blanchard's avatar Anton Blanchard Committed by Jens Axboe

Initialise scatter/gather list in sg driver

After turning on DEBUG_SG I hit a fail:

kernel BUG at include/linux/scatterlist.h:50!

	sg_build_indirect
	sg_build_reserve
	sg_open
	chrdev_open
	__dentry_open
	do_filp_open
	do_sys_open

We should initialise the sg list when we allocate it in sg_build_sgat.
Signed-off-by: default avatarAnton Blanchard <anton@samba.org>
Signed-off-by: default avatarJens Axboe <jens.axboe@oracle.com>
parent acd054a5
...@@ -1652,6 +1652,7 @@ sg_build_sgat(Sg_scatter_hold * schp, const Sg_fd * sfp, int tablesize) ...@@ -1652,6 +1652,7 @@ sg_build_sgat(Sg_scatter_hold * schp, const Sg_fd * sfp, int tablesize)
schp->buffer = kzalloc(sg_bufflen, gfp_flags); schp->buffer = kzalloc(sg_bufflen, gfp_flags);
if (!schp->buffer) if (!schp->buffer)
return -ENOMEM; return -ENOMEM;
sg_init_table(schp->buffer, tablesize);
schp->sglist_len = sg_bufflen; schp->sglist_len = sg_bufflen;
return tablesize; /* number of scat_gath elements allocated */ return tablesize; /* number of scat_gath elements allocated */
} }
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment