rpms/crash/devel crash.patch,1.19,1.20 crash.spec,1.26,1.27

David Anderson (crash) fedora-extras-commits at redhat.com
Tue Apr 29 17:58:09 UTC 2008


Author: crash

Update of /cvs/pkgs/rpms/crash/devel
In directory cvs-int.fedora.redhat.com:/tmp/cvs-serv11635

Modified Files:
	crash.patch crash.spec 
Log Message:
Added crash-devel subpackage.
Updated crash.patch to match upstream version 4.0-6.3.


crash.patch:

View full diff with command:
/usr/bin/cvs -f diff  -kk -u -N -r 1.19 -r 1.20 crash.patch
Index: crash.patch
===================================================================
RCS file: /cvs/pkgs/rpms/crash/devel/crash.patch,v
retrieving revision 1.19
retrieving revision 1.20
diff -u -r1.19 -r1.20
--- crash.patch	19 Feb 2008 21:22:10 -0000	1.19
+++ crash.patch	29 Apr 2008 17:57:32 -0000	1.20
@@ -1,4 +1,4 @@
---- crash/configure.c.orig	2008-02-19 16:16:12.000000000 -0500
+--- crash/configure.c.orig	2008-04-29 13:51:49.000000000 -0400
 +++ crash/configure.c	2008-02-04 10:30:09.000000000 -0500
 @@ -1,8 +1,8 @@
  /* configure.c - core analysis suite
@@ -146,8 +146,8 @@
  }
  
  /*
---- crash/Makefile.orig	2008-02-19 16:16:13.000000000 -0500
-+++ crash/Makefile	2008-02-19 16:16:12.000000000 -0500
+--- crash/Makefile.orig	2008-04-29 13:51:49.000000000 -0400
++++ crash/Makefile	2008-04-29 13:51:49.000000000 -0400
 @@ -3,8 +3,8 @@
  # Copyright (C) 1999, 2000, 2001, 2002 Mission Critical Linux, Inc.
  #       www.missioncriticallinux.com, info at missioncriticallinux.com
@@ -477,7 +477,7 @@
 +
 +do_extensions:
 +	@(cd extensions; make -i TARGET=$(TARGET) TARGET_CFLAGS=$(TARGET_CFLAGS))
---- crash/lkcd_dump_v7.h.orig	2008-02-19 16:16:13.000000000 -0500
+--- crash/lkcd_dump_v7.h.orig	2008-04-29 13:51:49.000000000 -0400
 +++ crash/lkcd_dump_v7.h	2008-01-04 09:42:08.000000000 -0500
 @@ -1,8 +1,8 @@
  /* lkcd_dump_v5.h - core analysis suite
@@ -499,7 +499,7 @@
  
  /* define TRUE and FALSE for use in our dump modules */
  #ifndef FALSE
---- crash/cmdline.c.orig	2008-02-19 16:16:12.000000000 -0500
+--- crash/cmdline.c.orig	2008-04-29 13:51:49.000000000 -0400
 +++ crash/cmdline.c	2008-01-04 09:42:08.000000000 -0500
 @@ -1,8 +1,8 @@
  /* cmdline.c - core analysis suite
@@ -935,7 +935,7 @@
 +		stall(1000);
  	}
  }
---- crash/lkcd_dump_v5.h.orig	2008-02-19 16:16:13.000000000 -0500
+--- crash/lkcd_dump_v5.h.orig	2008-04-29 13:51:49.000000000 -0400
 +++ crash/lkcd_dump_v5.h	2008-01-04 09:42:08.000000000 -0500
 @@ -1,8 +1,8 @@
  /* lkcd_dump_v5.h - core analysis suite
@@ -957,9 +957,9 @@
  
  /* define TRUE and FALSE for use in our dump modules */
  #ifndef FALSE
---- crash/xen_hyper.c.orig	2008-02-19 16:16:12.000000000 -0500
-+++ crash/xen_hyper.c	2008-01-04 09:42:08.000000000 -0500
-@@ -0,0 +1,1975 @@
+--- crash/xen_hyper.c.orig	2008-04-29 13:51:49.000000000 -0400
++++ crash/xen_hyper.c	2008-04-23 15:50:49.000000000 -0400
+@@ -0,0 +1,1981 @@
 +/*
 + *  xen_hyper.c
 + *
@@ -1003,6 +1003,12 @@
 +	long member_offset;
 +#endif
 +
++	if (machine_type("X86_64") &&
++	    symbol_exists("xen_phys_start") && !xen_phys_start())
++		error(WARNING, 
++	 	    "This hypervisor is relocatable; if initialization fails below, try\n"
++                    "         using the \"--xen_phys_start <address>\" command line option.\n\n");
++
 +	if (symbol_exists("crashing_cpu")) {
 +		get_symbol_data("crashing_cpu", sizeof(xht->crashing_cpu),
 +			&xht->crashing_cpu);
@@ -2935,8 +2941,8 @@
 +	fprintf(out, "PCPU: %2d  VCPU: %lx\n", vcc->processor, vcpu);
 +}
 +#endif
---- crash/netdump.c.orig	2008-02-19 16:16:12.000000000 -0500
-+++ crash/netdump.c	2008-01-16 10:00:24.000000000 -0500
+--- crash/netdump.c.orig	2008-04-29 13:51:49.000000000 -0400
++++ crash/netdump.c	2008-04-23 14:49:00.000000000 -0400
 @@ -1,7 +1,7 @@
  /* netdump.c 
   *
@@ -3162,13 +3168,13 @@
 -			else
 +			if (machine_type_mismatch(file, "X86_64", NULL,
 +			    source_query))
- 				goto bailout;
++				goto bailout;
 +			break;
 +
 +		case EM_386:
 +			if (machine_type_mismatch(file, "X86", NULL,
 +			    source_query))
-+				goto bailout;
+ 				goto bailout;
 +			break;
  
  		default:
@@ -3458,15 +3464,14 @@
  	off_t offset;
 +	struct pt_load_segment *pls;
 +	int i;
- 
--        offset = (off_t)paddr + (off_t)nd->header_size;
++
 +        switch (DUMPFILE_FORMAT(nd->flags))
 +	{
 +	case NETDUMP_ELF32:
 +		offset = (off_t)paddr + (off_t)nd->header_size;
 +		break;
  
--        if (lseek(nd->ndfd, offset, SEEK_SET) != offset)
+-        offset = (off_t)paddr + (off_t)nd->header_size;
 +	case NETDUMP_ELF64:
 +	case KDUMP_ELF32:
 +	case KDUMP_ELF64:
@@ -3490,7 +3495,8 @@
 +		
 +		break;
 +	}	
-+
+ 
+-        if (lseek(nd->ndfd, offset, SEEK_SET) != offset)
 +        if (lseek(nd->ndfd, offset, SEEK_SET) == -1)
                  return SEEK_ERROR;
  
@@ -3806,7 +3812,7 @@
  	netdump_print("                  elf32: %lx\n", nd->elf32);
  	netdump_print("                notes32: %lx\n", nd->notes32);
  	netdump_print("                 load32: %lx\n", nd->load32);
-@@ -577,11 +841,66 @@
+@@ -577,11 +841,68 @@
  	netdump_print("            nt_prpsinfo: %lx\n", nd->nt_prpsinfo);
  	netdump_print("          nt_taskstruct: %lx\n", nd->nt_taskstruct);
  	netdump_print("            task_struct: %lx\n", nd->task_struct);
@@ -3844,6 +3850,8 @@
 +			    nd->xen_kdump_data->cache_hits * 100 / nd->xen_kdump_data->accesses);
 +		netdump_print("\n               p2m_frames: %d\n", 
 +			nd->xen_kdump_data->p2m_frames);
++		netdump_print("           xen_phys_start: %lx\n", 
++			nd->xen_kdump_data->xen_phys_start);
 +		netdump_print("       p2m_mfn_frame_list: %lx\n", 
 +			nd->xen_kdump_data->p2m_mfn_frame_list);
 +		for (i = 0; i < nd->xen_kdump_data->p2m_frames; i++)
@@ -3875,7 +3883,7 @@
  		dump_Elf32_Ehdr(nd->elf32);
  		dump_Elf32_Phdr(nd->notes32, ELFREAD);
                  for (i = 0; i < nd->num_pt_load_segments; i++) 
-@@ -594,6 +913,7 @@
+@@ -594,6 +915,7 @@
  		break;
  
  	case NETDUMP_ELF64:
@@ -3883,7 +3891,7 @@
  		dump_Elf64_Ehdr(nd->elf64);
  		dump_Elf64_Phdr(nd->notes64, ELFREAD);
                  for (i = 0; i < nd->num_pt_load_segments; i++)
-@@ -865,6 +1185,9 @@
+@@ -865,6 +1187,9 @@
          netdump_print("              e_machine: %d ", elf->e_machine);
          switch (elf->e_machine)
          {
@@ -3893,7 +3901,7 @@
          case EM_IA_64:
                  netdump_print("(EM_IA_64)\n");
                  break;
-@@ -961,8 +1284,11 @@
+@@ -961,8 +1286,11 @@
  		pls->phys_start = prog->p_paddr; 
  	netdump_print("               p_filesz: %lu (%lx)\n", prog->p_filesz, 
  		prog->p_filesz);
@@ -3906,7 +3914,7 @@
  	netdump_print("                p_memsz: %lu (%lx)\n", prog->p_memsz,
  		prog->p_memsz);
  	netdump_print("                p_flags: %lx (", prog->p_flags);
-@@ -1030,19 +1356,22 @@
+@@ -1030,19 +1358,22 @@
  		netdump_print("(?)\n");
  	}
  
@@ -3935,7 +3943,7 @@
  		prog->p_memsz);
  	netdump_print("                p_flags: %lx (", prog->p_flags);
  	others = 0;
-@@ -1053,7 +1382,7 @@
+@@ -1053,7 +1384,7 @@
  	if (prog->p_flags & PF_R)
  		netdump_print("%sPF_R", others++ ? "|" : "");
  	netdump_print(")\n");
@@ -3944,7 +3952,7 @@
  }
  
  /*
[...25234 lines suppressed...]
++
++	fprintf(fp, "%s  NAME   IP ADDRESS(ES)\n",
++		mkstring(upper_case(net->netdevice, buf), 
++			flen, CENTER|LJUST, NULL));
++
++	net_device_buf = GETBUF(SIZE(net_device));
++
++	ld =  &list_data;
++	BZERO(ld, sizeof(struct list_data));
++	get_symbol_data("dev_base_head", sizeof(void *), &ld->start);
++	ld->end = symbol_value("dev_base_head");
++	ld->list_head_offset = OFFSET(net_device_dev_list);
++
++	hq_open();
++	ndevcnt = do_list(ld);
++	ndevlist = (ulong *)GETBUF(ndevcnt * sizeof(ulong));
++	ndevcnt = retrieve_list(ndevlist, ndevcnt);
++	hq_close();
++
++	for (i = 0; i < ndevcnt; ++i) {
++		readmem(ndevlist[i], KVADDR, net_device_buf,
++			SIZE(net_device), "net_device buffer",
++			FAULT_ON_ERROR);
++
++                fprintf(fp, "%s  ",
++			mkstring(buf, flen, CENTER|RJUST|LONG_HEX,
++			MKSTR(ndevlist[i])));
++
++		get_device_name(ndevlist[i], buf);
++		fprintf(fp, "%-6s ", buf);
++
++		get_device_address(ndevlist[i], buf);
++		fprintf(fp, "%s\n", buf);
++	}
++	
++	FREEBUF(ndevlist);
++	FREEBUF(net_device_buf);
++}
++
++static void
++show_net_devices_v3(void)
++{
++	struct list_data list_data, *ld;
++	char *net_device_buf;
++	char buf[BUFSIZE];
++	ulong *ndevlist;
++	int ndevcnt, i;
++	long flen;
++
++	if (!net->netdevice) /* initialized in net_init() */
++		return;
++
++	flen = MAX(VADDR_PRLEN, strlen(net->netdevice));
++
++	fprintf(fp, "%s  NAME   IP ADDRESS(ES)\n",
++		mkstring(upper_case(net->netdevice, buf), 
++			flen, CENTER|LJUST, NULL));
++
++	net_device_buf = GETBUF(SIZE(net_device));
++
++	ld =  &list_data;
++	BZERO(ld, sizeof(struct list_data));
++	ld->start = ld->end =
++		 symbol_value("init_net") + OFFSET(net_dev_base_head);
++	ld->list_head_offset = OFFSET(net_device_dev_list);
++
++	hq_open();
++	ndevcnt = do_list(ld);
++	ndevlist = (ulong *)GETBUF(ndevcnt * sizeof(ulong));
++	ndevcnt = retrieve_list(ndevlist, ndevcnt);
++	hq_close();
++
++	/*
++	 *  Skip the first entry (init_net).
++	 */
++	for (i = 1; i < ndevcnt; ++i) {
++		readmem(ndevlist[i], KVADDR, net_device_buf,
++			SIZE(net_device), "net_device buffer",
++			FAULT_ON_ERROR);
++
++                fprintf(fp, "%s  ",
++			mkstring(buf, flen, CENTER|RJUST|LONG_HEX,
++			MKSTR(ndevlist[i])));
++
++		get_device_name(ndevlist[i], buf);
++		fprintf(fp, "%-6s ", buf);
++
++		get_device_address(ndevlist[i], buf);
++		fprintf(fp, "%s\n", buf);
++	}
++	
++	FREEBUF(ndevlist);
++	FREEBUF(net_device_buf);
++}
+ 
+ /*
+  * Perform the actual work of dumping the ARP table...
+@@ -378,6 +530,24 @@
  	nhash_buckets = (i = ARRAY_LENGTH(neigh_table_hash_buckets)) ?
  		i : get_array_length("neigh_table.hash_buckets", 
  			NULL, sizeof(void *));
@@ -79769,7 +80749,7 @@
  	hash_bytes = nhash_buckets * sizeof(*hash_buckets);
  
  	hash_buckets = (ulong *)GETBUF(hash_bytes);
-@@ -609,8 +659,14 @@
+@@ -609,8 +779,14 @@
  	uint16_t dport, sport;
  	ushort num, family, type;
  	char *sockbuf, *inet_sockbuf;
@@ -79784,7 +80764,7 @@
  	sockbuf = inet_sockbuf = NULL;
  
  	switch (net->flags & (SOCK_V1|SOCK_V2))
-@@ -646,6 +702,7 @@
+@@ -646,6 +822,7 @@
  			OFFSET(inet_opt_num));
  		family = USHORT(inet_sockbuf + OFFSET(sock_common_skc_family));
  		type = USHORT(inet_sockbuf + OFFSET(sock_sk_type));
@@ -79792,7 +80772,7 @@
  		break;
  	}
  
-@@ -723,27 +780,28 @@
+@@ -723,27 +900,28 @@
  	}
  
  	/* make sure we have room at the end... */
@@ -79826,7 +80806,7 @@
  	                        inet_ntoa(*((struct in_addr *)&daddr)),
  	                        ntohs(dport));
  		}
-@@ -753,6 +811,60 @@
+@@ -753,6 +931,60 @@
  		FREEBUF(sockbuf);
  	if (inet_sockbuf)
  		FREEBUF(inet_sockbuf);
@@ -79887,7 +80867,7 @@
  }
  
  
-@@ -899,6 +1011,8 @@
+@@ -899,6 +1131,8 @@
  		fprintf(fp, "%sSTRUCT_DEVICE", others++ ? "|" : "");
  	if (net->flags & STRUCT_NET_DEVICE)
  		fprintf(fp, "%sSTRUCT_NET_DEVICE", others++ ? "|" : "");
@@ -79896,7 +80876,7 @@
  	if (net->flags & SOCK_V1)
  		fprintf(fp, "%sSOCK_V1", others++ ? "|" : "");
  	if (net->flags & SOCK_V2)
-@@ -972,7 +1086,7 @@
+@@ -972,7 +1206,7 @@
  void
  dump_sockets_workhorse(ulong task, ulong flag, struct reference *ref)
  {
@@ -79905,7 +80885,7 @@
  	int max_fdset = 0;
  	int max_fds = 0;
  	ulong open_fds_addr = 0;
-@@ -1004,32 +1118,54 @@
+@@ -1004,32 +1238,54 @@
              sizeof(void *), "task files contents", FAULT_ON_ERROR);
  
          if (files_struct_addr) {
@@ -79978,7 +80958,7 @@
      	if (!open_fds_addr || !fd) { 
  		if (!NET_REFERENCE_CHECK(ref))
  			fprintf(fp, "No open sockets.\n");
-@@ -1061,7 +1197,7 @@
+@@ -1061,7 +1317,7 @@
      	for (;;) {
  	        unsigned long set;
  	        i = j * __NFDBITS;
@@ -79987,7 +80967,7 @@
  	            	break;
  	        set = open_fds.__fds_bits[j++];
  	        while (set) {
-@@ -1096,9 +1232,9 @@
+@@ -1096,9 +1352,9 @@
   */
  
  static char *socket_hdr_32 = 
@@ -79999,7 +80979,7 @@
  
  static int
  sym_socket_dump(ulong file, 
-@@ -1223,7 +1359,12 @@
+@@ -1223,7 +1479,12 @@
      			dump_struct("sock", sock, 0);
  			break;
  		case SOCK_V2:
@@ -80013,7 +80993,7 @@
  			break;
  		}
  		break;
---- crash/s390_dump.c.orig	2008-02-19 16:16:12.000000000 -0500
+--- crash/s390_dump.c.orig	2008-04-29 13:51:49.000000000 -0400
 +++ crash/s390_dump.c	2008-01-04 09:42:08.000000000 -0500
 @@ -1,8 +1,8 @@
  /* s390_dump.c - core analysis suite


Index: crash.spec
===================================================================
RCS file: /cvs/pkgs/rpms/crash/devel/crash.spec,v
retrieving revision 1.26
retrieving revision 1.27
diff -u -r1.26 -r1.27
--- crash.spec	29 Apr 2008 15:43:28 -0000	1.26
+++ crash.spec	29 Apr 2008 17:57:33 -0000	1.27
@@ -4,7 +4,7 @@
 Summary: crash utility for live systems; netdump, diskdump, kdump, LKCD or mcore dumpfiles
 Name: crash
 Version: 4.0
-Release: 6.0.5
+Release: 6.3
 License: GPL
 Group: Development/Debuggers
 Source: %{name}-%{version}.tar.gz
@@ -64,6 +64,10 @@
 %{_includedir}/*
 
 %changelog
+* Tue Aug 29 2008 Dave Anderson <anderson at redhat.com> - 4.0-6.3
+- Added crash-devel subpackage
+- Updated crash.patch to match upstream version 4.0-6.3
+
 * Wed Feb 20 2008 Dave Anderson <anderson at redhat.com> - 4.0-6.0.5
 - Second attempt at addressing the GCC 4.3 build, which failed due
   to additional ptrace.h includes in the lkcd vmdump header files.




More information about the fedora-extras-commits mailing list