Portál AbcLinuxu, 30. dubna 2025 10:11
Čau lidi, při kompilaci vmware (VMware Server 1.0.1 build-29996) modulu vmnet pro kernel 2.6.19 pravděpodobně vznikne tento problém:
CC [M] /tmp/vmware-config0/vmnet-only/userif.o /tmp/vmware-config0/vmnet-only/userif.c: In function ‘VNetCopyDatagramToUser’: /tmp/vmware-config0/vmnet-only/userif.c:629: error: ‘CHECKSUM_HW’ undeclared (first use in this function) /tmp/vmware-config0/vmnet-only/userif.c:629: error: (Each undeclared identifier is reported only once /tmp/vmware-config0/vmnet-only/userif.c:629: error: for each function it appears in.) make[2]: *** [/tmp/vmware-config0/vmnet-only/userif.o] Error 1 make[1]: *** [_module_/tmp/vmware-config0/vmnet-only] Error 2 make[1]: Leaving directory `/usr/src/linux/include' make: *** [vmnet.ko] Error 2 make: Leaving directory `/tmp/vmware-config0/vmnet-only' Unable to build the vmnet module.
Chyba je v tom, že: The CHECKSUM_HW value has long been used in the networking subsystem to support hardware checksumming. That value has been replaced with CHECKSUM_PARTIAL (intended for outgoing packets where the job must be completed by the hardware) and CHECKSUM_COMPLETE (for incoming packets which have been completely checksummed by the hardware). zdroj
Takže je potřeba opatchovat příslušné soubory, kde se vyskytuje CHECKSUM_HW:
cd /usr/lib/vmware/modules/source/ tar -xvvf vmnet.tar cd vmnet-only/ patch bridge.c ~/bridge.c.patch patch userif.c ~/userif.c.patch cd .. tar -cvvf vmnet.tar vmnet-only/ /usr/bin/vmware-config.pl
Patche:
1179c1179 < if (skb->ip_summed == CHECKSUM_HW) { --- > if (skb->ip_summed == CHECKSUM_PARTIAL) {
629c629 < skb->ip_summed == CHECKSUM_HW && /* Without checksum */ --- > skb->ip_summed == CHECKSUM_PARTIAL && /* Without checksum */
Nějak jsem nepochopil, jak se u vmware reportují bugy, tak to dávám sem a google to třeba zaindexuje :)
PS: Po opravení tohoto bugu mi kompilace ještě jednou zhavarovala, že mu chybí <linux/config.h>, tak jsem do /usr/src/linux/include/linux/ nakopiroval config.h z /usr/include/linux/config.h a už to jede...
Tiskni
Sdílej:
rlocate
ISSN 1214-1267, (c) 1999-2007 Stickfish s.r.o.