Re: memcpy in 2.2.19

Keith Owens (kaos@ocs.com.au)
Thu, 29 Mar 2001 23:28:37 -0800


On Fri, 30 Mar 2001 08:04:17 +0100,
"Chris Funderburg" <chris@directcommunications.net> wrote:
>drivers/scsi/scsi.a(aic7xxx.o): In function `aic7xxx_load_seeprom':
>aic7xxx.o(.text+0x116bf): undefined reference to `memcpy'

Under some circumstances gcc will generate an internal call to
memcpy(). Alas this bypasses the pre-processor so memcpy is not
converted to the kernel's internal memcpy code. The cause is normally
a structure assignment, probably this line.

struct seeprom_config *sc = (struct seeprom_config *) scarray;

Try this replacement

struct seeprom_config *sc;
memcpy(sc, scarray, sizeof(*sc));

The other possibility I can see is

p->sc = *sc;

try

memcpy(&(p->sc), sc, sizeof(*sc));

-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/