super0: Use memmove() when adjusting sparc2.2 superblock data
memcpy() does not allow overlapping copies, switch to memmove() Signed-off-by: Jes Sorensen <jsorensen@fb.com>
This commit is contained in:
parent
c1b78589cf
commit
2dcd649271
7
super0.c
7
super0.c
|
@ -520,9 +520,10 @@ static int update_super0(struct supertype *st, struct mdinfo *info,
|
||||||
* up 4 bytes before continuing
|
* up 4 bytes before continuing
|
||||||
*/
|
*/
|
||||||
__u32 *sb32 = (__u32*)sb;
|
__u32 *sb32 = (__u32*)sb;
|
||||||
memcpy(sb32+MD_SB_GENERIC_CONSTANT_WORDS+7,
|
|
||||||
sb32+MD_SB_GENERIC_CONSTANT_WORDS+7+1,
|
memmove(sb32+MD_SB_GENERIC_CONSTANT_WORDS+7,
|
||||||
(MD_SB_WORDS - (MD_SB_GENERIC_CONSTANT_WORDS+7+1))*4);
|
sb32+MD_SB_GENERIC_CONSTANT_WORDS+7+1,
|
||||||
|
(MD_SB_WORDS - (MD_SB_GENERIC_CONSTANT_WORDS+7+1))*4);
|
||||||
if (verbose >= 0)
|
if (verbose >= 0)
|
||||||
pr_err("adjusting superblock of %s for 2.2/sparc compatibility.\n",
|
pr_err("adjusting superblock of %s for 2.2/sparc compatibility.\n",
|
||||||
devname);
|
devname);
|
||||||
|
|
Loading…
Reference in New Issue