--- a/programs/Xserver/hw/xfree86/os-support/linux/lnx_io.c	2024-11-09 21:20:06.049778523 +0200
+++ b/programs/Xserver/hw/xfree86/os-support/linux/lnx_io.c	2024-11-09 21:22:05.361396620 +0200
@@ -87,7 +87,7 @@
    struct kbd_repeat kbdrep_s;
 
    /* don't change, just test */
-   kbdrep_s.rate = -1;
+   kbdrep_s.period = -1;
    kbdrep_s.delay = -1;
    if (ioctl( 0, KDKBDREP, &kbdrep_s )) {
        return 0;
@@ -95,11 +95,11 @@
 
    /* do the change */
    if (rate == 0)				/* switch repeat off */
-     kbdrep_s.rate = 0;
+     kbdrep_s.period = 0;
    else
-     kbdrep_s.rate  = 10000 / rate;		/* convert cps to msec */
-   if (kbdrep_s.rate < 1)
-     kbdrep_s.rate = 1;
+     kbdrep_s.period  = 10000 / rate;		/* convert cps to msec */
+   if (kbdrep_s.period < 1)
+     kbdrep_s.period = 1;
    kbdrep_s.delay = delay;
    if (kbdrep_s.delay < 1)
      kbdrep_s.delay = 1;
@@ -124,10 +124,10 @@
    if (fd == -1) 
      return 0;   
 
-   kbdrate_s.rate = (rate + 5) / 10;  /* must be integer, so round up */
+   kbdrate_s.period = (rate + 5) / 10;  /* must be integer, so round up */
    kbdrate_s.delay = delay * HZ / 1000;  /* convert ms to Hz */
-   if (kbdrate_s.rate > 50)
-     kbdrate_s.rate = 50;
+   if (kbdrate_s.period > 50)
+     kbdrate_s.period = 50;
 
    if (ioctl( fd, KIOCSRATE, &kbdrate_s ))
      return 0;
--- a/programs/Xserver/hw/xfree86/os-support/linux/lnx_kbd.c	2024-11-09 21:20:14.719653884 +0200
+++ b/programs/Xserver/hw/xfree86/os-support/linux/lnx_kbd.c	2024-11-09 21:21:13.778804844 +0200
@@ -107,7 +107,7 @@
    struct kbd_repeat kbdrep_s;
 
    /* don't change, just test */
-   kbdrep_s.rate = -1;
+   kbdrep_s.period = -1;
    kbdrep_s.delay = -1;
    if (ioctl( 0, KDKBDREP, &kbdrep_s )) {
        return 0;
@@ -115,11 +115,11 @@
 
    /* do the change */
    if (rate == 0)				/* switch repeat off */
-     kbdrep_s.rate = 0;
+     kbdrep_s.period = 0;
    else
-     kbdrep_s.rate  = 10000 / rate;		/* convert cps to msec */
-   if (kbdrep_s.rate < 1)
-     kbdrep_s.rate = 1;
+     kbdrep_s.period  = 10000 / rate;		/* convert cps to msec */
+   if (kbdrep_s.period < 1)
+     kbdrep_s.period = 1;
    kbdrep_s.delay = delay;
    if (kbdrep_s.delay < 1)
      kbdrep_s.delay = 1;
@@ -144,10 +144,10 @@
    if (fd == -1) 
      return 0;   
 
-   kbdrate_s.rate = (rate + 5) / 10;  /* must be integer, so round up */
+   kbdrate_s.period = (rate + 5) / 10;  /* must be integer, so round up */
    kbdrate_s.delay = delay * HZ / 1000;  /* convert ms to Hz */
-   if (kbdrate_s.rate > 50)
-     kbdrate_s.rate = 50;
+   if (kbdrate_s.period > 50)
+     kbdrate_s.period = 50;
 
    if (ioctl( fd, KIOCSRATE, &kbdrate_s ))
      return 0;
