File device-mapper-gcc-warning.diff of Package lvm2.import5596
Index: LVM2.2.02.67/libdm/datastruct/hash.c
===================================================================
--- LVM2.2.02.67.orig/libdm/datastruct/hash.c	2009-11-03 08:45:35.000000000 +0800
+++ LVM2.2.02.67/libdm/datastruct/hash.c	2010-06-23 13:39:59.000000000 +0800
@@ -19,7 +19,7 @@
 	struct dm_hash_node *next;
 	void *data;
 	unsigned keylen;
-	char key[0];
+	unsigned char key[0];
 };
 
 struct dm_hash_table {
@@ -140,7 +140,7 @@
 static struct dm_hash_node **_find(struct dm_hash_table *t, const char *key,
 				   uint32_t len)
 {
-	unsigned h = _hash(key, len) & (t->num_slots - 1);
+	unsigned h = _hash((unsigned char*)key, len) & (t->num_slots - 1);
 	struct dm_hash_node **c;
 
 	for (c = &t->slots[h]; *c; c = &((*c)->next)) {
@@ -239,7 +239,7 @@
 char *dm_hash_get_key(struct dm_hash_table *t __attribute((unused)),
 		      struct dm_hash_node *n)
 {
-	return n->key;
+	return (char*)n->key;
 }
 
 void *dm_hash_get_data(struct dm_hash_table *t __attribute((unused)),
Index: LVM2.2.02.67/libdm/ioctl/libdm-iface.c
===================================================================
--- LVM2.2.02.67.orig/libdm/ioctl/libdm-iface.c	2010-06-02 00:08:13.000000000 +0800
+++ LVM2.2.02.67/libdm/ioctl/libdm-iface.c	2010-06-23 13:40:37.000000000 +0800
@@ -1884,7 +1884,8 @@
 		  dmt->no_flush ? 'N' : 'F',
 		  dmt->skip_lockfs ? "S " : "",
 		  dmt->query_inactive_table ? "I " : "",
-		  dmt->sector, _sanitise_message(dmt->message),
+		  (unsigned long long int)dmt->sector,
+		  _sanitise_message(dmt->message),
 		  dmi->data_size);
 #ifdef DM_IOCTLS
 	if (ioctl(_control_fd, command, dmi) < 0) {