Pawel Jakub Dawidek writes: | On Thu, Nov 16, 2006 at 07:21:59AM -0800, Doug Ambrisko wrote: | > I skipped the mkdir and used patch -p0. Everything looked to compile | > okay but when I kldload zfs is fails since the kernel doesn't | > have memset: | > %kldload zfs | > link_elf: symbol memset undefined | > kldload: can't load zfs: No such file or directory | > % | > Is there another change required? | | I applied the patch before publishing on clean source and I don't see | such problem... Interesting thing is that there is no memset() use in | ZFS kernel source: | | # grep -r memset sys/ | grep -v zap_memset | # | | Does anyone else seeing this problem? This is on i386: one% grep memset zfs_20061117.patch + (void) memset(p, 0, n); + (void) memset(wp, 0, sizeof (*wp)); + (void) memset(wp, 0, sizeof (*wp)); +zap_memset(void *a, int c, size_t n) + zap_memset(&l->l_phys->l_hdr, 0, sizeof (struct zap_leaf_header)); + zap_memset(l->l_phys->l_hash, CHAIN_END, 2*ZAP_LEAF_HASH_NUMENTRIES(l)); + zap_memset(l->l_phys->l_hash, CHAIN_END, 2*ZAP_LEAF_HASH_NUMENTRIES(l)); one% In contrib/opensolaris/lib/libuutil/common/uu_alloc.c +void * +uu_zalloc(size_t n) +{ + void *p = malloc(n); + + if (p == NULL) { + uu_set_error(UU_ERROR_SYSTEM); + return (NULL); + } + + (void) memset(p, 0, n); + + return (p); +} + %nm dmu_objset.o | grep memset U memset % If I run it compile -E I see static __inline void * memset(void *b, int c, size_t len) { char *bb; if (c == 0) bzero(b, len); else for (bb = (char *)b; len--; ) *bb++ = c; return (b); } and nothing calling it unless it is what Max. is talking about. I don't see other stuff breaking. Doug A.Received on Thu Nov 16 2006 - 19:06:24 UTC
This archive was generated by hypermail 2.4.0 : Wed May 19 2021 - 11:39:02 UTC