lkml.org 
[lkml]   [2022]   [Jan]   [27]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
Date
From
SubjectRe: [PATCH v10 1/9] dax: Introduce holder for dax_device
Hi Shiyang,

Thank you for the patch! Perhaps something to improve:

[auto build test WARNING on linux/master]
[also build test WARNING on linus/master v5.17-rc1 next-20220127]
[cannot apply to xfs-linux/for-next]
[If your patch is applied to the wrong git tree, kindly drop us a note.
And when submitting patch, we suggest to use '--base' as documented in
https://git-scm.com/docs/git-format-patch]

url: https://github.com/0day-ci/linux/commits/Shiyang-Ruan/fsdax-introduce-fs-query-to-support-reflink/20220127-204239
base: https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git 2c271fe77d52a0555161926c232cd5bc07178b39
config: arm-imx_v4_v5_defconfig (https://download.01.org/0day-ci/archive/20220128/202201280053.mWAlT70p-lkp@intel.com/config)
compiler: clang version 14.0.0 (https://github.com/llvm/llvm-project f32dccb9a43b02ce4e540d6ba5dbbdb188f2dc7d)
reproduce (this is a W=1 build):
wget https://raw.githubusercontent.com/intel/lkp-tests/master/sbin/make.cross -O ~/bin/make.cross
chmod +x ~/bin/make.cross
# install arm cross compiling tool for clang build
# apt-get install binutils-arm-linux-gnueabi
# https://github.com/0day-ci/linux/commit/57669ed05e93b37d995c5247eebe218ab2058c9a
git remote add linux-review https://github.com/0day-ci/linux
git fetch --no-tags linux-review Shiyang-Ruan/fsdax-introduce-fs-query-to-support-reflink/20220127-204239
git checkout 57669ed05e93b37d995c5247eebe218ab2058c9a
# save the config file to linux build tree
mkdir build_dir
COMPILER_INSTALL_PATH=$HOME/0day COMPILER=clang make.cross W=1 O=build_dir ARCH=arm SHELL=/bin/bash fs/iomap/

If you fix the issue, kindly add following tag as appropriate
Reported-by: kernel test robot <lkp@intel.com>

All warnings (new ones prefixed by >>):

In file included from fs/iomap/buffered-io.c:13:
>> include/linux/dax.h:73:16: warning: declaration of 'struct dax_holder_operations' will not be visible outside of this function [-Wvisibility]
const struct dax_holder_operations *ops)
^
1 warning generated.


vim +73 include/linux/dax.h

48
49 void dax_register_holder(struct dax_device *dax_dev, void *holder,
50 const struct dax_holder_operations *ops);
51 void dax_unregister_holder(struct dax_device *dax_dev);
52 void *dax_get_holder(struct dax_device *dax_dev);
53 void put_dax(struct dax_device *dax_dev);
54 void kill_dax(struct dax_device *dax_dev);
55 void dax_write_cache(struct dax_device *dax_dev, bool wc);
56 bool dax_write_cache_enabled(struct dax_device *dax_dev);
57 bool dax_synchronous(struct dax_device *dax_dev);
58 void set_dax_synchronous(struct dax_device *dax_dev);
59 /*
60 * Check if given mapping is supported by the file / underlying device.
61 */
62 static inline bool daxdev_mapping_supported(struct vm_area_struct *vma,
63 struct dax_device *dax_dev)
64 {
65 if (!(vma->vm_flags & VM_SYNC))
66 return true;
67 if (!IS_DAX(file_inode(vma->vm_file)))
68 return false;
69 return dax_synchronous(dax_dev);
70 }
71 #else
72 static inline void dax_register_holder(struct dax_device *dax_dev, void *holder,
> 73 const struct dax_holder_operations *ops)
74 {
75 }
76 static inline void dax_unregister_holder(struct dax_device *dax_dev)
77 {
78 }
79 static inline void *dax_get_holder(struct dax_device *dax_dev)
80 {
81 return NULL;
82 }
83 static inline struct dax_device *alloc_dax(void *private,
84 const struct dax_operations *ops)
85 {
86 /*
87 * Callers should check IS_ENABLED(CONFIG_DAX) to know if this
88 * NULL is an error or expected.
89 */
90 return NULL;
91 }
92 static inline void put_dax(struct dax_device *dax_dev)
93 {
94 }
95 static inline void kill_dax(struct dax_device *dax_dev)
96 {
97 }
98 static inline void dax_write_cache(struct dax_device *dax_dev, bool wc)
99 {
100 }
101 static inline bool dax_write_cache_enabled(struct dax_device *dax_dev)
102 {
103 return false;
104 }
105 static inline bool dax_synchronous(struct dax_device *dax_dev)
106 {
107 return true;
108 }
109 static inline void set_dax_synchronous(struct dax_device *dax_dev)
110 {
111 }
112 static inline bool daxdev_mapping_supported(struct vm_area_struct *vma,
113 struct dax_device *dax_dev)
114 {
115 return !(vma->vm_flags & VM_SYNC);
116 }
117 #endif
118

---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org

\
 
 \ /
  Last update: 2022-01-27 17:15    [W:1.543 / U:0.404 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site