newnode = kmalloc(sizeof(*newnode), GFP_KERNEL); 
newnode = kzalloc(sizeof(*newnode), GFP_KERNEL); 
int hashtab_insert(struct hashtab *h, void *key, void *datum){	u32 hvalue;	struct hashtab_node *prev, *cur, *newnode;	if (!h || h->nel == HASHTAB_MAX_NODES)		return -EINVAL;	hvalue = h->hash_value(h, key);	prev = NULL;	cur = h->htable[hvalue];	while (cur && h->keycmp(h, key, cur->key) > 0) {		prev = cur;		cur = cur->next;	}	if (cur && (h->keycmp(h, key, cur->key) == 0))		return -EEXIST;	newnode = kmalloc(sizeof(*newnode), GFP_KERNEL);	if (newnode == NULL)		return -ENOMEM;	memset(newnode, 0, sizeof(*newnode));	newnode->key = key;	newnode->datum = datum;	if (prev) {		newnode->next = prev->next;		prev->next = newnode;	} else {		newnode->next = h->htable[hvalue];		h->htable[hvalue] = newnode;	}	h->nel++;	return 0;}
4520	/local/tlutelli/issta_data/temp/c/2005_temp/2005/4520/89d155ef62e5e0c10e4b37aaa5056f0beafe10e6/hashtab.c/clean/security/selinux/ss/hashtab.c