4

I'm working with kernel module parameters, and I've found myself a bit confused.

In particular, I'm attempting to enable posix ACL support for XFS file systems. This requires the XFS module to be loaded with the parameter XFS_POSIX_ACL set to yes. Without it, attempts to set ACL's with "setfacl" result in "Operation not supported" errors.

In a test environment, I ran the command "modprobe -v xfs XFS_POSIX_ACL=y". Despite now knowing that you need to first remove a module before you can set parameters, this command appeared to have worked. After running it, I was successfully able to run "setfacl", set some ACL's and test them with full functionality.

Moving over to production though, it appears - not surprisingly - that simply running "modprobe -v xfs XFS_POSIX_ACL=y" doesn't seem to enable ACL support, likely due to the fact that I haven't unloaded the module first. Running the command produces no output, and attempts to set an ACL result in "Operation not supported" errors.

The problem I'm having, is that after going back to my test environment and attempting to "flip the parameters switch properly," running modprobe -r xfs followed by "modprobe -v xfs XFS_POSIX_ACL=n" doesn't turn off ACL support. I've run modprobe -r in verbose mode, and the module is in fact unloaded (rmmod /lib/modules/...xfs.ko) , but reloading it with the ACL parameter set to NO has no effect.

Any ideas what I might be doing wrong?

RHEL 4.9, 2.6.9-89

Update

It looks like I have the parameter wrong. Looking at dmesg after running modprobe xfs XFS_POSIX_ACL=N:

xfs: Unknown parameter `XFS_POSIX_ACL'
SGI XFS with ACLs, security attributes, large block/inode numbers, no debug enabled
SGI XFS Quota Management subsystem

I found the ACL parameter here: http://how-to.wikia.com/wiki/How_to_configure_the_Linux_kernel/fs/xfs

Any idea what the proper parameter might be? modinfo -p xfs returns nothing and I'm having a heck of a time finding it online.

Univ426
  • 2,139
  • 14
  • 26
  • Could you please show us the `dmesg` after running earch `modprobe` command? – quanta Aug 27 '12 at 14:53
  • quanta - I'll post it...but that helped a lot :) part of me was wondering if perhaps I had the parameter wrong.....from dmesg: "xfs: Unknown parameter `XFS_POSIX_ACL" ...*facepalm* I've been looking at this reference though: http://how-to.wikia.com/wiki/How_to_configure_the_Linux_kernel/fs/xfs – Univ426 Aug 27 '12 at 14:55

1 Answers1

1

@John K: all the options in the link which you posted above are not parameters for xfs module, they are dependencies options.

xfs module has... no params:

# modinfo xfs
filename:       /lib/modules/2.6.18-194.el5/kernel/fs/xfs/xfs.ko
license:        GPL
description:    SGI XFS with ACLs, security attributes, large block/inode numbers, no debug enabled
author:         Silicon Graphics, Inc.
srcversion:     DE0AE7E45DF5E1EA03F6EC6
depends:        
vermagic:       2.6.18-194.el5 SMP mod_unload gcc-4.1
module_sig: 883f3504bb64522c596239a507de7fd112864709d128ea990dfa46df295317acd048b4a6cd39abde0a0beb9a93708040775f3bac9d185e1eb73cda7c

By dependencies, I mean: XFS Quota, ACL, ... are expand only when you selecting XFS filesystem support:

<M> XFS filesystem support                
[ ]   XFS Quota support                   
[*]   XFS POSIX ACL support               
[ ]   XFS Realtime subvolume support      
[ ]   XFS Debugging support (EXPERIMENTAL)
quanta
  • 50,327
  • 19
  • 152
  • 213
  • Yeah I see what you mean. I'm not sure what you mean by "they are dependancy/ies modules" though. On our production system that doesn't have ACL's enabled, the text "with ACLs," is not present when I call modinfo xfs. It *is* present when I do it on the system with ACL's working. So does this mean I have to build the module with XFS support? If I call "make menuconfig" on our current kernel those three options are listed – Univ426 Aug 27 '12 at 15:24
  • _If I call "make menuconfig" on our current kernel those three options are listed_ --> but which marker on the left side: `[M]`, `[*]`, or `[ ]`? – quanta Aug 27 '12 at 15:55
  • XFS support is flagged as a module - the options listed under it are enabled/disabled with a * – Univ426 Aug 27 '12 at 15:57
  • What are you still confused about? – quanta Aug 27 '12 at 16:04
  • I guess I'm confused about the distinction between module parameters, as set by modprobe, and the three options listed in make menuconfig - are those three options build options as opposed to module parameters? (Meaning I can only set them when building the module?) – Univ426 Aug 27 '12 at 16:09
  • http://www.linuxtopia.org/online_books/Linux_Kernel_Module_Programming_Guide/x323.html – quanta Aug 28 '12 at 03:53
  • Hey quanta, thanks for the help. I looked through that link, did some other research, and I think I understand - in that config menu you posted up there, are those options (selected by a *) options that modify how that module is *compiled* as opposed to parameters set when the module is loaded (since the XFS module has no parameters)? Thanks for the help! – Univ426 Oct 12 '12 at 15:18