Trisquel 7 on Toshiba NB200 - needs constant mouse movement

9 replies [Last post]
ventadorn
Offline
Joined: 09/20/2015

Hi there I have been running Trisquel on my laptop for a year, no probs but now DO have a problem running it on a little netbook NB200. Whenever I play a video, download or install files, I have to keep the mouse moving otherwise the system hangs (or the video stutters) This happens at random intervals. I think I need to edit a grub file but not sure how to do this?

tomlukeywood
Offline
Joined: 12/05/2014

Just to make sure this is not a problem with your Hard Drive

dose this happen when running Trisquel from a CD or USB stick?

ventadorn
Offline
Joined: 09/20/2015

I will try later and let you know, the only usb stick I have at the moment is Linux Mint 17.2 and this works ok from usb.

ventadorn
Offline
Joined: 09/20/2015

Hi, tried with live usb stick Trisquel 7 and it still happens. Apparantly this is a known problem with Toshiba NB200 and I need to edit a grub file, but not sure how to do it. See:

http://www.linlap.com/toshiba_nb200

but there is no /boot/grub/grub.conf in Trisquel....and even if there was not sure how to add the required parameter.

tomlukeywood
Offline
Joined: 12/05/2014

weird /boot/grub/grub.cfg
your sure you using grub as the bootloader?

it may not be there on the live usb as it may not use grub(not sure)?

ventadorn
Offline
Joined: 09/20/2015

Yes am using grub apparantly, not changed anything there during install. I do have /boot/grub/grub.cfg but there is a warning not to edit this file:

#
# DO NOT EDIT THIS FILE
#
# It is automatically generated by grub-mkconfig using templates
# from /etc/grub.d and settings from /etc/default/grub
#

### BEGIN /etc/grub.d/00_header ###
if [ -s $prefix/grubenv ]; then
set have_grubenv=true
load_env
fi
if [ "${next_entry}" ] ; then
set default="${next_entry}"
set next_entry=
save_env next_entry
set boot_once=true
else
set default="0"
fi

if [ x"${feature_menuentry_id}" = xy ]; then
menuentry_id_option="--id"
else
menuentry_id_option=""
fi

export menuentry_id_option

if [ "${prev_saved_entry}" ]; then
set saved_entry="${prev_saved_entry}"
save_env saved_entry
set prev_saved_entry=
save_env prev_saved_entry
set boot_once=true
fi

function savedefault {
if [ -z "${boot_once}" ]; then
saved_entry="${chosen}"
save_env saved_entry
fi
}
function recordfail {
set recordfail=1
if [ -n "${have_grubenv}" ]; then if [ -z "${boot_once}" ]; then save_env recordfail; fi; fi
}
function load_video {
if [ x$feature_all_video_module = xy ]; then
insmod all_video
else
insmod efi_gop
insmod efi_uga
insmod ieee1275_fb
insmod vbe
insmod vga
insmod video_bochs
insmod video_cirrus
fi
}

if [ x$feature_default_font_path = xy ] ; then
font=unicode
else
insmod part_msdos
insmod ext2
set root='hd0,msdos1'
if [ x$feature_platform_search_hint = xy ]; then
search --no-floppy --fs-uuid --set=root --hint-bios=hd0,msdos1 --hint-efi=hd0,msdos1 --hint-baremetal=ahci0,msdos1 2c1da0c5-74ea-4d0b-8c3a-d4fce0ea939d
else
search --no-floppy --fs-uuid --set=root 2c1da0c5-74ea-4d0b-8c3a-d4fce0ea939d
fi
font="/usr/share/grub/unicode.pf2"
fi

if loadfont $font ; then
set gfxmode=auto
load_video
insmod gfxterm
set locale_dir=$prefix/locale
set lang=en_GB
insmod gettext
fi
terminal_output gfxterm
if [ "${recordfail}" = 1 ] ; then
set timeout=30
else
if [ x$feature_timeout_style = xy ] ; then
set timeout_style=menu
set timeout=5
# Fallback normal timeout code in case the timeout_style feature is
# unavailable.
else
set timeout=5
fi
fi
### END /etc/grub.d/00_header ###

### BEGIN /etc/grub.d/01_PASSWORD ###
set superusers=grub
password grub 27420
### END /etc/grub.d/01_PASSWORD ###

### BEGIN /etc/grub.d/05_debian_theme ###
set menu_color_normal=white/black
set menu_color_highlight=black/light-gray
### END /etc/grub.d/05_debian_theme ###

### BEGIN /etc/grub.d/06_trisquel_theme ###
set menu_color_normal=white/black
set menu_color_highlight=black/light-gray
### END /etc/grub.d/06_trisquel_theme ###

### BEGIN /etc/grub.d/10_linux ###
function gfxmode {
set gfxpayload="${1}"
if [ "${1}" = "keep" ]; then
set vt_handoff=vt.handoff=7
else
set vt_handoff=
fi
}
if [ "${recordfail}" != 1 ]; then
if [ -e ${prefix}/gfxblacklist.txt ]; then
if hwmatch ${prefix}/gfxblacklist.txt 3; then
if [ ${match} = 0 ]; then
set linux_gfx_mode=keep
else
set linux_gfx_mode=text
fi
else
set linux_gfx_mode=text
fi
else
set linux_gfx_mode=keep
fi
else
set linux_gfx_mode=text
fi
export linux_gfx_mode
menuentry 'Trisquel GNU/Linux' --class trisquel --class gnu-linux --class gnu --class os --unrestricted $menuentry_id_option 'gnulinux-simple-2c1da0c5-74ea-4d0b-8c3a-d4fce0ea939d' {
recordfail
load_video
gfxmode $linux_gfx_mode
insmod gzio
insmod part_msdos
insmod ext2
set root='hd0,msdos1'
if [ x$feature_platform_search_hint = xy ]; then
search --no-floppy --fs-uuid --set=root --hint-bios=hd0,msdos1 --hint-efi=hd0,msdos1 --hint-baremetal=ahci0,msdos1 2c1da0c5-74ea-4d0b-8c3a-d4fce0ea939d
else
search --no-floppy --fs-uuid --set=root 2c1da0c5-74ea-4d0b-8c3a-d4fce0ea939d
fi
linux /boot/vmlinuz-3.13.0-63-lowlatency root=UUID=2c1da0c5-74ea-4d0b-8c3a-d4fce0ea939d ro quiet splash nomdmonddf nomdmonisw $vt_handoff
initrd /boot/initrd.img-3.13.0-63-lowlatency
}
submenu 'Advanced options for Trisquel GNU/Linux' $menuentry_id_option 'gnulinux-advanced-2c1da0c5-74ea-4d0b-8c3a-d4fce0ea939d' {
menuentry 'Trisquel GNU/Linux, with Linux-Libre 3.13.0-63-lowlatency' --class trisquel --class gnu-linux --class gnu --class os --unrestricted $menuentry_id_option 'gnulinux-3.13.0-63-lowlatency-advanced-2c1da0c5-74ea-4d0b-8c3a-d4fce0ea939d' {
recordfail
load_video
gfxmode $linux_gfx_mode
insmod gzio
insmod part_msdos
insmod ext2
set root='hd0,msdos1'
if [ x$feature_platform_search_hint = xy ]; then
search --no-floppy --fs-uuid --set=root --hint-bios=hd0,msdos1 --hint-efi=hd0,msdos1 --hint-baremetal=ahci0,msdos1 2c1da0c5-74ea-4d0b-8c3a-d4fce0ea939d
else
search --no-floppy --fs-uuid --set=root 2c1da0c5-74ea-4d0b-8c3a-d4fce0ea939d
fi
echo 'Loading Linux 3.13.0-63-lowlatency ...'
linux /boot/vmlinuz-3.13.0-63-lowlatency root=UUID=2c1da0c5-74ea-4d0b-8c3a-d4fce0ea939d ro quiet splash nomdmonddf nomdmonisw $vt_handoff
echo 'Loading initial ramdisk ...'
initrd /boot/initrd.img-3.13.0-63-lowlatency
}
menuentry 'Trisquel GNU/Linux, with Linux-Libre 3.13.0-39-lowlatency' --class trisquel --class gnu-linux --class gnu --class os --unrestricted $menuentry_id_option 'gnulinux-3.13.0-39-lowlatency-advanced-2c1da0c5-74ea-4d0b-8c3a-d4fce0ea939d' {
recordfail
load_video
gfxmode $linux_gfx_mode
insmod gzio
insmod part_msdos
insmod ext2
set root='hd0,msdos1'
if [ x$feature_platform_search_hint = xy ]; then
search --no-floppy --fs-uuid --set=root --hint-bios=hd0,msdos1 --hint-efi=hd0,msdos1 --hint-baremetal=ahci0,msdos1 2c1da0c5-74ea-4d0b-8c3a-d4fce0ea939d
else
search --no-floppy --fs-uuid --set=root 2c1da0c5-74ea-4d0b-8c3a-d4fce0ea939d
fi
echo 'Loading Linux 3.13.0-39-lowlatency ...'
linux /boot/vmlinuz-3.13.0-39-lowlatency root=UUID=2c1da0c5-74ea-4d0b-8c3a-d4fce0ea939d ro quiet splash nomdmonddf nomdmonisw $vt_handoff
echo 'Loading initial ramdisk ...'
initrd /boot/initrd.img-3.13.0-39-lowlatency
}
}

### END /etc/grub.d/10_linux ###

### BEGIN /etc/grub.d/20_linux_xen ###

### END /etc/grub.d/20_linux_xen ###

### BEGIN /etc/grub.d/30_os-prober ###
### END /etc/grub.d/30_os-prober ###

### BEGIN /etc/grub.d/30_uefi-firmware ###
### END /etc/grub.d/30_uefi-firmware ###

### BEGIN /etc/grub.d/40_custom ###
# This file provides an easy way to add custom menu entries. Simply type the
# menu entries you want to add after this comment. Be careful not to change
# the 'exec tail' line above.
### END /etc/grub.d/40_custom ###

### BEGIN /etc/grub.d/41_custom ###
if [ -f ${config_directory}/custom.cfg ]; then
source ${config_directory}/custom.cfg
elif [ -z "${config_directory}" -a -f $prefix/custom.cfg ]; then
source $prefix/custom.cfg;
fi
### END /etc/grub.d/41_custom ###

Magic Banana

I am a member!

Offline
Joined: 07/24/2010

The documentation you found is for GRUB 1. Trisquel has been using GRUB 2 for years. The arguments to pass to the Linux kernel (except recovery entries) are to be written in the varibale GRUB_CMDLINE_LINUX_DEFAULT in /etc/default/grub: https://www.gnu.org/software/grub/manual/grub.html#Simple-configuration

ventadorn
Offline
Joined: 09/20/2015

Thanks for that very helpful, have tried to edit /etc/default/grub but must be doing something wrong. Am trying to add

processor.max_cstate=1

to

GRUB_DEFAULT=0
GRUB_TIMEOUT=5
GRUB_DISTRIBUTOR=`lsb_release -i -s 2> /dev/null || echo Debian`
GRUB_CMDLINE_LINUX_DEFAULT="quiet splash"
GRUB_CMDLINE_LINUX=""
am then running sudo update-grub
what should it look like?

Magic Banana

I am a member!

Offline
Joined: 07/24/2010

You would get:
GRUB_DEFAULT=0
GRUB_TIMEOUT=5
GRUB_DISTRIBUTOR=`lsb_release -i -s 2> /dev/null || echo Debian`
GRUB_CMDLINE_LINUX_DEFAULT="quiet splash processor.max_cstate=1"
GRUB_CMDLINE_LINUX=""

And, yes, you need to execute 'sudo update-grub' after saving /etc/default/grub.

ventadorn
Offline
Joined: 09/20/2015

Hi thanks, that is exactly what I did, and things did improve a bit but still got some hangs, though less.

I have tried something that was put forward as a fix for the Toshiba NB300 and this seems to be a fix for the NB200 as well:

etc/default/grub

GRUB_CMDLINE_LINUX_DEFAULT="quiet splash nolapic_timer clocksource=jiffies"

sudo update-grub

and this seems to work perfectly now. I heard that this could lead to one processor running at 100% all the time, but playing a video maximised I have about 72% on each core. Memory use about 52% of 1gb. So all would seem to be well.

By the way, not fully tested yet but it would seem the Atheros 9285 chipset in the NB200 works with Trisquel....will report back on a separate post. Many thanks