Merge branch 'master' of git://git.kernel.org/pub/scm/linux/kernel/git/linville/wirel...
[linux-2.6.git] / samples / kfifo / bytestream-example.c
index a94e6948b30d198afefdbae17782c84513a1698f..cfe40addda764f9a1353cb29eb6a11b551a1eec9 100644 (file)
@@ -44,7 +44,7 @@ static struct kfifo test;
 static DECLARE_KFIFO(test, unsigned char, FIFO_SIZE);
 #endif
 
-static unsigned char expected_result[FIFO_SIZE] = {
+static const unsigned char expected_result[FIFO_SIZE] = {
         3,  4,  5,  6,  7,  8,  9,  0,
         1, 20, 21, 22, 23, 24, 25, 26,
        27, 28, 29, 30, 31, 32, 33, 34,
@@ -90,9 +90,14 @@ static int __init testfunc(void)
 
        printk(KERN_INFO "queue len: %u\n", kfifo_len(&test));
 
+       /* show the first value without removing from the fifo */
+       if (kfifo_peek(&test, &i))
+               printk(KERN_INFO "%d\n", i);
+
        /* check the correctness of all values in the fifo */
        j = 0;
        while (kfifo_get(&test, &i)) {
+               printk(KERN_INFO "item = %d\n", i);
                if (i != expected_result[j++]) {
                        printk(KERN_WARNING "value mismatch: test failed\n");
                        return -EIO;
@@ -143,6 +148,7 @@ static const struct file_operations fifo_fops = {
        .owner          = THIS_MODULE,
        .read           = fifo_read,
        .write          = fifo_write,
+       .llseek         = noop_llseek,
 };
 
 static int __init example_init(void)