head 1.2; access; symbols perseant-exfatfs-base-20250801:1.2 perseant-exfatfs-base-20240630:1.2 perseant-exfatfs:1.2.0.26 perseant-exfatfs-base:1.2 cjep_sun2x:1.2.0.24 cjep_sun2x-base:1.2 cjep_staticlib_x-base1:1.2 cjep_staticlib_x:1.2.0.22 cjep_staticlib_x-base:1.2 phil-wifi-20200421:1.2 phil-wifi-20200411:1.2 phil-wifi-20200406:1.2 pgoyette-compat-merge-20190127:1.2 pgoyette-compat-20190127:1.2 pgoyette-compat-20190118:1.2 pgoyette-compat-1226:1.2 pgoyette-compat-1126:1.2 pgoyette-compat-1020:1.2 pgoyette-compat-0930:1.2 pgoyette-compat-0906:1.2 pgoyette-compat-0728:1.2 pgoyette-compat-0625:1.2 pgoyette-compat-0521:1.2 pgoyette-compat-0502:1.2 pgoyette-compat-0422:1.2 pgoyette-compat-0415:1.2 pgoyette-compat-0407:1.2 pgoyette-compat-0330:1.2 pgoyette-compat-0322:1.2 pgoyette-compat-0315:1.2 pgoyette-compat:1.2.0.20 pgoyette-compat-base:1.2 perseant-stdc-iso10646:1.2.0.18 perseant-stdc-iso10646-base:1.2 prg-localcount2-base3:1.2 prg-localcount2-base2:1.2 prg-localcount2-base1:1.2 prg-localcount2:1.2.0.16 prg-localcount2-base:1.2 pgoyette-localcount-20170426:1.2 bouyer-socketcan-base1:1.2 pgoyette-localcount-20170320:1.2 bouyer-socketcan:1.2.0.14 bouyer-socketcan-base:1.2 pgoyette-localcount-20170107:1.2 pgoyette-localcount-20161104:1.2 localcount-20160914:1.2 pgoyette-localcount-20160806:1.2 pgoyette-localcount-20160726:1.2 pgoyette-localcount:1.2.0.12 pgoyette-localcount-base:1.2 netbsd-5-2-3-RELEASE:1.1.1.1.8.1 netbsd-5-1-5-RELEASE:1.1.1.1.8.1 yamt-pagecache-base9:1.2 yamt-pagecache-tag8:1.2 tls-earlyentropy:1.2.0.8 tls-earlyentropy-base:1.2 riastradh-xf86-video-intel-2-7-1-pre-2-21-15:1.2 riastradh-drm2-base3:1.2 netbsd-5-2-2-RELEASE:1.1.1.1.8.1 netbsd-5-1-4-RELEASE:1.1.1.1.8.1 netbsd-5-2-1-RELEASE:1.1.1.1.8.1 netbsd-5-1-3-RELEASE:1.1.1.1.8.1 agc-symver:1.2.0.10 agc-symver-base:1.2 tls-maxphys-base:1.2 yamt-pagecache-base8:1.2 netbsd-5-2:1.1.1.1.8.1.0.6 yamt-pagecache-base7:1.2 netbsd-5-2-RELEASE:1.1.1.1.8.1 netbsd-5-2-RC1:1.1.1.1.8.1 yamt-pagecache-base6:1.2 yamt-pagecache-base5:1.2 yamt-pagecache-base4:1.2 netbsd-5-1-2-RELEASE:1.1.1.1.8.1 netbsd-5-1-1-RELEASE:1.1.1.1.8.1 yamt-pagecache-base3:1.2 yamt-pagecache-base2:1.2 yamt-pagecache:1.2.0.6 yamt-pagecache-base:1.2 bouyer-quota2-nbase:1.2 bouyer-quota2:1.2.0.4 bouyer-quota2-base:1.2 matt-nb5-pq3:1.1.1.1.8.1.0.4 matt-nb5-pq3-base:1.1.1.1.8.1 netbsd-5-1:1.1.1.1.8.1.0.2 netbsd-5-1-RELEASE:1.1.1.1.8.1 netbsd-5-1-RC4:1.1.1.1.8.1 netbsd-5-1-RC3:1.1.1.1.8.1 netbsd-5-1-RC2:1.1.1.1.8.1 netbsd-5-1-RC1:1.1.1.1.8.1 netbsd-5-0-2-RELEASE:1.1.1.1 matt-nb5-mips64-premerge-20091211:1.1.1.1 matt-nb5-mips64-u2-k2-k4-k7-k8-k9:1.1.1.1 matt-nb4-mips64-k7-u2a-k9b:1.1.1.1 matt-nb5-mips64-u1-k1-k5:1.1.1.1 matt-nb5-mips64:1.1.1.1.0.12 netbsd-5-0-1-RELEASE:1.1.1.1 jym-xensuspend-nbase:1.2 netbsd-5-0:1.1.1.1.0.10 netbsd-5-0-RELEASE:1.1.1.1 netbsd-5-0-RC4:1.1.1.1 netbsd-5-0-RC3:1.1.1.1 netbsd-5-0-RC2:1.1.1.1 jym-xensuspend:1.2.0.2 jym-xensuspend-base:1.2 netbsd-5-0-RC1:1.1.1.1 haad-dm-base2:1.1.1.1 haad-nbase2:1.1.1.1 netbsd-5:1.1.1.1.0.8 netbsd-5-base:1.1.1.1 matt-mips64-base2:1.1.1.1 haad-dm-base1:1.1.1.1 wrstuden-revivesa-base-3:1.1.1.1 wrstuden-revivesa:1.1.1.1.0.4 wrstuden-revivesa-base-2:1.1.1.1 haad-dm:1.1.1.1.0.2 haad-dm-base:1.1.1.1 libdevmapper-1-02-27:1.1.1.1 FSF:1.1.1; locks; strict; comment @# @; 1.2 date 2008.12.22.01.07.19; author haad; state dead; branches; next 1.1; 1.1 date 2008.07.15.13.53.01; author haad; state Exp; branches 1.1.1.1; next ; 1.1.1.1 date 2008.07.15.13.53.01; author haad; state Exp; branches 1.1.1.1.2.1 1.1.1.1.4.1 1.1.1.1.8.1 1.1.1.1.12.1; next ; 1.1.1.1.2.1 date 2008.07.15.13.53.01; author haad; state dead; branches; next 1.1.1.1.2.2; 1.1.1.1.2.2 date 2008.12.16.01.27.02; author haad; state dead; branches; next ; 1.1.1.1.4.1 date 2008.07.15.13.53.01; author wrstuden; state dead; branches; next 1.1.1.1.4.2; 1.1.1.1.4.2 date 2008.09.18.05.17.12; author wrstuden; state Exp; branches; next ; 1.1.1.1.8.1 date 2010.01.20.05.13.26; author snj; state dead; branches; next ; 1.1.1.1.12.1 date 2010.04.21.05.23.14; author matt; state dead; branches; next ; desc @@ 1.2 log @Remove broken merged sources of haad-dm. lvm2tools are now in gpl2/lvm2 and libdevmapper is not needed anymore. @ text @diff -ruN linux-2.4.20/mm/vmalloc.c linux/mm/vmalloc.c --- linux-2.4.20/mm/vmalloc.c Fri Jan 10 16:36:03 2003 +++ linux/mm/vmalloc.c Wed Mar 26 12:53:19 2003 @@@@ -327,3 +327,22 @@@@ read_unlock(&vmlist_lock); return buf - buf_start; } + +void *vcalloc(unsigned long nmemb, unsigned long elem_size) +{ + unsigned long size; + void *addr; + + /* + * Check that we're not going to overflow. + */ + if (nmemb > (ULONG_MAX / elem_size)) + return NULL; + + size = nmemb * elem_size; + addr = vmalloc(size); + if (addr) + memset(addr, 0, size); + + return addr; +} diff -ruN linux-2.4.20/include/linux/vmalloc.h linux/include/linux/vmalloc.h --- linux-2.4.20/include/linux/vmalloc.h Fri Jan 10 16:35:58 2003 +++ linux/include/linux/vmalloc.h Wed Mar 26 12:53:19 2003 @@@@ -26,6 +26,7 @@@@ extern void vmfree_area_pages(unsigned long address, unsigned long size); extern int vmalloc_area_pages(unsigned long address, unsigned long size, int gfp_mask, pgprot_t prot); +extern void *vcalloc(unsigned long nmemb, unsigned long elem_size); /* * Allocate any pages diff -ruN linux-2.4.20/kernel/ksyms.c linux/kernel/ksyms.c --- linux-2.4.20/kernel/ksyms.c Fri Jan 10 16:36:02 2003 +++ linux/kernel/ksyms.c Wed Mar 26 12:53:19 2003 @@@@ -111,6 +111,7 @@@@ EXPORT_SYMBOL(vfree); EXPORT_SYMBOL(__vmalloc); EXPORT_SYMBOL(vmalloc_to_page); +EXPORT_SYMBOL(vcalloc); EXPORT_SYMBOL(mem_map); EXPORT_SYMBOL(remap_page_range); EXPORT_SYMBOL(max_mapnr); @ 1.1 log @Initial revision @ text @@ 1.1.1.1 log @version 1.02.27-cvs @ text @@ 1.1.1.1.2.1 log @file linux-2.4.20-vcalloc.patch was added on branch haad-dm on 2008-12-16 01:27:02 +0000 @ text @d1 49 @ 1.1.1.1.2.2 log @Remove libdevmaper code, lvm2tools are now distributed with libdevmapper source inside. @ text @@ 1.1.1.1.12.1 log @sync to netbsd-5 @ text @@ 1.1.1.1.8.1 log @Remove obsolete LVM sources, as requested by tron in ticket 1211. @ text @@ 1.1.1.1.4.1 log @file linux-2.4.20-vcalloc.patch was added on branch wrstuden-revivesa on 2008-09-18 05:17:12 +0000 @ text @d1 49 @ 1.1.1.1.4.2 log @Sync with wrstuden-revivesa-base-2. @ text @a0 49 diff -ruN linux-2.4.20/mm/vmalloc.c linux/mm/vmalloc.c --- linux-2.4.20/mm/vmalloc.c Fri Jan 10 16:36:03 2003 +++ linux/mm/vmalloc.c Wed Mar 26 12:53:19 2003 @@@@ -327,3 +327,22 @@@@ read_unlock(&vmlist_lock); return buf - buf_start; } + +void *vcalloc(unsigned long nmemb, unsigned long elem_size) +{ + unsigned long size; + void *addr; + + /* + * Check that we're not going to overflow. + */ + if (nmemb > (ULONG_MAX / elem_size)) + return NULL; + + size = nmemb * elem_size; + addr = vmalloc(size); + if (addr) + memset(addr, 0, size); + + return addr; +} diff -ruN linux-2.4.20/include/linux/vmalloc.h linux/include/linux/vmalloc.h --- linux-2.4.20/include/linux/vmalloc.h Fri Jan 10 16:35:58 2003 +++ linux/include/linux/vmalloc.h Wed Mar 26 12:53:19 2003 @@@@ -26,6 +26,7 @@@@ extern void vmfree_area_pages(unsigned long address, unsigned long size); extern int vmalloc_area_pages(unsigned long address, unsigned long size, int gfp_mask, pgprot_t prot); +extern void *vcalloc(unsigned long nmemb, unsigned long elem_size); /* * Allocate any pages diff -ruN linux-2.4.20/kernel/ksyms.c linux/kernel/ksyms.c --- linux-2.4.20/kernel/ksyms.c Fri Jan 10 16:36:02 2003 +++ linux/kernel/ksyms.c Wed Mar 26 12:53:19 2003 @@@@ -111,6 +111,7 @@@@ EXPORT_SYMBOL(vfree); EXPORT_SYMBOL(__vmalloc); EXPORT_SYMBOL(vmalloc_to_page); +EXPORT_SYMBOL(vcalloc); EXPORT_SYMBOL(mem_map); EXPORT_SYMBOL(remap_page_range); EXPORT_SYMBOL(max_mapnr); @