]> git.ipfire.org Git - thirdparty/util-linux.git/blame - TODO
tests: update lscpu tests
[thirdparty/util-linux.git] / TODO
CommitLineData
0cbeee27
KZ
1
2lscpu
3-----
4
5 - add -o <list> to speficy output columns for -p options.
6 (the same thing we use for findmnt, lsblk, ...)
7
7ef8c5bc
KZ
8dmesg
9-----
10
11 - add -f (follow) option
12 http://www.spinics.net/lists/util-linux-ng/msg04453.html
13
01df6eeb
KZ
14mount
15-----
16
d53fc4b3
KZ
17 (features for new libmount based implemenation)
18
01df6eeb
KZ
19 - add support for "x-" namespace for mount options. All options with "x-"
20 prefix should be ignored.
21
22 For example x-systemd=, x-upstart-foo, x-libmount-debug=0xffff, ...
23
24 It's definitely better to have a generic way how ignore some options than
25 use comment= for all things.
26
7312c4ad
KZ
27 - add --source and --target options to specify device and mountpoint
28
29 fstab:
30 /dev/sda1 /foo auto defaults 0 0
31 /foo /mnt auto bind 0 0
32 command line:
33 mount -o remount,ro /foo
34
35 ... this command is ambiguous. It would be better to have a way how specify
36 target or source:
37
38 mount --target /foo -o remount,ro
39
40 Note that findmnt(8) already supports --target and --source.
41
d53fc4b3 42 - add ---target-prefix option to specify prefix for mountpoints
d53fc4b3
KZ
43 so then you can
44
9b07eb92 45 LIBMOUNT_FSTAB=/etc/fstab.foo mount -a --target-prefix=$FOO_ROOT
d53fc4b3
KZ
46
47 to create a new hierarchy of filesystems at $FOO_ROOT.
48
28297408
KZ
49partx
50-----
51
4231bffe
KZ
52 - add support loop devices:
53
54 partx -a /path/file.img
55
56 * associate the file with loop device (use lib/loopdev.c)
57 * map partitions by BLKPG_ADD_PARTITION
58
59 - support mapping by device-mapper if argv[0] is "kpartx" or --dm option is used.
60
28297408
KZ
61 - add regression tests for partx, addpart and delpart
62
4231bffe 63
a2b3d040
KZ
64build-sys
65--------
66
67 - we use something like
68
69 AC_ARG_ENABLE(...., enable_foo=check)
70 build_foo=yes
71 if test "x$enable_foo" = xcheck; then
72 if test "x$linux_os" = xno; then
73 build_foo=no
74 fi
75 fi
76 AM_CONDITIONAL(BUILD_LIBMOUNT, test "x$build_foo" = xyes)
77
78 for Linux-only utils in configure.ac. It would be nice to set all defaults
19a9d0b7 79 for all "$enable_" variables at the begin of the configure script according to
a2b3d040
KZ
80 $linux_os. Something like:
81
82 if test "x$linux_os" = xno
83 enable_mount=no
84 enable_libmount=no
85 enable_lsblk=no
86 fi
87
88 then we can remove all "if test "x$enable_foo" = xcheck;" stuff from the rest
89 of the configure script.
90
91 - it would be nice to remove all "if BUILD_LIB{MOUNT,BLKID,UUID}" from the
92 Makefiles (e.g. misc-utils/Makefile.am) and use BUILD_<utilname> only
93
94 The configure.ac has to care about dependence between utils and librares and
95 enable BUILD_<utilname>.
96
19a9d0b7
KZ
97lib/tt.c
98--------
99
100 - allows to sort columns, for example sort lsblk(8) output by SIZE
101
a4f4cc75
KZ
102login-utils:
103-----------
104
a4f4cc75
KZ
105 - use err() and warn() macros rather than fprintf(stderr, ...)
106
b61e9390
KZ
107losetup
108-------
109
110 - don't use ioclts if sysfs supports loop attributes (since 2.6.37,
111 block/loopN/loop/* files)
112
113 - don't open loopdev in looplist_next(), check if /sys/block/loopN/loop
114 exists and returns ll.name rather than file descriptor
115
116 - add sysfs based version of show_loop() and use it for non-root users
117
19a9d0b7 118 - move all loopdev code to libmount
b61e9390 119
b61e9390 120
def04d47
KZ
121shlib (libblkd and libmount):
122----------------------------
123
19a9d0b7 124 - use __attribute__((notnull)) and __attribute__((warn_unused_result))
def04d47
KZ
125 Note that the code has to be usefull for non-gcc compilers too.
126
a24f0ade
KZ
127libblkid
128--------
5d5ae40b 129
36e0066b
KZ
130 - remove strerrr() from debug messages (use %m) to make BLKID_DEBUG= output
131 thread-safe
132
a24f0ade
KZ
133 - add -<BE|LE> suffix to test images for native-endian filesystems (e.g. swap)
134 and add support for such functionality to tests/ts/blkid/low-probe
5c94bacb 135
28fed5d6 136 - add FSSIZE value -- filesystem size (klibc requirement)
a24f0ade 137
28fed5d6 138 - add support for dasd PT (used for example on s390)
f2813fce 139
8b467e7d
KZ
140 - support PARTUUID= tag
141
142 * the partitions probing is already supported by low-level part of the
143 library, but it's necessary add support for this tag also to high-level
144 (blkid_cache) API.
145
146 * add blkid -P <PARTUUID>
147
435c73ec
KZ
148wipefs
149------
150
151 - some filesystem (namely FAT) contains more magic strings, so if you erase
152 one magic string the FS is still detectable by libblkid. We have to inform
153 users that there is more valid magic string for the same FS.
154
a24f0ade
KZ
155fdisk(s)
156--------
157
d8fb986b
KZ
158 * add "move end" command to move end of the last primary/extended partition.
159 This feature seems very attractive to users who resizing their disks
160 (for example in virtual machines).
161
574a9bc9
KZ
162 * sfdisk has to use rpmatch() for answers to y/n questions
163 (e.g. "Are you satisfied with this? [ynq]")
164
f2813fce
KZ
165 * sfdisk rounds to cylinders is -uM (megabyte units) is specified, this is
166 pretty stupid feature. It has to round to sectors if -uS or -uM is specified.
167
4d6cb488
KZ
168 * Sun label support is completely useless for large disks, it uses number of
169 cylinders from on-disk-label where the geometry is stored by int16 values.
170 It seems better to completely ignore this stuff from the label and always
171 use geometry + BLKGETSIZE64 from kernel.
172
a24f0ade
KZ
173 * use off_t instead "long long"
174
ef5d1feb
KZ
175 * catch SIGINT (Ctrl-C) and return to main menu.
176 From Red Hat bugzilla #545488:
177
178 While using fdisk normally, if you accidentally pressed the wrong button (to
179 start a sequence of questions for some operation, e.g. 'c' to create
180 partition). The tool tries too hard to keep asking you for valid input. You
181 can't provide a blank or invalid input to get it to break out of the current
182 dialog sequence and get back to the main menu.
183
a24f0ade
KZ
184 * fdisk/* refactoring
185
779d6a1b 186 * add GPT support (probably implement libfdisk)
a24f0ade
KZ
187
188misc
189----
190
81d55724
KZ
191 * switch_root:
192 - move all mountpoints to the newroot (there are hardcoded /proc /sys and /dev paths now)
193 - add --dont-move[=<list of dirs>] options
194
e1f2853a
KZ
195 * use ngettext() for strings with plurals, for example
196
197 /* include/nls.h */
198 #define P_(id, id_plural, n) ngettext(id, id_plural, n)
199
200 printf(P_("%d used sector",
201 "%d used sectors", sectors),
202 sectors);
203
8179a658 204 * use something better than gtk-doc (doxyden?)
3d24cec1 205
28fed5d6 206 * use TZ=UTC and LANG=en_US.UTF-8 for tests
74a9c6f7 207
a24f0ade
KZ
208 * add mllockall() and SCHED_FIFO to hwclock,
209 see http://lkml.org/lkml/2008/10/12/132
210
d3bb3bc8 211 * use rpmatch() for all Y/N questions
f93a4afd 212
a830e5b3
KZ
213 * umount by label:
214 # mount LABEL=mylabel
215 # umount LABEL=mylabel
216
19a9d0b7
KZ
217
218---------------
219exotic requests
220---------------
221
d3bb3bc8
KZ
222 * mount -a -- reorder fstab entries by paths before mount (just idea only)
223
224 * mount -a (just idea only)
8b0f4ae9 225
883fff9f
KZ
226 Date: Sun, 3 Jun 2007 18:04:24 +0300 (MET DST)
227 From: Szabolcs Szakacsits <szaka@sienet.hu>
8b0f4ae9 228
883fff9f
KZ
229 In the past the right record order could be figured out easily by just
230 checking out fstab (if one knew what to look for) but considering the
231 fastly increasing number of user space file systems and their usage, with
232 their path, library, etc dependencies, it's getting trickier and is a black
233 magic for most users because they simply expect drives to be mounted
234 independently of their order in fstab.
31cc369d 235
883fff9f 236 One typical, wrongly edited fstab example is:
8b0f4ae9 237
883fff9f
KZ
238 /dev/hda2 / ext3 defaults 1 1
239 /dev/hda1 /mnt/windows ntfs-3g defaults 0 0
240 /dev/hda3 /usr ext3 defaults 0 0
8b0f4ae9 241
883fff9f 242 The events:
1c51a368 243
883fff9f
KZ
244 mount -> /sbin/mount.ntfs-3g ->
245 -> resolves to <path1>/ntfs-3g via a symlink ->
246 -> ntfs-3g requires at least <path2>/libfuse*
247
248 There are many potential solutions. For example installing everything on
249 the root file system which may be needed for successful mount. But this
250 is not always feasible or practical since we could end up putting almost
251 everything on the root file system in the end.
252
253 Another idea is an improved mount strategy:
254
255 do {
256 try to mount all unmounted entries
257 } while (not all mounted && at least one new was successfully mounted)
09dd84ca 258
669eecf3
KZ
259 * rewrite ipcs to use /proc/sys/kernel rather than unreliable syscalls
260 (there are problems with 32bit userspace on 64bit kernel)
261
262 * minix v3
263
264 From: Matthias Koenig <mkoenig@suse.de>
265 Date: Tue, 25 Sep 2007 12:00:01 +0200
266
267 It seems that the kernel has support for minix fs v3
268 (though I have not tried it, just inspected some code when
269 trying to find a mkfs.minix issue).
270 It might be worth a thought implementing v3 support
271 (though I am not really sure how much people us minix fs ;-)
272 This might require some major code cleanup in mkfs.minix.
d3bb3bc8 273
8da18ddb
KZ
274 * add SELinux security contexts support to the 'ipcs' utility
275 http://bugzilla.redhat.com/show_bug.cgi?id=225342
276
277 Would be great to list the current system IPC Objects with their respective
278 security labels (where allowed) with something like 'ipcs -Z' - following the
279 way other tools reports those.
280
281