diff options
author | David Howells <dhowells@redhat.com> | 2013-04-11 21:48:30 -0400 |
---|---|---|
committer | Al Viro <viro@zeniv.linux.org.uk> | 2013-05-01 17:29:41 -0400 |
commit | 270b5ac2151707c25d3327722c5badfbd95945bc (patch) | |
tree | 27e07d1c8f531f8a817071bdb7f8c2ae5282886c /drivers/message | |
parent | 34db8aaf0f95ffac407d39da22972b38da631db4 (diff) |
proc: Add proc_mkdir_data()
Add proc_mkdir_data() to allow procfs directories to be created that are
annotated at the time of creation with private data rather than doing this
post-creation. This means no access is then required to the proc_dir_entry
struct to set this.
Signed-off-by: David Howells <dhowells@redhat.com>
Acked-by: Mauro Carvalho Chehab <mchehab@redhat.com>
Acked-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
cc: Neela Syam Kolli <megaraidlinux@lsi.com>
cc: Jerry Chuang <jerry-chuang@realtek.com>
cc: linux-scsi@vger.kernel.org
cc: devel@driverdev.osuosl.org
cc: linux-wireless@vger.kernel.org
Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
Diffstat (limited to 'drivers/message')
-rw-r--r-- | drivers/message/i2o/i2o_proc.c | 8 |
1 files changed, 2 insertions, 6 deletions
diff --git a/drivers/message/i2o/i2o_proc.c b/drivers/message/i2o/i2o_proc.c index 70a840f9b283..b7d87cd227a9 100644 --- a/drivers/message/i2o/i2o_proc.c +++ b/drivers/message/i2o/i2o_proc.c | |||
@@ -1913,14 +1913,12 @@ static void i2o_proc_device_add(struct proc_dir_entry *dir, | |||
1913 | 1913 | ||
1914 | osm_debug("adding device /proc/i2o/%s/%s\n", dev->iop->name, buff); | 1914 | osm_debug("adding device /proc/i2o/%s/%s\n", dev->iop->name, buff); |
1915 | 1915 | ||
1916 | devdir = proc_mkdir(buff, dir); | 1916 | devdir = proc_mkdir_data(buff, 0, dir, dev); |
1917 | if (!devdir) { | 1917 | if (!devdir) { |
1918 | osm_warn("Could not allocate procdir!\n"); | 1918 | osm_warn("Could not allocate procdir!\n"); |
1919 | return; | 1919 | return; |
1920 | } | 1920 | } |
1921 | 1921 | ||
1922 | devdir->data = dev; | ||
1923 | |||
1924 | i2o_proc_create_entries(devdir, generic_dev_entries, dev); | 1922 | i2o_proc_create_entries(devdir, generic_dev_entries, dev); |
1925 | 1923 | ||
1926 | /* Inform core that we want updates about this device's status */ | 1924 | /* Inform core that we want updates about this device's status */ |
@@ -1954,12 +1952,10 @@ static int i2o_proc_iop_add(struct proc_dir_entry *dir, | |||
1954 | 1952 | ||
1955 | osm_debug("adding IOP /proc/i2o/%s\n", c->name); | 1953 | osm_debug("adding IOP /proc/i2o/%s\n", c->name); |
1956 | 1954 | ||
1957 | iopdir = proc_mkdir(c->name, dir); | 1955 | iopdir = proc_mkdir_data(c->name, 0, dir, c); |
1958 | if (!iopdir) | 1956 | if (!iopdir) |
1959 | return -1; | 1957 | return -1; |
1960 | 1958 | ||
1961 | iopdir->data = c; | ||
1962 | |||
1963 | i2o_proc_create_entries(iopdir, i2o_proc_generic_iop_entries, c); | 1959 | i2o_proc_create_entries(iopdir, i2o_proc_generic_iop_entries, c); |
1964 | 1960 | ||
1965 | list_for_each_entry(dev, &c->devices, list) | 1961 | list_for_each_entry(dev, &c->devices, list) |