slidx_pool.buffer = (slidx_list_t *) kmalloc(slidx_pool.max_idx * sizeof(slidx_list_t), GFP_KERNEL); 
slidx_pool.buffer = (slidx_list_t *) kmalloc(slidx_pool.max_idx * sizeof(slidx_list_t), GFP_KERNEL); 
init_record_index_pools(void){	int i;	int rec_max_size;  /* Maximum size of SAL error records */	int sect_min_size; /* Minimum size of SAL error sections */	/* minimum size table of each section */	static int sal_log_sect_min_sizes[] = { 		sizeof(sal_log_processor_info_t) + sizeof(sal_processor_static_info_t),		sizeof(sal_log_mem_dev_err_info_t),		sizeof(sal_log_sel_dev_err_info_t),		sizeof(sal_log_pci_bus_err_info_t),		sizeof(sal_log_smbios_dev_err_info_t),		sizeof(sal_log_pci_comp_err_info_t),		sizeof(sal_log_plat_specific_err_info_t),		sizeof(sal_log_host_ctlr_err_info_t),		sizeof(sal_log_plat_bus_err_info_t),	};	/*	 * MCA handler cannot allocate new memory on flight,	 * so we preallocate enough memory to handle a SAL record.	 *	 * Initialize a handling set of slidx_pool:	 *   1. Pick up the max size of SAL error records	 *   2. Pick up the min size of SAL error sections	 *   3. Allocate the pool as enough to 2 SAL records	 *     (now we can estimate the maxinum of section in a record.)	 */	/* - 1 - */	rec_max_size = sal_rec_max;	/* - 2 - */	sect_min_size = sal_log_sect_min_sizes[0];	for (i = 1; i < sizeof sal_log_sect_min_sizes/sizeof(size_t); i++)		if (sect_min_size > sal_log_sect_min_sizes[i])			sect_min_size = sal_log_sect_min_sizes[i];	/* - 3 - */	slidx_pool.max_idx = (rec_max_size/sect_min_size) * 2 + 1;	slidx_pool.buffer = (slidx_list_t *) kmalloc(slidx_pool.max_idx * sizeof(slidx_list_t), GFP_KERNEL);	return slidx_pool.buffer ? 0 : -ENOMEM;}
10457	/local/tlutelli/issta_data/temp/c/2005_temp/2005/10457/20305e59724381365096b6ab0a48054723367c80/mca_drv.c/buggy/arch/ia64/kernel/mca_drv.c