2007-01-29 20:01:29

by Josh Triplett

[permalink] [raw]
Subject: [PATCH] cdev.h needs struct inode; add forward declaration

include/linux/cdev.h defines cd_forget to take a struct inode *, but does not
pull in any definition or declaration for struct inode. This generates a
compiler warning if a source file pulls in cdev.h without first pulling in
fs.h. Add a forward declaration of struct inode to cdev.h, to eliminate the
compiler warning and preserve the ability to include headers in any arbitrary
order.

Signed-off-by: Josh Triplett <[email protected]>
---
include/linux/cdev.h | 2 ++
1 files changed, 2 insertions(+), 0 deletions(-)

diff --git a/include/linux/cdev.h b/include/linux/cdev.h
index f309b00..4281e80 100644
--- a/include/linux/cdev.h
+++ b/include/linux/cdev.h
@@ -6,6 +6,8 @@
#include <linux/kdev_t.h>
#include <linux/list.h>

+struct inode;
+
struct cdev {
struct kobject kobj;
struct module *owner;


2007-01-30 10:50:41

by Jan Engelhardt

[permalink] [raw]
Subject: Re: [PATCH] cdev.h needs struct inode; add forward declaration


>include/linux/cdev.h defines cd_forget to take a struct inode *, but does not
>pull in any definition or declaration for struct inode. This generates a
>compiler warning if a source file pulls in cdev.h without first pulling in
>fs.h. Add a forward declaration of struct inode to cdev.h, to eliminate the
>compiler warning and preserve the ability to include headers in any arbitrary
>order.

We've been over this: http://lkml.org/lkml/2007/1/19/119
The patch went in into -mm and out again (why? - no reason was
attached, Andrew.)


Jan
--
ft: http://freshmeat.net/p/chaostables/