Comments (11)
Ok, I've looked a little closer and the folders are actually not empty. Probably this is the reason why they aren't removed. There are hidden folders named .deps
which contain multiple "dummy" file:
/usr/lib/modules/6.6.31-2-lts/build/module/zfs/.deps$ ls
insgesamt 61K
-rw-r--r-- 1 root root 8 23. Mai 18:23 libicp_la-zfs_impl.Plo
-rw-r--r-- 1 root root 8 23. Mai 18:23 libzpool_la-abd.Plo
-rw-r--r-- 1 root root 8 23. Mai 18:23 libzpool_la-aggsum.Plo
-rw-r--r-- 1 root root 8 23. Mai 18:23 libzpool_la-arc.Plo
-rw-r--r-- 1 root root 8 23. Mai 18:23 libzpool_la-blake3_zfs.Plo
-rw-r--r-- 1 root root 8 23. Mai 18:23 libzpool_la-blkptr.Plo
-rw-r--r-- 1 root root 8 23. Mai 18:23 libzpool_la-bplist.Plo
-rw-r--r-- 1 root root 8 23. Mai 18:23 libzpool_la-bpobj.Plo
-rw-r--r-- 1 root root 8 23. Mai 18:23 libzpool_la-bptree.Plo
-rw-r--r-- 1 root root 8 23. Mai 18:23 libzpool_la-bqueue.Plo
-rw-r--r-- 1 root root 8 23. Mai 18:23 libzpool_la-brt.Plo
-rw-r--r-- 1 root root 8 23. Mai 18:23 libzpool_la-btree.Plo
-rw-r--r-- 1 root root 8 23. Mai 18:23 libzpool_la-dbuf.Plo
-rw-r--r-- 1 root root 8 23. Mai 18:23 libzpool_la-dbuf_stats.Plo
-rw-r--r-- 1 root root 8 23. Mai 18:23 libzpool_la-ddt.Plo
-rw-r--r-- 1 root root 8 23. Mai 18:23 libzpool_la-ddt_zap.Plo
-rw-r--r-- 1 root root 8 23. Mai 18:23 libzpool_la-dmu_diff.Plo
-rw-r--r-- 1 root root 8 23. Mai 18:23 libzpool_la-dmu_object.Plo
-rw-r--r-- 1 root root 8 23. Mai 18:23 libzpool_la-dmu_objset.Plo
-rw-r--r-- 1 root root 8 23. Mai 18:23 libzpool_la-dmu.Plo
-rw-r--r-- 1 root root 8 23. Mai 18:23 libzpool_la-dmu_recv.Plo
-rw-r--r-- 1 root root 8 23. Mai 18:23 libzpool_la-dmu_redact.Plo
-rw-r--r-- 1 root root 8 23. Mai 18:23 libzpool_la-dmu_send.Plo
-rw-r--r-- 1 root root 8 23. Mai 18:23 libzpool_la-dmu_traverse.Plo
-rw-r--r-- 1 root root 8 23. Mai 18:23 libzpool_la-dmu_tx.Plo
-rw-r--r-- 1 root root 8 23. Mai 18:23 libzpool_la-dmu_zfetch.Plo
-rw-r--r-- 1 root root 8 23. Mai 18:23 libzpool_la-dnode.Plo
-rw-r--r-- 1 root root 8 23. Mai 18:23 libzpool_la-dnode_sync.Plo
-rw-r--r-- 1 root root 8 23. Mai 18:23 libzpool_la-dsl_bookmark.Plo
-rw-r--r-- 1 root root 8 23. Mai 18:23 libzpool_la-dsl_crypt.Plo
-rw-r--r-- 1 root root 8 23. Mai 18:23 libzpool_la-dsl_dataset.Plo
-rw-r--r-- 1 root root 8 23. Mai 18:23 libzpool_la-dsl_deadlist.Plo
-rw-r--r-- 1 root root 8 23. Mai 18:23 libzpool_la-dsl_deleg.Plo
-rw-r--r-- 1 root root 8 23. Mai 18:23 libzpool_la-dsl_destroy.Plo
-rw-r--r-- 1 root root 8 23. Mai 18:23 libzpool_la-dsl_dir.Plo
-rw-r--r-- 1 root root 8 23. Mai 18:23 libzpool_la-dsl_pool.Plo
-rw-r--r-- 1 root root 8 23. Mai 18:23 libzpool_la-dsl_prop.Plo
-rw-r--r-- 1 root root 8 23. Mai 18:23 libzpool_la-dsl_scan.Plo
-rw-r--r-- 1 root root 8 23. Mai 18:23 libzpool_la-dsl_synctask.Plo
-rw-r--r-- 1 root root 8 23. Mai 18:23 libzpool_la-dsl_userhold.Plo
-rw-r--r-- 1 root root 8 23. Mai 18:23 libzpool_la-edonr_zfs.Plo
-rw-r--r-- 1 root root 8 23. Mai 18:23 libzpool_la-fm.Plo
-rw-r--r-- 1 root root 8 23. Mai 18:23 libzpool_la-gzip.Plo
-rw-r--r-- 1 root root 8 23. Mai 18:23 libzpool_la-hkdf.Plo
-rw-r--r-- 1 root root 8 23. Mai 18:23 libzpool_la-lz4.Plo
-rw-r--r-- 1 root root 8 23. Mai 18:23 libzpool_la-lz4_zfs.Plo
-rw-r--r-- 1 root root 8 23. Mai 18:23 libzpool_la-lzjb.Plo
-rw-r--r-- 1 root root 8 23. Mai 18:23 libzpool_la-metaslab.Plo
-rw-r--r-- 1 root root 8 23. Mai 18:23 libzpool_la-mmp.Plo
-rw-r--r-- 1 root root 8 23. Mai 18:23 libzpool_la-multilist.Plo
-rw-r--r-- 1 root root 8 23. Mai 18:23 libzpool_la-objlist.Plo
-rw-r--r-- 1 root root 8 23. Mai 18:23 libzpool_la-pathname.Plo
-rw-r--r-- 1 root root 8 23. Mai 18:23 libzpool_la-range_tree.Plo
-rw-r--r-- 1 root root 8 23. Mai 18:23 libzpool_la-refcount.Plo
-rw-r--r-- 1 root root 8 23. Mai 18:23 libzpool_la-rrwlock.Plo
-rw-r--r-- 1 root root 8 23. Mai 18:23 libzpool_la-sa.Plo
-rw-r--r-- 1 root root 8 23. Mai 18:23 libzpool_la-sha2_zfs.Plo
-rw-r--r-- 1 root root 8 23. Mai 18:23 libzpool_la-skein_zfs.Plo
-rw-r--r-- 1 root root 8 23. Mai 18:23 libzpool_la-space_map.Plo
-rw-r--r-- 1 root root 8 23. Mai 18:23 libzpool_la-space_reftree.Plo
-rw-r--r-- 1 root root 8 23. Mai 18:23 libzpool_la-spa_checkpoint.Plo
-rw-r--r-- 1 root root 8 23. Mai 18:23 libzpool_la-spa_config.Plo
-rw-r--r-- 1 root root 8 23. Mai 18:23 libzpool_la-spa_errlog.Plo
-rw-r--r-- 1 root root 8 23. Mai 18:23 libzpool_la-spa_history.Plo
-rw-r--r-- 1 root root 8 23. Mai 18:23 libzpool_la-spa_log_spacemap.Plo
-rw-r--r-- 1 root root 8 23. Mai 18:23 libzpool_la-spa_misc.Plo
-rw-r--r-- 1 root root 8 23. Mai 18:23 libzpool_la-spa.Plo
-rw-r--r-- 1 root root 8 23. Mai 18:23 libzpool_la-spa_stats.Plo
-rw-r--r-- 1 root root 8 23. Mai 18:23 libzpool_la-txg.Plo
-rw-r--r-- 1 root root 8 23. Mai 18:23 libzpool_la-uberblock.Plo
-rw-r--r-- 1 root root 8 23. Mai 18:23 libzpool_la-unique.Plo
-rw-r--r-- 1 root root 8 23. Mai 18:23 libzpool_la-vdev_draid.Plo
-rw-r--r-- 1 root root 8 23. Mai 18:23 libzpool_la-vdev_draid_rand.Plo
-rw-r--r-- 1 root root 8 23. Mai 18:23 libzpool_la-vdev_indirect_births.Plo
-rw-r--r-- 1 root root 8 23. Mai 18:23 libzpool_la-vdev_indirect_mapping.Plo
-rw-r--r-- 1 root root 8 23. Mai 18:23 libzpool_la-vdev_indirect.Plo
-rw-r--r-- 1 root root 8 23. Mai 18:23 libzpool_la-vdev_initialize.Plo
-rw-r--r-- 1 root root 8 23. Mai 18:23 libzpool_la-vdev_label.Plo
-rw-r--r-- 1 root root 8 23. Mai 18:23 libzpool_la-vdev_mirror.Plo
-rw-r--r-- 1 root root 8 23. Mai 18:23 libzpool_la-vdev_missing.Plo
-rw-r--r-- 1 root root 8 23. Mai 18:23 libzpool_la-vdev.Plo
-rw-r--r-- 1 root root 8 23. Mai 18:23 libzpool_la-vdev_queue.Plo
-rw-r--r-- 1 root root 8 23. Mai 18:23 libzpool_la-vdev_raidz_math_aarch64_neon.Plo
-rw-r--r-- 1 root root 8 23. Mai 18:23 libzpool_la-vdev_raidz_math_aarch64_neonx2.Plo
-rw-r--r-- 1 root root 8 23. Mai 18:23 libzpool_la-vdev_raidz_math_avx2.Plo
-rw-r--r-- 1 root root 8 23. Mai 18:23 libzpool_la-vdev_raidz_math_avx512bw.Plo
-rw-r--r-- 1 root root 8 23. Mai 18:23 libzpool_la-vdev_raidz_math_avx512f.Plo
-rw-r--r-- 1 root root 8 23. Mai 18:23 libzpool_la-vdev_raidz_math.Plo
-rw-r--r-- 1 root root 8 23. Mai 18:23 libzpool_la-vdev_raidz_math_powerpc_altivec.Plo
-rw-r--r-- 1 root root 8 23. Mai 18:23 libzpool_la-vdev_raidz_math_scalar.Plo
-rw-r--r-- 1 root root 8 23. Mai 18:23 libzpool_la-vdev_raidz_math_sse2.Plo
-rw-r--r-- 1 root root 8 23. Mai 18:23 libzpool_la-vdev_raidz_math_ssse3.Plo
-rw-r--r-- 1 root root 8 23. Mai 18:23 libzpool_la-vdev_raidz.Plo
-rw-r--r-- 1 root root 8 23. Mai 18:23 libzpool_la-vdev_rebuild.Plo
-rw-r--r-- 1 root root 8 23. Mai 18:23 libzpool_la-vdev_removal.Plo
-rw-r--r-- 1 root root 8 23. Mai 18:23 libzpool_la-vdev_root.Plo
-rw-r--r-- 1 root root 8 23. Mai 18:23 libzpool_la-vdev_trim.Plo
-rw-r--r-- 1 root root 8 23. Mai 18:23 libzpool_la-zap_leaf.Plo
-rw-r--r-- 1 root root 8 23. Mai 18:23 libzpool_la-zap_micro.Plo
-rw-r--r-- 1 root root 8 23. Mai 18:23 libzpool_la-zap.Plo
-rw-r--r-- 1 root root 8 23. Mai 18:23 libzpool_la-zcp_get.Plo
-rw-r--r-- 1 root root 8 23. Mai 18:23 libzpool_la-zcp_global.Plo
-rw-r--r-- 1 root root 8 23. Mai 18:23 libzpool_la-zcp_iter.Plo
-rw-r--r-- 1 root root 8 23. Mai 18:23 libzpool_la-zcp.Plo
-rw-r--r-- 1 root root 8 23. Mai 18:23 libzpool_la-zcp_set.Plo
-rw-r--r-- 1 root root 8 23. Mai 18:23 libzpool_la-zcp_synctask.Plo
-rw-r--r-- 1 root root 8 23. Mai 18:23 libzpool_la-zfeature.Plo
-rw-r--r-- 1 root root 8 23. Mai 18:23 libzpool_la-zfs_byteswap.Plo
-rw-r--r-- 1 root root 8 23. Mai 18:23 libzpool_la-zfs_chksum.Plo
-rw-r--r-- 1 root root 8 23. Mai 18:23 libzpool_la-zfs_fm.Plo
-rw-r--r-- 1 root root 8 23. Mai 18:23 libzpool_la-zfs_fuid.Plo
-rw-r--r-- 1 root root 8 23. Mai 18:23 libzpool_la-zfs_ratelimit.Plo
-rw-r--r-- 1 root root 8 23. Mai 18:23 libzpool_la-zfs_rlock.Plo
-rw-r--r-- 1 root root 8 23. Mai 18:23 libzpool_la-zfs_sa.Plo
-rw-r--r-- 1 root root 8 23. Mai 18:23 libzpool_la-zil.Plo
-rw-r--r-- 1 root root 8 23. Mai 18:23 libzpool_la-zio_checksum.Plo
-rw-r--r-- 1 root root 8 23. Mai 18:23 libzpool_la-zio_compress.Plo
-rw-r--r-- 1 root root 8 23. Mai 18:23 libzpool_la-zio_inject.Plo
-rw-r--r-- 1 root root 8 23. Mai 18:23 libzpool_la-zio.Plo
-rw-r--r-- 1 root root 8 23. Mai 18:23 libzpool_la-zle.Plo
-rw-r--r-- 1 root root 8 23. Mai 18:23 libzpool_la-zrlock.Plo
-rw-r--r-- 1 root root 8 23. Mai 18:23 libzpool_la-zthr.Plo
This is the content of such a file:
/usr/lib/modules/6.6.31-2-lts/build/module/zfs/.deps$ cat libzpool_la-zthr.Plo
# dummy
from zfs.
Probably this is the reason why they aren't removed. There are hidden folders named .deps which contain multiple "dummy" file:
Yes that is the reason the folder(s) won't get removed.
Looks to me more like a package manager thing, than a dkms thing.
Most likely not a ZFS thing.
from zfs.
Looks to me more like a package manager thing, than a dkms thing.
I'm not sure how this can be a package manager issue when those files aren't even part of the package database:
$ pacman -Qo /usr/lib/modules/6.6.31-2-lts/build/module/zfs/.deps/libzpool_la-zthr.Plo
error: No package owns /usr/lib/modules/6.6.31-2-lts/build/module/zfs/.deps/libzpool_la-zthr.Plo
That these .../build/module/...
folders aren't removed on a kernel update is the intended behavior if they contain files not tracked by the package manager. But that they contain untracked files is what I consider to be a zfs or dkms issue. These files appear when the zfs kernel modules are built via dkms and remain there indefinitely.
from zfs.
Personally I'm on a Mint (ubuntu based) and still on 2.1.15 maybe there's a difference to a 2.2.x release.
But I use dkms and do not have those .Plo files in /lib/modules or /usr/src.
But I found them below the git source tree.
Googling what they are seems this is correct:
.Plo files are generated outputs of an Automake- and libtool-basedbuild system
How they end up on your system under /usr/lib/modules I don't know - sorry.
from zfs.
Personally I'm on a Mint (ubuntu based) and still on 2.1.15 maybe there's a difference to a 2.2.x release.
It worked for me until 2.2.3 and started to break after the update to 2.2.4.
Googling what they are seems this is correct:
.Plo files are generated outputs of an Automake- and libtool-basedbuild system
Yes, I found this as well.
How they end up on your system under /usr/lib/modules I don't know - sorry.
They end up under /usr/lib/modules
when dkms builds the kernel modules. But they should be cleaned afterwards as they are just some temp data use while compiling. At least as far as I understand this.
from zfs.
But I found them below the git source tree.
Where did you find them in the git source tree?
from zfs.
Sorry if I wasn't clear.
In my local git repo, where I build ZFS for my personal computer.
from zfs.
Ok, yes, this makes sense.
from zfs.
From what source did you install the zfs-dkms package?
From what I know (and I took a quick look again) OpenZFS only has native support for building rpm and debian packages.
As from the quick look I took, the creation and entries for deletion (in the resulting Makefile(s)) of the .Plo files is entirely handled by autotools.
I'm not saying it is, but I wonder if maybe the maintainer of the Arch package accidentally included the .Plo files in the Arch package for the 2.2.4 release?
from zfs.
From what source did you install the zfs-dkms package?
From what I know (and I took a quick look again) OpenZFS only has native support for building rpm and debian packages.
Yes, but building a dkms config is also support, which is what archzfs does.
I'm not saying it is, but I wonder if maybe the maintainer of the Arch package accidentally included the .Plo files in the Arch package for the 2.2.4 release?
No, this is not the case as I've stated above these files are not part of the package database. But here is a list of all files contained in the zfs-dkms
package:
files.txt
from zfs.
Over on dkms I got the answer that this is caused by automake. I'll open a PR with the suggested fix, though I'm not sure if this has any unwanted side effects.
from zfs.
Related Issues (20)
- zpool trim won't work when ZPOOL_VDEV_NAME_FOLLOW_LINKS is set
- Use after free in spa_export_common() HOT 4
- zfs-2.1.15 don't compile with Centos last kernel-5.14.0-446.el9.x86_64 HOT 9
- posixacl and full dataset
- VERIFY3(dev->l2ad_hand + distance < dev->l2ad_end) failed HOT 1
- Kernel 6.8.10/6.9.1 compile regression? HOT 1
- Need update for CensOS Stream 9
- Automatically stop a pool if many errors suddenly occur across all disks
- Kernel mnodule not found on RHEL/Rocky 9.4 using kABI HOT 8
- Change in diskspace does not reflect in zfs reporting HOT 8
- Can't remove zfs-dkms-2.1.14-2 on RHEL 9 HOT 3
- Reproducible kernel oops in ZFS driver HOT 7
- Panic on `zfs list` in `zfs_ioc_objset_stats_impl`
- 6.10.0rc1 no blk_queue_max_hw_sectors found HOT 2
- Non-zero prefetch_* counters when zfs_prefetch_disable=1 HOT 3
- ZLE compressor needs additional bytes to process d_len argument efficiently
- undefined reference to `libspl_backtrace' HOT 1
- zdb cannot access metadata if zpool is imported with altroot
- send/receive : checksum mismatch or incomplete stream on new pool with no errors. HOT 5
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from zfs.