summaryrefslogblamecommitdiffstats
path: root/Documentation/TODO
blob: 60d5d16695ab1677b4c41b4e9dfefb2817c0b902 (plain) (tree)
1
2
3
4
5
6
7
8
9
 
                                             
 





                                                                          




                                                                           




                                                         




                                                  

                       
 
                                                                             









                                                                                    
 







                                                                              


     

                                                                                  








                                                                             
 
 




                                                                   


            








                                                                                 
 

        
 

                                                                             


                                                                            
                                                           
 
                                                         
 


        




                                                                       
                                                                             


                                                                        
                                                                           

                                                                                
                                                                             



                                                                             
                                
 
                                                 







                                                                                


    
                                             

                                          




               
                                                              






                                                                                

 Note that items with (!) have high priority.

bash completion
---------------
 - file per command in shel-completion/bash/
 - use $(pkg-config --variable=completionsdir bash-completion)/util-linux/
   as a destination install directory

wipefs
------
 - generate /root/wipefs-<devname>-<offset>.bak with wiped bytes, so after 
   mistake user can use dd(1) to restore erased stuff

lscpu
-----
  - detect more hypervisors, see 'virt-what' shell script
    http://people.redhat.com/~rjones/virt-what/

minix (fsck, mkfs)
------------------

 - clean up types -- use ino_t, size_t and ssize_t

libmount (mount/umount)
-----------------------

 Note that the old mount/[u]mount.c code is in MAINTENANCE MODE only. All new
 features should be implemented to libmount or to the new sys-utils/{mount,umount}.c
 utils.

 - add options to control fstab/mtab mount options usage, something like:

   --options-mode={ignore,append,prepend,replace}      MNT_OMODE_{IGNORE, ...}
   --options-source={fstab,mtab,disable}               MNT_OMODE_{FSTAB,MTAB,NOTAB}
   --options-source-force                              MNT_OMODE_FORCE

   (all this already supported by libmount)

 - (!) on systems with regular mtab file it is impossible to umount by "umount
   /dev/loop0" if the loop device has been created by "mount -o loop", because
   there is backing file in the mtab (instead of the device name). 

   Now we have all necessary information in /sysfs so it should be possible to
   translate the device name to backing file and then search in mtab for the 
   filename. See loopdev_get_loopfile().

partx
-----

 - support mapping by device-mapper if argv[0] is "kpartx" or --dm option is used.
     
 - (!) add regression tests for partx, addpart and delpart


docs
----

 - (!) use something better than gtk-doc for libmount and libblkid (doxyden?)

 - (!) add API documentation to libuuid


lib/tt.c
--------

 - allows to sort columns, for example sort lsblk(8) output by SIZE

login-utils:
-----------

  - consolidate newgrp(1)
    * we have "su --group/--supp-group" to switch between groups, newgrp(1) in
      util-linux and shadow-utils (and sg(1) alias in shadow-utils)
    * the unique functionality provided by newgpr(1) is support for group
      passwords [/etc/gshadow] -- do we really need this functionality?
    * maybe we can mark group-passwords as deprecated, and replace sg(1) and
      newgpr(1) with su(1) code. The another way is to ask fro group password in
      su --group too.
    * note that shadow-utils newgpr(1) provides support for syslog and audit log.

libblkid
--------

 - improve DBG() debug macro, see new imeplemntation in libmount/src/mountP.h

 - (!) don't use internally blkid_loff_t, rather use off_t, size_t, ssize_t,
       stdint.h types and so on...

 - add FSSIZE value  -- filesystem size (klibc requirement)

 - (!) add support for dasd PT (used for example on s390)

fdisk(s)
--------

 - add to "First sector" dialog a line with information about available
   gaps (free areas) to make it more user friendly if you want to skip
   any useless (small) areas between existing partitions. 
   See https://bugzilla.redhat.com/show_bug.cgi?id=715114

 - add "move end" command to move end of the last primary/extended partition.
   This feature seems very attractive to users who resizing their disks 
   (for example in virtual machines).

 - sfdisk rounds to cylinders is -uM (megabyte units) is specified, this is
   pretty stupid feature. It has to round to sectors if -uS or -uM is specified.

 - Sun label support is completely useless for large disks, it uses number of
   cylinders from on-disk-label where the geometry is stored by int16 values.
   It seems better to completely ignore this stuff from the label and always
   use geometry + BLKGETSIZE64 from kernel.

 - use off_t instead "long long"

 - catch SIGINT (Ctrl-C) and return to main menu.
   From Red Hat bugzilla #545488:

   While using fdisk normally, if you accidentally pressed the wrong button (to
   start a sequence of questions for some operation, e.g. 'c' to create
   partition).  The tool tries too hard to keep asking you for valid input.  You
   can't provide a blank or invalid input to get it to break out of the current
   dialog sequence and get back to the main menu.

misc
----

 - add mllockall() and SCHED_FIFO to hwclock,
   see http://lkml.org/lkml/2008/10/12/132
 

---------------
exotic requests
---------------

 - add SELinux security contexts support to the 'ipcs' utility
   http://bugzilla.redhat.com/show_bug.cgi?id=225342

   Would be great to list the current system IPC Objects with their respective
   security labels (where allowed) with something like 'ipcs -Z' - following the
   way other tools reports those.