Re: [PATCH] Add sysfs support for the IPMI device interface

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



I get the following compile problem with this change in linus' git repo....

  CC [M]  drivers/char/ipmi/ipmi_devintf.o
drivers/char/ipmi/ipmi_devintf.c: In function 'ipmi_new_smi':
drivers/char/ipmi/ipmi_devintf.c:532: warning: passing argument 1 of
'class_simple_device_add' from incompatible pointer type
drivers/char/ipmi/ipmi_devintf.c: In function 'ipmi_smi_gone':
drivers/char/ipmi/ipmi_devintf.c:537: warning: passing argument 1 of
'class_simple_device_remove' makes integer from pointer without a cast
drivers/char/ipmi/ipmi_devintf.c:537: error: too many arguments to
function 'class_simple_device_remove'
drivers/char/ipmi/ipmi_devintf.c: In function 'init_ipmi_devintf':
drivers/char/ipmi/ipmi_devintf.c:558: warning: assignment from
incompatible pointer type
drivers/char/ipmi/ipmi_devintf.c:566: warning: passing argument 1 of
'class_simple_destroy' from incompatible pointer type
drivers/char/ipmi/ipmi_devintf.c:580: warning: passing argument 1 of
'class_simple_destroy' from incompatible pointer type
drivers/char/ipmi/ipmi_devintf.c: In function 'cleanup_ipmi':
drivers/char/ipmi/ipmi_devintf.c:591: warning: passing argument 1 of
'class_simple_destroy' from incompatible pointer type
make[3]: *** [drivers/char/ipmi/ipmi_devintf.o] Error 1
make[2]: *** [drivers/char/ipmi] Error 2
make[1]: *** [drivers/char] Error 2
make: *** [drivers] Error 2

Following patch makes it compile...

signed-off AsterixTheGaul <[email protected]>


Compile fix  ipmi_devintf.c for problem introduced by the commit change
37e0915b701281182cea9fc90e894d10addf134a

---
commit 1f974bf04b1f2a01e189e01970cb744343ad1bb7
tree c7b157f4d23340a6d773b8d1385c0efb21d4b650
parent b5c44c2147a447f77e07fecdb087ae288e1f4e40
author AsterixTheGaul <[email protected]> Sat, 21 May 2005
20:16:39 +0530committer AsterixTheGaul <[email protected]> Sat,
21 May 2005 20:16:39 +0530

 char/ipmi/ipmi_devintf.c |    4 ++--
 1 files changed, 2 insertions(+), 2 deletions(-)

Index: drivers/char/ipmi/ipmi_devintf.c
===================================================================
--- ec1d95eb1e03e320fc5eb5cfb40379f2f4a7267d/drivers/char/ipmi/ipmi_devintf.c
 (mode:100644)
+++ c7b157f4d23340a6d773b8d1385c0efb21d4b650/drivers/char/ipmi/ipmi_devintf.c
 (mode:100644)
@@ -520,7 +520,7 @@
                 " interface.  Other values will set the major device number"
                 " to that value.");

-static struct class *ipmi_class;
+static struct class_simple *ipmi_class;





On 5/20/05, Corey Minyard <[email protected]> wrote:
> Philipp Matthias Hahn wrote:
> 
> >
> >
> >What happend to Dimitry Torokovs comment in
> >http://marc.theaimsgroup.com/?l=linux-kernel&m=111232712029756&w=2
> >and your reply in
> >http://marc.theaimsgroup.com/?l=linux-kernel&m=111232954415119&w=2
> >According to linux/device.h:250, class_simple_device_add() has a
> >printf() like argument, so you don't need to snprintf() the name on your
> >own.
> >
> >
> Thank you.  My stupid mailer ate the tabs, and you fixed that, too.
> This looks good to go in.
> 
> -Corey
> 
> >Add support for sysfs to the IPMI device interface.
> >
> >Signed-off-by: Corey Minyard <[email protected]>
> >Signed-off-by: Philipp Hahn <[email protected]>
> >
> >Index: linux-2.6.12-rc1/drivers/char/ipmi/ipmi_devintf.c
> >===================================================================
> >--- linux-2.6.12-rc1.orig/drivers/char/ipmi/ipmi_devintf.c
> >+++ linux-2.6.12-rc1/drivers/char/ipmi/ipmi_devintf.c
> >@@ -44,6 +44,7 @@
> > #include <linux/ipmi.h>
> > #include <asm/semaphore.h>
> > #include <linux/init.h>
> >+#include <linux/device.h>
> >
> > #define IPMI_DEVINTF_VERSION "v33"
> >
> >@@ -519,15 +520,21 @@
> >                " interface.  Other values will set the major device number"
> >                " to that value.");
> >
> >+static struct class *ipmi_class;
> >+
> > static void ipmi_new_smi(int if_num)
> > {
> >-      devfs_mk_cdev(MKDEV(ipmi_major, if_num),
> >-                    S_IFCHR | S_IRUSR | S_IWUSR,
> >+      dev_t dev = MKDEV(ipmi_major, if_num);
> >+
> >+      devfs_mk_cdev(dev, S_IFCHR | S_IRUSR | S_IWUSR,
> >                     "ipmidev/%d", if_num);
> >+
> >+      class_simple_device_add(ipmi_class, dev, NULL, "ipmi%d", if_num);
> > }
> >
> > static void ipmi_smi_gone(int if_num)
> > {
> >+      class_simple_device_remove(ipmi_class, MKDEV(ipmi_major, if_num));
> >       devfs_remove("ipmidev/%d", if_num);
> > }
> >
> >@@ -548,8 +555,15 @@
> >       printk(KERN_INFO "ipmi device interface version "
> >              IPMI_DEVINTF_VERSION "\n");
> >
> >+      ipmi_class = class_simple_create(THIS_MODULE, "ipmi");
> >+      if (IS_ERR(ipmi_class)) {
> >+              printk(KERN_ERR "ipmi: can't register device class\n");
> >+              return PTR_ERR(ipmi_class);
> >+      }
> >+
> >       rv = register_chrdev(ipmi_major, DEVICE_NAME, &ipmi_fops);
> >       if (rv < 0) {
> >+              class_simple_destroy(ipmi_class);
> >               printk(KERN_ERR "ipmi: can't get major %d\n", ipmi_major);
> >               return rv;
> >       }
> >@@ -563,6 +577,7 @@
> >       rv = ipmi_smi_watcher_register(&smi_watcher);
> >       if (rv) {
> >               unregister_chrdev(ipmi_major, DEVICE_NAME);
> >+              class_simple_destroy(ipmi_class);
> >               printk(KERN_WARNING "ipmi: can't register smi watcher\n");
> >               return rv;
> >       }
> >@@ -573,6 +588,7 @@
> >
> > static __exit void cleanup_ipmi(void)
> > {
> >+      class_simple_destroy(ipmi_class);
> >       ipmi_smi_watcher_unregister(&smi_watcher);
> >       devfs_remove(DEVICE_NAME);
> >       unregister_chrdev(ipmi_major, DEVICE_NAME);
> >
> >BYtE
> >Philipp
> >
> >
> 
> -
> To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
> the body of a message to [email protected]
> More majordomo info at  http://vger.kernel.org/majordomo-info.html
> Please read the FAQ at  http://www.tux.org/lkml/
>
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [email protected]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

[Index of Archives]     [Kernel Newbies]     [Netfilter]     [Bugtraq]     [Photo]     [Stuff]     [Gimp]     [Yosemite News]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Video 4 Linux]     [Linux for the blind]     [Linux Resources]
  Powered by Linux