aboutsummaryrefslogtreecommitdiffstats
path: root/drivers
diff options
context:
space:
mode:
authorLinus Torvalds <torvalds@linux-foundation.org>2015-02-17 18:18:19 -0500
committerLinus Torvalds <torvalds@linux-foundation.org>2015-02-17 18:18:19 -0500
commitc6b1de1b646fe232206d4065df4d14040cebd613 (patch)
tree271b208be1e0e6e026da5979311197fe5a791a11 /drivers
parent50652963eae6afe13678dc84d789a174306a4df7 (diff)
parente59b4e9187bd5175b9845dc10fedb0879b7efbfd (diff)
Merge branch 'debugfs_automount' of git://git.kernel.org/pub/scm/linux/kernel/git/viro/vfs
Pull debugfs patches from Al Viro: "debugfs patches, mostly to make it possible for something like tracefs to be transparently automounted on given directory in debugfs. New primitive in there is debugfs_create_automount(name, parent, func, arg), which creates a directory and makes its ->d_automount() return func(arg). Another missing primitive was debugfs_create_file_size() - open-coded in quite a few places. Dave's patch adds it and converts the open-code instances to calling it" * 'debugfs_automount' of git://git.kernel.org/pub/scm/linux/kernel/git/viro/vfs: debugfs: Provide a file creation function that also takes an initial size new primitive: debugfs_create_automount() debugfs: split end_creating() into success and failure cases debugfs: take mode-dependent parts of debugfs_get_inode() into callers fold debugfs_mknod() into callers fold debugfs_create() into caller fold debugfs_mkdir() into caller debugfs_mknod(): get rid useless arguments fold debugfs_link() into caller debugfs: kill __create_file() debugfs: split the beginning and the end of __create_file() off debugfs_{mkdir,create,link}(): get rid of redundant argument
Diffstat (limited to 'drivers')
-rw-r--r--drivers/infiniband/hw/cxgb4/device.c35
-rw-r--r--drivers/net/ethernet/chelsio/cxgb4/cxgb4_debugfs.c9
-rw-r--r--drivers/scsi/csiostor/csio_init.c9
-rw-r--r--drivers/usb/gadget/udc/atmel_usba_udc.c15
4 files changed, 26 insertions, 42 deletions
diff --git a/drivers/infiniband/hw/cxgb4/device.c b/drivers/infiniband/hw/cxgb4/device.c
index aafdbcd84fc4..8fb295e4a9ab 100644
--- a/drivers/infiniband/hw/cxgb4/device.c
+++ b/drivers/infiniband/hw/cxgb4/device.c
@@ -700,37 +700,24 @@ static const struct file_operations ep_debugfs_fops = {
700 700
701static int setup_debugfs(struct c4iw_dev *devp) 701static int setup_debugfs(struct c4iw_dev *devp)
702{ 702{
703 struct dentry *de;
704
705 if (!devp->debugfs_root) 703 if (!devp->debugfs_root)
706 return -1; 704 return -1;
707 705
708 de = debugfs_create_file("qps", S_IWUSR, devp->debugfs_root, 706 debugfs_create_file_size("qps", S_IWUSR, devp->debugfs_root,
709 (void *)devp, &qp_debugfs_fops); 707 (void *)devp, &qp_debugfs_fops, 4096);
710 if (de && de->d_inode)
711 de->d_inode->i_size = 4096;
712 708
713 de = debugfs_create_file("stags", S_IWUSR, devp->debugfs_root, 709 debugfs_create_file_size("stags", S_IWUSR, devp->debugfs_root,
714 (void *)devp, &stag_debugfs_fops); 710 (void *)devp, &stag_debugfs_fops, 4096);
715 if (de && de->d_inode)
716 de->d_inode->i_size = 4096;
717 711
718 de = debugfs_create_file("stats", S_IWUSR, devp->debugfs_root, 712 debugfs_create_file_size("stats", S_IWUSR, devp->debugfs_root,
719 (void *)devp, &stats_debugfs_fops); 713 (void *)devp, &stats_debugfs_fops, 4096);
720 if (de && de->d_inode)
721 de->d_inode->i_size = 4096;
722 714
723 de = debugfs_create_file("eps", S_IWUSR, devp->debugfs_root, 715 debugfs_create_file_size("eps", S_IWUSR, devp->debugfs_root,
724 (void *)devp, &ep_debugfs_fops); 716 (void *)devp, &ep_debugfs_fops, 4096);
725 if (de && de->d_inode)
726 de->d_inode->i_size = 4096;
727 717
728 if (c4iw_wr_log) { 718 if (c4iw_wr_log)
729 de = debugfs_create_file("wr_log", S_IWUSR, devp->debugfs_root, 719 debugfs_create_file_size("wr_log", S_IWUSR, devp->debugfs_root,
730 (void *)devp, &wr_log_debugfs_fops); 720 (void *)devp, &wr_log_debugfs_fops, 4096);
731 if (de && de->d_inode)
732 de->d_inode->i_size = 4096;
733 }
734 return 0; 721 return 0;
735} 722}
736 723
diff --git a/drivers/net/ethernet/chelsio/cxgb4/cxgb4_debugfs.c b/drivers/net/ethernet/chelsio/cxgb4/cxgb4_debugfs.c
index d221f6b28fcd..78854ceb0870 100644
--- a/drivers/net/ethernet/chelsio/cxgb4/cxgb4_debugfs.c
+++ b/drivers/net/ethernet/chelsio/cxgb4/cxgb4_debugfs.c
@@ -1950,12 +1950,9 @@ static void set_debugfs_file_size(struct dentry *de, loff_t size)
1950static void add_debugfs_mem(struct adapter *adap, const char *name, 1950static void add_debugfs_mem(struct adapter *adap, const char *name,
1951 unsigned int idx, unsigned int size_mb) 1951 unsigned int idx, unsigned int size_mb)
1952{ 1952{
1953 struct dentry *de; 1953 debugfs_create_file_size(name, S_IRUSR, adap->debugfs_root,
1954 1954 (void *)adap + idx, &mem_debugfs_fops,
1955 de = debugfs_create_file(name, S_IRUSR, adap->debugfs_root, 1955 size_mb << 20);
1956 (void *)adap + idx, &mem_debugfs_fops);
1957 if (de && de->d_inode)
1958 de->d_inode->i_size = size_mb << 20;
1959} 1956}
1960 1957
1961/* Add an array of Debug FS files. 1958/* Add an array of Debug FS files.
diff --git a/drivers/scsi/csiostor/csio_init.c b/drivers/scsi/csiostor/csio_init.c
index 9b9794d42ffe..d9631e15f7b5 100644
--- a/drivers/scsi/csiostor/csio_init.c
+++ b/drivers/scsi/csiostor/csio_init.c
@@ -113,12 +113,9 @@ static const struct file_operations csio_mem_debugfs_fops = {
113void csio_add_debugfs_mem(struct csio_hw *hw, const char *name, 113void csio_add_debugfs_mem(struct csio_hw *hw, const char *name,
114 unsigned int idx, unsigned int size_mb) 114 unsigned int idx, unsigned int size_mb)
115{ 115{
116 struct dentry *de; 116 debugfs_create_file_size(name, S_IRUSR, hw->debugfs_root,
117 117 (void *)hw + idx, &csio_mem_debugfs_fops,
118 de = debugfs_create_file(name, S_IRUSR, hw->debugfs_root, 118 size_mb << 20);
119 (void *)hw + idx, &csio_mem_debugfs_fops);
120 if (de && de->d_inode)
121 de->d_inode->i_size = size_mb << 20;
122} 119}
123 120
124static int csio_setup_debugfs(struct csio_hw *hw) 121static int csio_setup_debugfs(struct csio_hw *hw)
diff --git a/drivers/usb/gadget/udc/atmel_usba_udc.c b/drivers/usb/gadget/udc/atmel_usba_udc.c
index c0410862c2a1..d79cb35dbf8a 100644
--- a/drivers/usb/gadget/udc/atmel_usba_udc.c
+++ b/drivers/usb/gadget/udc/atmel_usba_udc.c
@@ -265,14 +265,17 @@ static void usba_init_debugfs(struct usba_udc *udc)
265 goto err_root; 265 goto err_root;
266 udc->debugfs_root = root; 266 udc->debugfs_root = root;
267 267
268 regs = debugfs_create_file("regs", 0400, root, udc, &regs_dbg_fops);
269 if (!regs)
270 goto err_regs;
271
272 regs_resource = platform_get_resource(udc->pdev, IORESOURCE_MEM, 268 regs_resource = platform_get_resource(udc->pdev, IORESOURCE_MEM,
273 CTRL_IOMEM_ID); 269 CTRL_IOMEM_ID);
274 regs->d_inode->i_size = resource_size(regs_resource); 270
275 udc->debugfs_regs = regs; 271 if (regs_resource) {
272 regs = debugfs_create_file_size("regs", 0400, root, udc,
273 &regs_dbg_fops,
274 resource_size(regs_resource));
275 if (!regs)
276 goto err_regs;
277 udc->debugfs_regs = regs;
278 }
276 279
277 usba_ep_init_debugfs(udc, to_usba_ep(udc->gadget.ep0)); 280 usba_ep_init_debugfs(udc, to_usba_ep(udc->gadget.ep0));
278 281