mirror of https://lore.kernel.org/lkml/
 help / color / mirror / Atom feed
From: "J.A. Magallon" <jamagallon@able.es>
To: Andrew Morton <akpm@osdl.org>
Cc: linux-kernel@vger.kernel.org
Subject: [PATCH] more signed char cleanups in scripts
Date: Tue, 21 Jun 2005 22:09:08 +0000	[thread overview]
Message-ID: <1119391748l.25237l.3l@werewolf.able.es> (raw)
In-Reply-To: <20050619233029.45dd66b8.akpm@osdl.org> (from akpm@osdl.org on Mon Jun 20 08:30:29 2005)


On 06.20, Andrew Morton wrote:
> 
> ftp://ftp.kernel.org/pub/linux/kernel/people/akpm/patches/2.6/2.6.12/2.6.12-mm1/
> 

This cleans the last signedness problems I have seen in scripts, at least
what I can see with make oldconfig, make config, make menuconfig, 
make gconfig and make.

I would like you to take a special look at the kallsyms.c changes.
I have not seen anything related to arithmetic where signedness could matter,
except probably this:

-static inline unsigned int rehash_token(unsigned int hash, unsigned char data)
+static inline unsigned int rehash_token(unsigned int hash, char data)
 {  
-   return ((hash * 16777619) ^ data);
+   return ((hash * 16777619) ^ (unsigned char)data);
 }

so I casted it explicitely to 'unsigned'.

Patch follows:

--- linux-2.6.12-jam1/scripts/mod/sumversion.c.orig	2005-06-21 23:44:30.000000000 +0200
+++ linux-2.6.12-jam1/scripts/mod/sumversion.c	2005-06-21 23:47:09.000000000 +0200
@@ -252,9 +252,9 @@
 }
 
 /* FIXME: Handle .s files differently (eg. # starts comments) --RR */
-static int parse_file(const signed char *fname, struct md4_ctx *md)
+static int parse_file(const char *fname, struct md4_ctx *md)
 {
-	signed char *file;
+	char *file;
 	unsigned long i, len;
 
 	file = grab_file(fname, &len);
@@ -332,7 +332,7 @@
 	   Sum all files in the same dir or subdirs.
 	*/
 	while ((line = get_next_line(&pos, file, flen)) != NULL) {
-		signed char* p = line;
+		char* p = line;
 		if (strncmp(line, "deps_", sizeof("deps_")-1) == 0) {
 			check_files = 1;
 			continue;
@@ -458,7 +458,7 @@
 	close(fd);
 }
 
-static int strip_rcs_crap(signed char *version)
+static int strip_rcs_crap(char *version)
 {
 	unsigned int len, full_len;
 
--- linux-2.6.12-jam1/scripts/lxdialog/inputbox.c.orig	2005-06-21 23:40:27.000000000 +0200
+++ linux-2.6.12-jam1/scripts/lxdialog/inputbox.c	2005-06-21 23:42:39.000000000 +0200
@@ -21,7 +21,7 @@
 
 #include "dialog.h"
 
-unsigned char dialog_input_result[MAX_LEN + 1];
+char dialog_input_result[MAX_LEN + 1];
 
 /*
  *  Print the termination buttons
@@ -48,7 +48,7 @@
 {
     int i, x, y, box_y, box_x, box_width;
     int input_x = 0, scroll = 0, key = 0, button = -1;
-    unsigned char *instr = dialog_input_result;
+    char *instr = dialog_input_result;
     WINDOW *dialog;
 
     /* center dialog box on screen */
--- linux-2.6.12-jam1/scripts/lxdialog/dialog.h.orig	2005-06-21 23:42:55.000000000 +0200
+++ linux-2.6.12-jam1/scripts/lxdialog/dialog.h	2005-06-21 23:43:19.000000000 +0200
@@ -163,7 +163,7 @@
 int dialog_checklist (const char *title, const char *prompt, int height,
 		int width, int list_height, int item_no,
 		const char * const * items, int flag);
-extern unsigned char dialog_input_result[];
+extern char dialog_input_result[];
 int dialog_inputbox (const char *title, const char *prompt, int height,
 		int width, const char *init);
 
--- linux-2.6.12-jam1/scripts/kallsyms.c.orig	2005-06-21 23:47:43.000000000 +0200
+++ linux-2.6.12-jam1/scripts/kallsyms.c	2005-06-21 23:52:37.000000000 +0200
@@ -61,7 +61,7 @@
 	char type;
 	unsigned char flags;
 	unsigned char len;
-	unsigned char *sym;
+	char *sym;
 };
 
 
@@ -87,7 +87,7 @@
 struct token *hash_table[HASH_TABLE_SIZE];
 
 /* the table that holds the result of the compression */
-unsigned char best_table[256][MAX_TOK_SIZE+1];
+char best_table[256][MAX_TOK_SIZE+1];
 unsigned char best_table_len[256];
 
 
@@ -160,7 +160,7 @@
 	/* include the type field in the symbol name, so that it gets
 	 * compressed together */
 	s->len = strlen(str) + 1;
-	s->sym = (char *) malloc(s->len + 1);
+	s->sym = malloc(s->len + 1);
 	strcpy(s->sym + 1, str);
 	s->sym[0] = s->type;
 
@@ -256,7 +256,7 @@
 
 /* uncompress a compressed symbol. When this function is called, the best table
  * might still be compressed itself, so the function needs to be recursive */
-static int expand_symbol(unsigned char *data, int len, char *result)
+static int expand_symbol(char *data, int len, char *result)
 {
 	int c, rlen, total=0;
 
@@ -365,12 +365,12 @@
 
 /* table lookup compression functions */
 
-static inline unsigned int rehash_token(unsigned int hash, unsigned char data)
+static inline unsigned int rehash_token(unsigned int hash, char data)
 {
-	return ((hash * 16777619) ^ data);
+	return ((hash * 16777619) ^ (unsigned char)data);
 }
 
-static unsigned int hash_token(unsigned char *data, int len)
+static unsigned int hash_token(char *data, int len)
 {
 	unsigned int hash=HASH_BASE_OFFSET;
 	int i;
@@ -382,7 +382,7 @@
 }
 
 /* find a token given its data and hash value */
-static struct token *find_token_hash(unsigned char *data, int len, unsigned int hash)
+static struct token *find_token_hash(char *data, int len, unsigned int hash)
 {
 	struct token *ptr;
 
@@ -414,7 +414,7 @@
 
 /* build the counts for all the tokens that start with "data", and have lenghts
  * from 2 to "len" */
-static void learn_token(unsigned char *data, int len)
+static void learn_token(char *data, int len)
 {
 	struct token *ptr,*last_ptr;
 	int i, newprofit;
@@ -481,7 +481,7 @@
  * from 2 to "len". This function is much simpler than learn_token because we have
  * more guarantees (tho tokens exist, the ->smaller pointer is set, etc.)
  * The two separate functions exist only because of compression performance */
-static void forget_token(unsigned char *data, int len)
+static void forget_token(char *data, int len)
 {
 	struct token *ptr;
 	int i, newprofit;
@@ -506,7 +506,7 @@
 }
 
 /* count all the possible tokens in a symbol */
-static void learn_symbol(unsigned char *symbol, int len)
+static void learn_symbol(char *symbol, int len)
 {
 	int i;
 
@@ -515,7 +515,7 @@
 }
 
 /* decrease the count for all the possible tokens in a symbol */
-static void forget_symbol(unsigned char *symbol, int len)
+static void forget_symbol(char *symbol, int len)
 {
 	int i;
 
@@ -559,10 +559,10 @@
 
 /* replace a given token in all the valid symbols. Use the sampled symbols
  * to update the counts */
-static void compress_symbols(unsigned char *str, int tlen, int idx)
+static void compress_symbols(char *str, int tlen, int idx)
 {
 	int i, len, learn, size;
-	unsigned char *p;
+	char *p;
 
 	for (i = 0; i < cnt; i++) {
 
@@ -574,7 +574,7 @@
 
 		do {
 			/* find the token on the symbol */
-			p = (unsigned char *) strstr((char *) p, (char *) str);
+			p = strstr(p, str);
 			if (!p) break;
 
 			if (!learn) {


--
J.A. Magallon <jamagallon()able!es>     \               Software is like sex:
werewolf!able!es                         \         It's better when it's free
Mandriva Linux release 2006.0 (Cooker) for i586
Linux 2.6.12-jam1 (gcc 4.0.1 (4.0.1-0.2mdk for Mandriva Linux release 2006.0))



  parent reply	other threads:[~2005-06-21 22:40 UTC|newest]

Thread overview: 64+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2005-06-20  6:30 2.6.12-mm1 Andrew Morton
2005-06-20  6:57 ` 2.6.12-mm1 Benjamin Herrenschmidt
2005-06-20  8:54   ` 2.6.12-mm1 Ethan Benson
2005-06-20  7:46 ` 2.6.12-mm1 Brice Goglin
2005-06-20  8:14   ` 2.6.12-mm1 Dominik Brodowski
2005-06-20  8:49     ` 2.6.12-mm1 Brice Goglin
     [not found]       ` <20050620085449.GA32330@isilmar.linta.de>
2005-06-20 13:11         ` 2.6.12-mm1 Brice Goglin
2005-06-22 23:34           ` 2.6.12-mm1 Rajesh Shah
2005-06-23  6:25             ` 2.6.12-mm1 Brice Goglin
2005-06-23 17:05               ` 2.6.12-mm1 Rajesh Shah
2005-06-23 18:09                 ` 2.6.12-mm1 Brice Goglin
2005-06-23 20:32                   ` 2.6.12-mm1 Rajesh Shah
2005-06-23 21:07                     ` 2.6.12-mm1 Brice Goglin
2005-06-23 21:33                       ` 2.6.12-mm1 Brice Goglin
2005-06-20  7:59 ` 2.6.12-mm1 Brice Goglin
2005-06-21 12:40   ` 2.6.12-mm1 Brice Goglin
2005-06-21 16:27     ` 2.6.12-mm1 Takashi Iwai
2005-06-21 16:32       ` 2.6.12-mm1 Takashi Iwai
2005-06-21 17:02       ` 2.6.12-mm1 Brice Goglin
2005-06-21 17:16         ` 2.6.12-mm1 Takashi Iwai
2005-06-21 19:39           ` 2.6.12-mm1 Brice Goglin
2005-06-22 10:10             ` 2.6.12-mm1 Takashi Iwai
2005-06-20  9:48 ` [patch] 2.6.12-mm1: saa7134-core.c compile error Adrian Bunk
2005-06-20 22:19   ` Michael Krufky
2005-06-20 11:36 ` [PATCH] bttv fix [was: 2.6.12-mm1] J.A. Magallon
2005-06-20 11:38 ` 2.6.12-mm1 J.A. Magallon
2005-06-20 16:36   ` 2.6.12-mm1 Jeff Garzik
2005-06-20 22:35     ` 2.6.12-mm1 J.A. Magallon
2005-06-20 12:32 ` [PATCH] Fix Reiser4 Dependencies Andrew James Wade
2005-06-20 18:26   ` Hans Reiser
2005-06-20 20:44     ` Andrew James Wade
2005-06-21 11:27       ` Edward Shishkin
2005-06-21 18:47         ` Hans Reiser
2005-06-21 19:26           ` Andrew James Wade
2005-06-22  8:56             ` Edward Shishkin
2005-06-22  8:39           ` Edward Shishkin
2005-06-20 13:14 ` 2.6.12-mm1 Andy Whitcroft
2005-06-21 22:55   ` 2.6.12-mm1 Greg KH
2005-06-22  9:23     ` 2.6.12-mm1 Andy Whitcroft
2005-06-22 10:04       ` 2.6.12-mm1 Ivan Kokshaysky
2005-06-20 13:21 ` 2.6.12-mm1: Kernel BUG at "fs/open.c":935 Rafael J. Wysocki
2005-06-20 13:54   ` Dipankar Sarma
2005-06-20 14:05     ` Rafael J. Wysocki
2005-06-20 17:38 ` 2.6.12-mm1: drivers/misc/ibmasm/ compile error Adrian Bunk
2005-06-20 20:24   ` Andrew Morton
2005-06-20 18:29 ` 2.6.12-mm1 Jean Delvare
2005-06-20 20:41   ` 2.6.12-mm1 Andrew Morton
2005-06-20 21:11     ` 2.6.12-mm1 Jean Delvare
2005-06-20 21:23       ` 2.6.12-mm1 Andrew Morton
2005-06-20 21:42         ` 2.6.12-mm1 Jean Delvare
2005-06-20 21:53           ` 2.6.12-mm1 Andrew Morton
2005-06-21 20:06           ` 2.6.12-mm1 Mauro Carvalho Chehab
2005-06-21 21:25             ` 2.6.12-mm1 Jean Delvare
2005-06-20 18:39 ` gregkh-usb-usb-isp116x-hcd-add.patch (was 2.6.12-mm1) Alexey Dobriyan
2005-06-20 22:15 ` 2.6.12-mm1 J.A. Magallon
2005-06-20 22:34   ` iptables bug (was: Re: 2.6.12-mm1) Andrew Morton
2005-06-20 23:39     ` iptables bug Patrick McHardy
2005-06-21 19:21       ` Stephen Jones
2005-06-22  1:52         ` Patrick McHardy
2005-06-21 22:09 ` J.A. Magallon [this message]
2005-06-21 22:18   ` [PATCH] more signed char cleanups in scripts Andrew Morton
2005-06-21 22:59     ` J.A. Magallon
2005-06-22 11:46       ` Paulo Marques
2005-06-22  0:05     ` Lee Revell

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=1119391748l.25237l.3l@werewolf.able.es \
    --to=jamagallon@able.es \
    --cc=akpm@osdl.org \
    --cc=linux-kernel@vger.kernel.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox

Powered by JetHome