aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/scsi
diff options
context:
space:
mode:
authorLinus Torvalds <torvalds@linux-foundation.org>2012-01-08 15:19:57 -0500
committerLinus Torvalds <torvalds@linux-foundation.org>2012-01-08 15:19:57 -0500
commit972b2c719990f91eb3b2310d44ef8a2d38955a14 (patch)
treeb25a250ec5bec4b7b6355d214642d8b57c5cab32 /drivers/scsi
parent02550d61f49266930e674286379d3601006b2893 (diff)
parentc3aa077648e147783a7a53b409578234647db853 (diff)
Merge branch 'for-linus2' of git://git.kernel.org/pub/scm/linux/kernel/git/viro/vfs
* 'for-linus2' of git://git.kernel.org/pub/scm/linux/kernel/git/viro/vfs: (165 commits) reiserfs: Properly display mount options in /proc/mounts vfs: prevent remount read-only if pending removes vfs: count unlinked inodes vfs: protect remounting superblock read-only vfs: keep list of mounts for each superblock vfs: switch ->show_options() to struct dentry * vfs: switch ->show_path() to struct dentry * vfs: switch ->show_devname() to struct dentry * vfs: switch ->show_stats to struct dentry * switch security_path_chmod() to struct path * vfs: prefer ->dentry->d_sb to ->mnt->mnt_sb vfs: trim includes a bit switch mnt_namespace ->root to struct mount vfs: take /proc/*/mounts and friends to fs/proc_namespace.c vfs: opencode mntget() mnt_set_mountpoint() vfs: spread struct mount - remaining argument of next_mnt() vfs: move fsnotify junk to struct mount vfs: move mnt_devname vfs: move mnt_list to struct mount vfs: switch pnode.h macros to struct mount * ...
Diffstat (limited to 'drivers/scsi')
-rw-r--r--drivers/scsi/be2iscsi/be_iscsi.c2
-rw-r--r--drivers/scsi/be2iscsi/be_iscsi.h2
-rw-r--r--drivers/scsi/be2iscsi/be_main.c12
-rw-r--r--drivers/scsi/bfa/bfad_debugfs.c2
-rw-r--r--drivers/scsi/bnx2i/bnx2i_iscsi.c2
-rw-r--r--drivers/scsi/cxgbi/libcxgbi.c2
-rw-r--r--drivers/scsi/cxgbi/libcxgbi.h2
-rw-r--r--drivers/scsi/iscsi_boot_sysfs.c14
-rw-r--r--drivers/scsi/iscsi_tcp.c2
-rw-r--r--drivers/scsi/qla4xxx/ql4_os.c10
-rw-r--r--drivers/scsi/scsi_transport_iscsi.c8
-rw-r--r--drivers/scsi/scsi_transport_spi.c2
-rw-r--r--drivers/scsi/scsicam.c1
-rw-r--r--drivers/scsi/sg.c7
14 files changed, 33 insertions, 35 deletions
diff --git a/drivers/scsi/be2iscsi/be_iscsi.c b/drivers/scsi/be2iscsi/be_iscsi.c
index 8b002f6db6ca..33c8f09c7ac1 100644
--- a/drivers/scsi/be2iscsi/be_iscsi.c
+++ b/drivers/scsi/be2iscsi/be_iscsi.c
@@ -733,7 +733,7 @@ void beiscsi_ep_disconnect(struct iscsi_endpoint *ep)
733 iscsi_destroy_endpoint(beiscsi_ep->openiscsi_ep); 733 iscsi_destroy_endpoint(beiscsi_ep->openiscsi_ep);
734} 734}
735 735
736mode_t be2iscsi_attr_is_visible(int param_type, int param) 736umode_t be2iscsi_attr_is_visible(int param_type, int param)
737{ 737{
738 switch (param_type) { 738 switch (param_type) {
739 case ISCSI_HOST_PARAM: 739 case ISCSI_HOST_PARAM:
diff --git a/drivers/scsi/be2iscsi/be_iscsi.h b/drivers/scsi/be2iscsi/be_iscsi.h
index 4a1f2e393f31..5c45be134501 100644
--- a/drivers/scsi/be2iscsi/be_iscsi.h
+++ b/drivers/scsi/be2iscsi/be_iscsi.h
@@ -26,7 +26,7 @@
26#define BE2_IPV4 0x1 26#define BE2_IPV4 0x1
27#define BE2_IPV6 0x10 27#define BE2_IPV6 0x10
28 28
29mode_t be2iscsi_attr_is_visible(int param_type, int param); 29umode_t be2iscsi_attr_is_visible(int param_type, int param);
30 30
31void beiscsi_offload_connection(struct beiscsi_conn *beiscsi_conn, 31void beiscsi_offload_connection(struct beiscsi_conn *beiscsi_conn,
32 struct beiscsi_offload_params *params); 32 struct beiscsi_offload_params *params);
diff --git a/drivers/scsi/be2iscsi/be_main.c b/drivers/scsi/be2iscsi/be_main.c
index 379c696dac19..797a43994b55 100644
--- a/drivers/scsi/be2iscsi/be_main.c
+++ b/drivers/scsi/be2iscsi/be_main.c
@@ -325,9 +325,9 @@ static ssize_t beiscsi_show_boot_eth_info(void *data, int type, char *buf)
325} 325}
326 326
327 327
328static mode_t beiscsi_tgt_get_attr_visibility(void *data, int type) 328static umode_t beiscsi_tgt_get_attr_visibility(void *data, int type)
329{ 329{
330 int rc; 330 umode_t rc;
331 331
332 switch (type) { 332 switch (type) {
333 case ISCSI_BOOT_TGT_NAME: 333 case ISCSI_BOOT_TGT_NAME:
@@ -348,9 +348,9 @@ static mode_t beiscsi_tgt_get_attr_visibility(void *data, int type)
348 return rc; 348 return rc;
349} 349}
350 350
351static mode_t beiscsi_ini_get_attr_visibility(void *data, int type) 351static umode_t beiscsi_ini_get_attr_visibility(void *data, int type)
352{ 352{
353 int rc; 353 umode_t rc;
354 354
355 switch (type) { 355 switch (type) {
356 case ISCSI_BOOT_INI_INITIATOR_NAME: 356 case ISCSI_BOOT_INI_INITIATOR_NAME:
@@ -364,9 +364,9 @@ static mode_t beiscsi_ini_get_attr_visibility(void *data, int type)
364} 364}
365 365
366 366
367static mode_t beiscsi_eth_get_attr_visibility(void *data, int type) 367static umode_t beiscsi_eth_get_attr_visibility(void *data, int type)
368{ 368{
369 int rc; 369 umode_t rc;
370 370
371 switch (type) { 371 switch (type) {
372 case ISCSI_BOOT_ETH_FLAGS: 372 case ISCSI_BOOT_ETH_FLAGS:
diff --git a/drivers/scsi/bfa/bfad_debugfs.c b/drivers/scsi/bfa/bfad_debugfs.c
index dee1a094c2c2..caca9b7c8309 100644
--- a/drivers/scsi/bfa/bfad_debugfs.c
+++ b/drivers/scsi/bfa/bfad_debugfs.c
@@ -472,7 +472,7 @@ static const struct file_operations bfad_debugfs_op_regwr = {
472 472
473struct bfad_debugfs_entry { 473struct bfad_debugfs_entry {
474 const char *name; 474 const char *name;
475 mode_t mode; 475 umode_t mode;
476 const struct file_operations *fops; 476 const struct file_operations *fops;
477}; 477};
478 478
diff --git a/drivers/scsi/bnx2i/bnx2i_iscsi.c b/drivers/scsi/bnx2i/bnx2i_iscsi.c
index d1e697190970..1a44b45e7bef 100644
--- a/drivers/scsi/bnx2i/bnx2i_iscsi.c
+++ b/drivers/scsi/bnx2i/bnx2i_iscsi.c
@@ -2177,7 +2177,7 @@ static int bnx2i_nl_set_path(struct Scsi_Host *shost, struct iscsi_path *params)
2177 return 0; 2177 return 0;
2178} 2178}
2179 2179
2180static mode_t bnx2i_attr_is_visible(int param_type, int param) 2180static umode_t bnx2i_attr_is_visible(int param_type, int param)
2181{ 2181{
2182 switch (param_type) { 2182 switch (param_type) {
2183 case ISCSI_HOST_PARAM: 2183 case ISCSI_HOST_PARAM:
diff --git a/drivers/scsi/cxgbi/libcxgbi.c b/drivers/scsi/cxgbi/libcxgbi.c
index 1d25a87aa47b..c5360ffb4bed 100644
--- a/drivers/scsi/cxgbi/libcxgbi.c
+++ b/drivers/scsi/cxgbi/libcxgbi.c
@@ -2575,7 +2575,7 @@ void cxgbi_iscsi_cleanup(struct iscsi_transport *itp,
2575} 2575}
2576EXPORT_SYMBOL_GPL(cxgbi_iscsi_cleanup); 2576EXPORT_SYMBOL_GPL(cxgbi_iscsi_cleanup);
2577 2577
2578mode_t cxgbi_attr_is_visible(int param_type, int param) 2578umode_t cxgbi_attr_is_visible(int param_type, int param)
2579{ 2579{
2580 switch (param_type) { 2580 switch (param_type) {
2581 case ISCSI_HOST_PARAM: 2581 case ISCSI_HOST_PARAM:
diff --git a/drivers/scsi/cxgbi/libcxgbi.h b/drivers/scsi/cxgbi/libcxgbi.h
index 20c88279c7a6..80fa99b3d384 100644
--- a/drivers/scsi/cxgbi/libcxgbi.h
+++ b/drivers/scsi/cxgbi/libcxgbi.h
@@ -709,7 +709,7 @@ int cxgbi_conn_xmit_pdu(struct iscsi_task *);
709 709
710void cxgbi_cleanup_task(struct iscsi_task *task); 710void cxgbi_cleanup_task(struct iscsi_task *task);
711 711
712mode_t cxgbi_attr_is_visible(int param_type, int param); 712umode_t cxgbi_attr_is_visible(int param_type, int param);
713void cxgbi_get_conn_stats(struct iscsi_cls_conn *, struct iscsi_stats *); 713void cxgbi_get_conn_stats(struct iscsi_cls_conn *, struct iscsi_stats *);
714int cxgbi_set_conn_param(struct iscsi_cls_conn *, 714int cxgbi_set_conn_param(struct iscsi_cls_conn *,
715 enum iscsi_param, char *, int); 715 enum iscsi_param, char *, int);
diff --git a/drivers/scsi/iscsi_boot_sysfs.c b/drivers/scsi/iscsi_boot_sysfs.c
index 89700cbca16e..14c1c8f6a95e 100644
--- a/drivers/scsi/iscsi_boot_sysfs.c
+++ b/drivers/scsi/iscsi_boot_sysfs.c
@@ -112,7 +112,7 @@ static struct attribute *target_attrs[] = {
112 NULL 112 NULL
113}; 113};
114 114
115static mode_t iscsi_boot_tgt_attr_is_visible(struct kobject *kobj, 115static umode_t iscsi_boot_tgt_attr_is_visible(struct kobject *kobj,
116 struct attribute *attr, int i) 116 struct attribute *attr, int i)
117{ 117{
118 struct iscsi_boot_kobj *boot_kobj = 118 struct iscsi_boot_kobj *boot_kobj =
@@ -193,7 +193,7 @@ static struct attribute *ethernet_attrs[] = {
193 NULL 193 NULL
194}; 194};
195 195
196static mode_t iscsi_boot_eth_attr_is_visible(struct kobject *kobj, 196static umode_t iscsi_boot_eth_attr_is_visible(struct kobject *kobj,
197 struct attribute *attr, int i) 197 struct attribute *attr, int i)
198{ 198{
199 struct iscsi_boot_kobj *boot_kobj = 199 struct iscsi_boot_kobj *boot_kobj =
@@ -265,7 +265,7 @@ static struct attribute *initiator_attrs[] = {
265 NULL 265 NULL
266}; 266};
267 267
268static mode_t iscsi_boot_ini_attr_is_visible(struct kobject *kobj, 268static umode_t iscsi_boot_ini_attr_is_visible(struct kobject *kobj,
269 struct attribute *attr, int i) 269 struct attribute *attr, int i)
270{ 270{
271 struct iscsi_boot_kobj *boot_kobj = 271 struct iscsi_boot_kobj *boot_kobj =
@@ -306,7 +306,7 @@ iscsi_boot_create_kobj(struct iscsi_boot_kset *boot_kset,
306 struct attribute_group *attr_group, 306 struct attribute_group *attr_group,
307 const char *name, int index, void *data, 307 const char *name, int index, void *data,
308 ssize_t (*show) (void *data, int type, char *buf), 308 ssize_t (*show) (void *data, int type, char *buf),
309 mode_t (*is_visible) (void *data, int type), 309 umode_t (*is_visible) (void *data, int type),
310 void (*release) (void *data)) 310 void (*release) (void *data))
311{ 311{
312 struct iscsi_boot_kobj *boot_kobj; 312 struct iscsi_boot_kobj *boot_kobj;
@@ -369,7 +369,7 @@ struct iscsi_boot_kobj *
369iscsi_boot_create_target(struct iscsi_boot_kset *boot_kset, int index, 369iscsi_boot_create_target(struct iscsi_boot_kset *boot_kset, int index,
370 void *data, 370 void *data,
371 ssize_t (*show) (void *data, int type, char *buf), 371 ssize_t (*show) (void *data, int type, char *buf),
372 mode_t (*is_visible) (void *data, int type), 372 umode_t (*is_visible) (void *data, int type),
373 void (*release) (void *data)) 373 void (*release) (void *data))
374{ 374{
375 return iscsi_boot_create_kobj(boot_kset, &iscsi_boot_target_attr_group, 375 return iscsi_boot_create_kobj(boot_kset, &iscsi_boot_target_attr_group,
@@ -394,7 +394,7 @@ struct iscsi_boot_kobj *
394iscsi_boot_create_initiator(struct iscsi_boot_kset *boot_kset, int index, 394iscsi_boot_create_initiator(struct iscsi_boot_kset *boot_kset, int index,
395 void *data, 395 void *data,
396 ssize_t (*show) (void *data, int type, char *buf), 396 ssize_t (*show) (void *data, int type, char *buf),
397 mode_t (*is_visible) (void *data, int type), 397 umode_t (*is_visible) (void *data, int type),
398 void (*release) (void *data)) 398 void (*release) (void *data))
399{ 399{
400 return iscsi_boot_create_kobj(boot_kset, 400 return iscsi_boot_create_kobj(boot_kset,
@@ -420,7 +420,7 @@ struct iscsi_boot_kobj *
420iscsi_boot_create_ethernet(struct iscsi_boot_kset *boot_kset, int index, 420iscsi_boot_create_ethernet(struct iscsi_boot_kset *boot_kset, int index,
421 void *data, 421 void *data,
422 ssize_t (*show) (void *data, int type, char *buf), 422 ssize_t (*show) (void *data, int type, char *buf),
423 mode_t (*is_visible) (void *data, int type), 423 umode_t (*is_visible) (void *data, int type),
424 void (*release) (void *data)) 424 void (*release) (void *data))
425{ 425{
426 return iscsi_boot_create_kobj(boot_kset, 426 return iscsi_boot_create_kobj(boot_kset,
diff --git a/drivers/scsi/iscsi_tcp.c b/drivers/scsi/iscsi_tcp.c
index 7c34d8e7cc75..db47158e0dde 100644
--- a/drivers/scsi/iscsi_tcp.c
+++ b/drivers/scsi/iscsi_tcp.c
@@ -873,7 +873,7 @@ static void iscsi_sw_tcp_session_destroy(struct iscsi_cls_session *cls_session)
873 iscsi_host_free(shost); 873 iscsi_host_free(shost);
874} 874}
875 875
876static mode_t iscsi_sw_tcp_attr_is_visible(int param_type, int param) 876static umode_t iscsi_sw_tcp_attr_is_visible(int param_type, int param)
877{ 877{
878 switch (param_type) { 878 switch (param_type) {
879 case ISCSI_HOST_PARAM: 879 case ISCSI_HOST_PARAM:
diff --git a/drivers/scsi/qla4xxx/ql4_os.c b/drivers/scsi/qla4xxx/ql4_os.c
index 4169c8baa112..78bf700b365f 100644
--- a/drivers/scsi/qla4xxx/ql4_os.c
+++ b/drivers/scsi/qla4xxx/ql4_os.c
@@ -128,7 +128,7 @@ static int qla4xxx_eh_host_reset(struct scsi_cmnd *cmd);
128static int qla4xxx_slave_alloc(struct scsi_device *device); 128static int qla4xxx_slave_alloc(struct scsi_device *device);
129static int qla4xxx_slave_configure(struct scsi_device *device); 129static int qla4xxx_slave_configure(struct scsi_device *device);
130static void qla4xxx_slave_destroy(struct scsi_device *sdev); 130static void qla4xxx_slave_destroy(struct scsi_device *sdev);
131static mode_t ql4_attr_is_visible(int param_type, int param); 131static umode_t ql4_attr_is_visible(int param_type, int param);
132static int qla4xxx_host_reset(struct Scsi_Host *shost, int reset_type); 132static int qla4xxx_host_reset(struct Scsi_Host *shost, int reset_type);
133 133
134static struct qla4_8xxx_legacy_intr_set legacy_intr[] = 134static struct qla4_8xxx_legacy_intr_set legacy_intr[] =
@@ -197,7 +197,7 @@ static struct iscsi_transport qla4xxx_iscsi_transport = {
197 197
198static struct scsi_transport_template *qla4xxx_scsi_transport; 198static struct scsi_transport_template *qla4xxx_scsi_transport;
199 199
200static mode_t ql4_attr_is_visible(int param_type, int param) 200static umode_t ql4_attr_is_visible(int param_type, int param)
201{ 201{
202 switch (param_type) { 202 switch (param_type) {
203 case ISCSI_HOST_PARAM: 203 case ISCSI_HOST_PARAM:
@@ -3039,7 +3039,7 @@ static ssize_t qla4xxx_show_boot_eth_info(void *data, int type, char *buf)
3039 return rc; 3039 return rc;
3040} 3040}
3041 3041
3042static mode_t qla4xxx_eth_get_attr_visibility(void *data, int type) 3042static umode_t qla4xxx_eth_get_attr_visibility(void *data, int type)
3043{ 3043{
3044 int rc; 3044 int rc;
3045 3045
@@ -3073,7 +3073,7 @@ static ssize_t qla4xxx_show_boot_ini_info(void *data, int type, char *buf)
3073 return rc; 3073 return rc;
3074} 3074}
3075 3075
3076static mode_t qla4xxx_ini_get_attr_visibility(void *data, int type) 3076static umode_t qla4xxx_ini_get_attr_visibility(void *data, int type)
3077{ 3077{
3078 int rc; 3078 int rc;
3079 3079
@@ -3160,7 +3160,7 @@ static ssize_t qla4xxx_show_boot_tgt_sec_info(void *data, int type, char *buf)
3160 return qla4xxx_show_boot_tgt_info(boot_sess, type, buf); 3160 return qla4xxx_show_boot_tgt_info(boot_sess, type, buf);
3161} 3161}
3162 3162
3163static mode_t qla4xxx_tgt_get_attr_visibility(void *data, int type) 3163static umode_t qla4xxx_tgt_get_attr_visibility(void *data, int type)
3164{ 3164{
3165 int rc; 3165 int rc;
3166 3166
diff --git a/drivers/scsi/scsi_transport_iscsi.c b/drivers/scsi/scsi_transport_iscsi.c
index 96029e6d027f..e8447fbc31f3 100644
--- a/drivers/scsi/scsi_transport_iscsi.c
+++ b/drivers/scsi/scsi_transport_iscsi.c
@@ -328,7 +328,7 @@ iscsi_iface_net_attr(iface, vlan_enabled, ISCSI_NET_PARAM_VLAN_ENABLED);
328iscsi_iface_net_attr(iface, mtu, ISCSI_NET_PARAM_MTU); 328iscsi_iface_net_attr(iface, mtu, ISCSI_NET_PARAM_MTU);
329iscsi_iface_net_attr(iface, port, ISCSI_NET_PARAM_PORT); 329iscsi_iface_net_attr(iface, port, ISCSI_NET_PARAM_PORT);
330 330
331static mode_t iscsi_iface_attr_is_visible(struct kobject *kobj, 331static umode_t iscsi_iface_attr_is_visible(struct kobject *kobj,
332 struct attribute *attr, int i) 332 struct attribute *attr, int i)
333{ 333{
334 struct device *dev = container_of(kobj, struct device, kobj); 334 struct device *dev = container_of(kobj, struct device, kobj);
@@ -2199,7 +2199,7 @@ static struct attribute *iscsi_conn_attrs[] = {
2199 NULL, 2199 NULL,
2200}; 2200};
2201 2201
2202static mode_t iscsi_conn_attr_is_visible(struct kobject *kobj, 2202static umode_t iscsi_conn_attr_is_visible(struct kobject *kobj,
2203 struct attribute *attr, int i) 2203 struct attribute *attr, int i)
2204{ 2204{
2205 struct device *cdev = container_of(kobj, struct device, kobj); 2205 struct device *cdev = container_of(kobj, struct device, kobj);
@@ -2370,7 +2370,7 @@ static struct attribute *iscsi_session_attrs[] = {
2370 NULL, 2370 NULL,
2371}; 2371};
2372 2372
2373static mode_t iscsi_session_attr_is_visible(struct kobject *kobj, 2373static umode_t iscsi_session_attr_is_visible(struct kobject *kobj,
2374 struct attribute *attr, int i) 2374 struct attribute *attr, int i)
2375{ 2375{
2376 struct device *cdev = container_of(kobj, struct device, kobj); 2376 struct device *cdev = container_of(kobj, struct device, kobj);
@@ -2468,7 +2468,7 @@ static struct attribute *iscsi_host_attrs[] = {
2468 NULL, 2468 NULL,
2469}; 2469};
2470 2470
2471static mode_t iscsi_host_attr_is_visible(struct kobject *kobj, 2471static umode_t iscsi_host_attr_is_visible(struct kobject *kobj,
2472 struct attribute *attr, int i) 2472 struct attribute *attr, int i)
2473{ 2473{
2474 struct device *cdev = container_of(kobj, struct device, kobj); 2474 struct device *cdev = container_of(kobj, struct device, kobj);
diff --git a/drivers/scsi/scsi_transport_spi.c b/drivers/scsi/scsi_transport_spi.c
index 5fbeadd96819..a2715c31e754 100644
--- a/drivers/scsi/scsi_transport_spi.c
+++ b/drivers/scsi/scsi_transport_spi.c
@@ -1434,7 +1434,7 @@ static int spi_host_configure(struct transport_container *tc,
1434 (si->f->show_##name ? S_IRUGO : 0) | \ 1434 (si->f->show_##name ? S_IRUGO : 0) | \
1435 (si->f->set_##name ? S_IWUSR : 0) 1435 (si->f->set_##name ? S_IWUSR : 0)
1436 1436
1437static mode_t target_attribute_is_visible(struct kobject *kobj, 1437static umode_t target_attribute_is_visible(struct kobject *kobj,
1438 struct attribute *attr, int i) 1438 struct attribute *attr, int i)
1439{ 1439{
1440 struct device *cdev = container_of(kobj, struct device, kobj); 1440 struct device *cdev = container_of(kobj, struct device, kobj);
diff --git a/drivers/scsi/scsicam.c b/drivers/scsi/scsicam.c
index 6803b1e26ecc..92d24d6dcb39 100644
--- a/drivers/scsi/scsicam.c
+++ b/drivers/scsi/scsicam.c
@@ -16,7 +16,6 @@
16#include <linux/genhd.h> 16#include <linux/genhd.h>
17#include <linux/kernel.h> 17#include <linux/kernel.h>
18#include <linux/blkdev.h> 18#include <linux/blkdev.h>
19#include <linux/buffer_head.h>
20#include <asm/unaligned.h> 19#include <asm/unaligned.h>
21 20
22#include <scsi/scsicam.h> 21#include <scsi/scsicam.h>
diff --git a/drivers/scsi/sg.c b/drivers/scsi/sg.c
index 441a1c5b8974..02d99982a74d 100644
--- a/drivers/scsi/sg.c
+++ b/drivers/scsi/sg.c
@@ -2325,16 +2325,15 @@ static struct sg_proc_leaf sg_proc_leaf_arr[] = {
2325static int 2325static int
2326sg_proc_init(void) 2326sg_proc_init(void)
2327{ 2327{
2328 int k, mask;
2329 int num_leaves = ARRAY_SIZE(sg_proc_leaf_arr); 2328 int num_leaves = ARRAY_SIZE(sg_proc_leaf_arr);
2330 struct sg_proc_leaf * leaf; 2329 int k;
2331 2330
2332 sg_proc_sgp = proc_mkdir(sg_proc_sg_dirname, NULL); 2331 sg_proc_sgp = proc_mkdir(sg_proc_sg_dirname, NULL);
2333 if (!sg_proc_sgp) 2332 if (!sg_proc_sgp)
2334 return 1; 2333 return 1;
2335 for (k = 0; k < num_leaves; ++k) { 2334 for (k = 0; k < num_leaves; ++k) {
2336 leaf = &sg_proc_leaf_arr[k]; 2335 struct sg_proc_leaf *leaf = &sg_proc_leaf_arr[k];
2337 mask = leaf->fops->write ? S_IRUGO | S_IWUSR : S_IRUGO; 2336 umode_t mask = leaf->fops->write ? S_IRUGO | S_IWUSR : S_IRUGO;
2338 proc_create(leaf->name, mask, sg_proc_sgp, leaf->fops); 2337 proc_create(leaf->name, mask, sg_proc_sgp, leaf->fops);
2339 } 2338 }
2340 return 0; 2339 return 0;