--- /usr/share/laptop-mode-tools/modules/laptop-mode.orig 2011-10-27 02:13:16.620891369 +0200 +++ /usr/share/laptop-mode-tools/modules/laptop-mode 2011-10-27 02:17:23.801129242 +0200 @@ -187,21 +187,18 @@ set_sysctl /proc/sys/fs/xfs/xfsbufd_centisecs 3000 fi - case "$KLEVEL" in - "2.4") - log "VERBOSE" "Adjusting 2.4 kernel parameters to enable laptop mode." - set_sysctl /proc/sys/vm/laptop_mode 1 - set_sysctl /proc/sys/vm/bdflush "30 500 0 0 $AGE $AGE 60 20 0" - ;; - "2.6"|"3.0") - log "VERBOSE" "Adjusting $KLEVEL kernel parameters to enable laptop mode." - set_sysctl /proc/sys/vm/laptop_mode "$LM_SECONDS_BEFORE_SYNC" - set_sysctl /proc/sys/vm/dirty_writeback_centisecs "$AGE" - set_sysctl /proc/sys/vm/dirty_expire_centisecs "$AGE" - set_sysctl /proc/sys/vm/dirty_ratio "$LM_DIRTY_RATIO" - set_sysctl /proc/sys/vm/dirty_background_ratio "$LM_DIRTY_BACKGROUND_RATIO" - ;; - esac + if [ -f /proc/sys/vm/bdflush ]; then + log "VERBOSE" "Adjusting 2.4 kernel parameters to enable laptop mode." + set_sysctl /proc/sys/vm/laptop_mode 1 + set_sysctl /proc/sys/vm/bdflush "30 500 0 0 $AGE $AGE 60 20 0" + else + log "VERBOSE" "Adjusting 2.6+ kernel parameters to enable laptop mode." + set_sysctl /proc/sys/vm/laptop_mode "$LM_SECONDS_BEFORE_SYNC" + set_sysctl /proc/sys/vm/dirty_writeback_centisecs "$AGE" + set_sysctl /proc/sys/vm/dirty_expire_centisecs "$AGE" + set_sysctl /proc/sys/vm/dirty_ratio "$LM_DIRTY_RATIO" + set_sysctl /proc/sys/vm/dirty_background_ratio "$LM_DIRTY_BACKGROUND_RATIO" + fi if [ $CONTROL_MOUNT_OPTIONS -eq 1 ]; then log "VERBOSE" "Remounting filesystems." # The -r flag makes 'read' preserve backslashes read from @@ -316,19 +313,16 @@ set_sysctl /proc/sys/fs/xfs/xfssyncd_centisecs $((100*$DEF_XFS_SYNC_INTERVAL)) set_sysctl /proc/sys/fs/xfs/xfsbufd_centisecs $((100*$DEF_XFS_BUFD_INTERVAL)) fi - case "$KLEVEL" in - "2.4") - log "VERBOSE" "Adjusting 2.4 kernel parameters to disable laptop mode." - set_sysctl /proc/sys/vm/bdflush "30 500 0 0 $U_AGE $B_AGE 60 20 0" - ;; - "2.6"|"3.0") - log "VERBOSE" "Adjusting $KLEVEL kernel parameters to disable laptop mode." - set_sysctl /proc/sys/vm/dirty_writeback_centisecs "$U_AGE" - set_sysctl /proc/sys/vm/dirty_expire_centisecs "$B_AGE" - set_sysctl /proc/sys/vm/dirty_ratio "$NOLM_DIRTY_RATIO" - set_sysctl /proc/sys/vm/dirty_background_ratio "$NOLM_DIRTY_BACKGROUND_RATIO" - ;; - esac + if [ -f /proc/sys/vm/bdflush ]; then + log "VERBOSE" "Adjusting 2.4 kernel parameters to disable laptop mode." + set_sysctl /proc/sys/vm/bdflush "30 500 0 0 $U_AGE $B_AGE 60 20 0" + else + log "VERBOSE" "Adjusting 2.6+ kernel parameters to disable laptop mode." + set_sysctl /proc/sys/vm/dirty_writeback_centisecs "$U_AGE" + set_sysctl /proc/sys/vm/dirty_expire_centisecs "$B_AGE" + set_sysctl /proc/sys/vm/dirty_ratio "$NOLM_DIRTY_RATIO" + set_sysctl /proc/sys/vm/dirty_background_ratio "$NOLM_DIRTY_BACKGROUND_RATIO" + fi if [ $CONTROL_MOUNT_OPTIONS -eq 1 ] ; then log "VERBOSE" "Remounting filesystems." # The -r flag makes 'read' preserve backslashes read from