Bug 527653 - /etc/init.d/ksm: line 69: [: -eq: unary operator expected
Summary: /etc/init.d/ksm: line 69: [: -eq: unary operator expected
Keywords:
Status: CLOSED RAWHIDE
Alias: None
Product: Fedora
Classification: Fedora
Component: qemu
Version: rawhide
Hardware: All
OS: Linux
high
medium
Target Milestone: ---
Assignee: Mark McLoughlin
QA Contact: Fedora Extras Quality Assurance
URL:
Whiteboard:
Depends On:
Blocks: F12VirtBlocker
TreeView+ depends on / blocked
 
Reported: 2009-10-07 07:10 UTC by Qian Cai
Modified: 2009-10-12 07:16 UTC (History)
10 users (show)

Fixed In Version:
Doc Type: Bug Fix
Doc Text:
Clone Of:
Environment:
Last Closed: 2009-10-12 07:16:39 UTC
Type: ---
Embargoed:


Attachments (Terms of Use)

Description Qian Cai 2009-10-07 07:10:48 UTC
Description of problem:
Running ksm status without loading ksm module or kernel does not support it, it throws out errors.

# /etc/init.d/ksm status
cat: /sys/kernel/mm/ksm/run: No such file or directory
/etc/init.d/ksm: line 69: [: -eq: unary operator expected
ksm is not running

Version-Release number of selected component (if applicable):
qemu-common-0.11.0-3.fc12.x86_64

How reproducible:
always

Steps to Reproduce:
1. make sure the kernel does not have KSM enable.
2. service ksm status
  
Actual results:
untidy error messages

Expected results:
more meaningful error messages like "No KSM support in kernel or the module not loaded."

Comment 1 Mark McLoughlin 2009-10-09 11:11:00 UTC
Thanks, here's the fix I'll push for F-12:

http://gitorious.org/ksm-control-scripts/ksm-control-scripts/commit/c0b6774c9032ac3623a5d4f736707e6855e57867

Look okay to you danken?

Comment 2 Dan Kenigsberg 2009-10-09 12:14:34 UTC
you'd probably prefer to throw away stderr, not stdout, in
$(cat /sys/kernel/mm/ksm/run &>/dev/null)
;-)

and come to think of it, doing
[ "$(cat /sys/kernel/mm/ksm/run &>/dev/null)" != 1 ]
is a bit more robust (or should I say paranoid?).

Comment 3 Mark McLoughlin 2009-10-09 12:31:29 UTC
(In reply to comment #2)
> you'd probably prefer to throw away stderr, not stdout, in
> $(cat /sys/kernel/mm/ksm/run &>/dev/null)
> ;-)

Gah, I fixed that, but forgot to include it before pushing

> and come to think of it, doing
> [ "$(cat /sys/kernel/mm/ksm/run &>/dev/null)" != 1 ]
> is a bit more robust (or should I say paranoid?).  

Okay

Pushed this:

http://gitorious.org/ksm-control-scripts/ksm-control-scripts/commit/71db2c0ac8

Comment 4 Mark McLoughlin 2009-10-09 14:36:32 UTC
* Fri Oct  9 2009 Mark McLoughlin <markmc> - 2:0.11.0-6
- Fix fs errors with virtio and qcow2 backing file (#524734)
- Fix ksm initscript errors on kernel missing ksm (#527653)
- Add missing Requires(post): getent, useradd, groupadd (#527087)

Comment 5 Mark McLoughlin 2009-10-09 16:01:38 UTC
tag request: https://fedorahosted.org/rel-eng/ticket/2429

Comment 6 Mark McLoughlin 2009-10-12 07:16:39 UTC
tagged now for F12 GA


Note You need to log in before you can comment on or make changes to this bug.