From: William Lee Irwin III <wli@holomorphy.com>
To: jsimmons@infradead.org
Cc: linux-kernel@vger.kernel.org
Subject: keyboard.c/kd.h field width fixes
Date: Thu, 22 May 2003 09:00:29 -0700 [thread overview]
Message-ID: <20030522160029.GS29926@holomorphy.com> (raw)
These guys get massive numbers of warnings about comparisons always true
or false due to limited ranges of data types. This appears to kill off
the warnings.
-- wli
diff -prauN mm8-2.5.69-1/drivers/char/keyboard.c mm8-2.5.69-2/drivers/char/keyboard.c
--- mm8-2.5.69-1/drivers/char/keyboard.c 2003-05-22 04:54:50.000000000 -0700
+++ mm8-2.5.69-2/drivers/char/keyboard.c 2003-05-22 08:02:02.000000000 -0700
@@ -76,7 +76,7 @@ void compute_shiftstate(void);
k_meta, k_ascii, k_lock, k_lowercase,\
k_slock, k_dead2, k_ignore, k_ignore
-typedef void (k_handler_fn)(struct vc_data *vc, unsigned char value,
+typedef void (k_handler_fn)(struct vc_data *vc, unsigned short value,
char up_flag, struct pt_regs *regs);
static k_handler_fn K_HANDLERS;
static k_handler_fn *k_handler[16] = { K_HANDLERS };
@@ -589,11 +589,11 @@ static void fn_null(struct vc_data *vc,
/*
* Special key handlers
*/
-static void k_ignore(struct vc_data *vc, unsigned char value, char up_flag, struct pt_regs *regs)
+static void k_ignore(struct vc_data *vc, unsigned short value, char up_flag, struct pt_regs *regs)
{
}
-static void k_spec(struct vc_data *vc, unsigned char value, char up_flag, struct pt_regs *regs)
+static void k_spec(struct vc_data *vc, unsigned short value, char up_flag, struct pt_regs *regs)
{
if (up_flag)
return;
@@ -606,12 +606,12 @@ static void k_spec(struct vc_data *vc, u
fn_handler[value](vc, regs);
}
-static void k_lowercase(struct vc_data *vc, unsigned char value, char up_flag, struct pt_regs *regs)
+static void k_lowercase(struct vc_data *vc, unsigned short value, char up_flag, struct pt_regs *regs)
{
printk(KERN_ERR "keyboard.c: k_lowercase was called - impossible\n");
}
-static void k_self(struct vc_data *vc, unsigned char value, char up_flag, struct pt_regs *regs)
+static void k_self(struct vc_data *vc, unsigned short value, char up_flag, struct pt_regs *regs)
{
if (up_flag)
return; /* no action, if this is a key release */
@@ -632,7 +632,7 @@ static void k_self(struct vc_data *vc, u
* dead keys modifying the same character. Very useful
* for Vietnamese.
*/
-static void k_dead2(struct vc_data *vc, unsigned char value, char up_flag, struct pt_regs *regs)
+static void k_dead2(struct vc_data *vc, unsigned short value, char up_flag, struct pt_regs *regs)
{
if (up_flag)
return;
@@ -642,21 +642,21 @@ static void k_dead2(struct vc_data *vc,
/*
* Obsolete - for backwards compatibility only
*/
-static void k_dead(struct vc_data *vc, unsigned char value, char up_flag, struct pt_regs *regs)
+static void k_dead(struct vc_data *vc, unsigned short value, char up_flag, struct pt_regs *regs)
{
static unsigned char ret_diacr[NR_DEAD] = {'`', '\'', '^', '~', '"', ',' };
value = ret_diacr[value];
k_dead2(vc, value, up_flag, regs);
}
-static void k_cons(struct vc_data *vc, unsigned char value, char up_flag, struct pt_regs *regs)
+static void k_cons(struct vc_data *vc, unsigned short value, char up_flag, struct pt_regs *regs)
{
if (up_flag)
return;
set_console(value);
}
-static void k_fn(struct vc_data *vc, unsigned char value, char up_flag, struct pt_regs *regs)
+static void k_fn(struct vc_data *vc, unsigned short value, char up_flag, struct pt_regs *regs)
{
if (up_flag)
return;
@@ -667,7 +667,7 @@ static void k_fn(struct vc_data *vc, uns
printk(KERN_ERR "k_fn called with value=%d\n", value);
}
-static void k_cur(struct vc_data *vc, unsigned char value, char up_flag, struct pt_regs *regs)
+static void k_cur(struct vc_data *vc, unsigned short value, char up_flag, struct pt_regs *regs)
{
static const char *cur_chars = "BDCA";
@@ -676,7 +676,7 @@ static void k_cur(struct vc_data *vc, un
applkey(vc, cur_chars[value], vc_kbd_mode(kbd, VC_CKMODE));
}
-static void k_pad(struct vc_data *vc, unsigned char value, char up_flag, struct pt_regs *regs)
+static void k_pad(struct vc_data *vc, unsigned short value, char up_flag, struct pt_regs *regs)
{
static const char *pad_chars = "0123456789+-*/\015,.?()#";
static const char *app_map = "pqrstuvwxylSRQMnnmPQS";
@@ -733,7 +733,7 @@ static void k_pad(struct vc_data *vc, un
put_queue(vc, 10);
}
-static void k_shift(struct vc_data *vc, unsigned char value, char up_flag, struct pt_regs *regs)
+static void k_shift(struct vc_data *vc, unsigned short value, char up_flag, struct pt_regs *regs)
{
int old_state = shift_state;
@@ -774,7 +774,7 @@ static void k_shift(struct vc_data *vc,
}
}
-static void k_meta(struct vc_data *vc, unsigned char value, char up_flag, struct pt_regs *regs)
+static void k_meta(struct vc_data *vc, unsigned short value, char up_flag, struct pt_regs *regs)
{
if (up_flag)
return;
@@ -786,7 +786,7 @@ static void k_meta(struct vc_data *vc, u
put_queue(vc, value | 0x80);
}
-static void k_ascii(struct vc_data *vc, unsigned char value, char up_flag, struct pt_regs *regs)
+static void k_ascii(struct vc_data *vc, unsigned short value, char up_flag, struct pt_regs *regs)
{
int base;
@@ -808,14 +808,14 @@ static void k_ascii(struct vc_data *vc,
npadch = npadch * base + value;
}
-static void k_lock(struct vc_data *vc, unsigned char value, char up_flag, struct pt_regs *regs)
+static void k_lock(struct vc_data *vc, unsigned short value, char up_flag, struct pt_regs *regs)
{
if (up_flag || rep)
return;
chg_vc_kbd_lock(kbd, value);
}
-static void k_slock(struct vc_data *vc, unsigned char value, char up_flag, struct pt_regs *regs)
+static void k_slock(struct vc_data *vc, unsigned short value, char up_flag, struct pt_regs *regs)
{
k_shift(vc, value, up_flag, regs);
if (up_flag || rep)
diff -prauN mm8-2.5.69-1/include/linux/kd.h mm8-2.5.69-2/include/linux/kd.h
--- mm8-2.5.69-1/include/linux/kd.h 2003-05-04 16:53:37.000000000 -0700
+++ mm8-2.5.69-2/include/linux/kd.h 2003-05-22 07:57:24.000000000 -0700
@@ -95,8 +95,8 @@ struct unimapinit {
#define KDSKBLED 0x4B65 /* set led flags (not lights) */
struct kbentry {
- unsigned char kb_table;
- unsigned char kb_index;
+ unsigned short kb_table;
+ unsigned short kb_index;
unsigned short kb_value;
};
#define K_NORMTAB 0x00
@@ -108,7 +108,7 @@ struct kbentry {
#define KDSKBENT 0x4B47 /* sets one entry in translation table */
struct kbsentry {
- unsigned char kb_func;
+ unsigned short kb_func;
unsigned char kb_string[512];
};
#define KDGKBSENT 0x4B48 /* gets one function key string entry */
next reply other threads:[~2003-05-22 15:47 UTC|newest]
Thread overview: 3+ messages / expand[flat|nested] mbox.gz Atom feed top
2003-05-22 16:00 William Lee Irwin III [this message]
-- strict thread matches above, loose matches on Subject: below --
2003-05-22 16:22 keyboard.c/kd.h field width fixes Andries.Brouwer
2003-05-22 16:24 ` William Lee Irwin III
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=20030522160029.GS29926@holomorphy.com \
--to=wli@holomorphy.com \
--cc=jsimmons@infradead.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