> Does this help?
> 
> diff --git sys/dev/wscons/wskbd.c sys/dev/wscons/wskbd.c
> index 7631cd5f701..dd65f61ce63 100644
> --- sys/dev/wscons/wskbd.c
> +++ sys/dev/wscons/wskbd.c
> @@ -1229,7 +1229,10 @@ getkeyrepeat:
>  
>       case WSKBDIO_GETENCODINGS:
>               uedp = (struct wskbd_encoding_data *)data;
> -             for (count = 0; sc->id->t_keymap.keydesc[count].name; count++)
> +             for (count = 0;
> +                  sc->id->t_keymap.keydesc != NULL &&
> +                  sc->id->t_keymap.keydesc[count].name;
> +                  count++)
>                       ;
>               if (uedp->nencodings > count)
>                       uedp->nencodings = count;
> 

This ought to fix the panic Stuart is getting.

However I don't understand how t_keymap.keydesc can be a NULL pointer
(yet it obviousl was); it is initialized at wskbd attachment time with
valid data.

Stuart, did you issue specific wsconsctl or wsconscfg operations in this
VM prior to running 'kbd -l'? What are the contents of
/etc/wsconsctl.conf, if it exists?

Reply via email to