All of lore.kernel.org
 help / color / mirror / Atom feed
From: Dave Jones <davej@codemonkey.org.uk>
To: Grzegorz Jaskiewicz <gj@pointblue.com.pl>
Cc: Linux Kernel Mailing List <linux-kernel@vger.kernel.org>
Subject: Re: mb800 watchdog driver
Date: Thu, 13 Mar 2003 15:10:33 -0100	[thread overview]
Message-ID: <20030313161033.GA8751@suse.de> (raw)
In-Reply-To: <1047543064.16975.23.camel@gregs>

On Thu, Mar 13, 2003 at 08:11:04AM +0000, Grzegorz Jaskiewicz wrote:
 > 
 > I've wrote small driver for mb800 motherboards (x86, intel). And i want
 > to share with others. 
 > Any comments/patches are welcome.


> #include <sys/syscall.h>

not needed.
 
> #include <linux/version.h>

not needed.

> #include <linux/errno.h>            
> #include <linux/stddef.h>           

not needed.

> #include <asm/page.h>               
> #include <asm/pgtable.h>            

not needed.

> #ifdef CONFIG_DEVFS_FS
> #include <linux/devfs_fs_kernel.h>
> #else
> #error "this driver requires devfs, otherwise it would not work - sorry dude"
> #endif

devfs only drivers == EVIL. Pure EVIL.

> spinlock_t tab_lock;

can be static

> static struct proc_dir_entry *proc_mtd;
> int tab_o_count;

unused

>static struct file_operations tabfs = {
>    owner   : THIS_MODULE,
>    open    : open_wdog,      /* open */
>    write   : write_wdog,	/* write */
>    release : close_wdog,   /* release */
> };

use C99  .owner = THIS_MODULE
Ok, this is a 2.4 driver, but it makes forward porting simpler.
Also, the comments are pointless.

> void LockChip()
> void UnLockChip()

can be static (as can most other functions in this file)

>/*
>    if (check_region(0x2e, 2)){
>	printk(KERN_INFO "tab: my I/O space is allready in use, can't share it .. sorry\n");
>	return -1;
>    }
>
>    request_region(0x2e, 2, "mb800 watchdog");
>*/    

1. Probably shouldn't be commented out.
2. Don't use check_region, just check return of request_region.

>    printk(KERN_INFO "watchdog: DIE !!!\n");

Something more userfriendly "mb8wdog: unloading\n" would be nicer.

>	printk(KERN_INFO "MB800 WATCHDOG: LOAD DEVICE ENDED\n");

KERN_DEBUG ? and STOP SHOUTING!

>	printk(KERN_INFO "MB800 WATCHDOG: ENTER CREATE DISPATCH\n");

in fact, these printk's should probably be something like dprintk's
with dprintk being defined at the top of source like..

#define DEBUG
#ifndef DEBUG
# define dprintk(format, args...)
#else
# define dprintk(format, args...) printk(KERN_DEBUG "mb8wdog:", ## args)
#endif

>    if (copy_from_user(&b, buf, 1)){
>	return -EFAULT;
>    }
>
>    if (b){    
>	EnableAndSetWatchdog(b);
>    }
>    else{
>	DisableWatchdog();
>    }

Please choose one indentation style, and stick to it.
Preferably the one described in Documenation/CodingStyle

	if (b) {
		EnableAndSetWatchdog(b);
	} else {
		DisableWatchdog();
	}

Other than these small nits, I don't see any problems with it.
The biggest issue is the devfs-only requirement, which as I mentioned,
is really evil, and afaics, totally unnecessary.

		Dave

  reply	other threads:[~2003-03-13 15:02 UTC|newest]

Thread overview: 6+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2003-03-13  8:11 mb800 watchdog driver Grzegorz Jaskiewicz
2003-03-13 16:10 ` Dave Jones [this message]
2003-03-13 15:36   ` Joern Engel
2003-03-13 16:19   ` Christoph Hellwig
  -- strict thread matches above, loose matches on Subject: below --
2003-03-13 22:52 Grzegorz Jaskiewicz
2004-01-28 15:23 mb800 WatchDog driver Grzegorz Jaskiewicz

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20030313161033.GA8751@suse.de \
    --to=davej@codemonkey.org.uk \
    --cc=gj@pointblue.com.pl \
    --cc=linux-kernel@vger.kernel.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.